датчики света в смартфонах - PullRequest
1 голос
/ 19 июня 2011

Хотелось бы узнать, как работают датчики света в смартфонах? Как аппаратная, так и программная сторона.Любые хорошие статьи относительно того же самого были бы полезны.Любая помощь приветствуется.

Ответы [ 3 ]

0 голосов
/ 20 июня 2011

Ну, я не уверен, насколько это будет полезно, но с точки зрения программного обеспечения вы можете взглянуть на Qt Mobility (дополнение библиотеки для смартфона для Qt).

Например, http://doc.qt.nokia.com/qtmobility-1.0/sensors-api.html перечисляет API датчиков. Я считаю, что вы ищете датчик внешнего освещения.

Что касается аппаратного обеспечения, быстрый поиск показывает следующую ссылку в Википедии: http://en.wikipedia.org/wiki/LED_as_light_sensor#LED_as_light_sensor

0 голосов
/ 20 июня 2011

Ну звучит так, будто люди ответили на аппаратную сторону. С точки зрения программного обеспечения это довольно просто.

public class LightTrigger {
private SensorManager mgr = null;

    @Override
public void onCreate(Bundle savedInstanceState) {
        //YOUR CODE HERE
        mgr = (SensorManager) ctxt.getSystemService(Context.SENSOR_SERVICE);
        mgr.registerListener(listener,
    mgr.getDefaultSensor(Sensor.TYPE_LIGHT),
    SensorManager.SENSOR_DELAY_UI);
    }

    private SensorEventListener listener = new SensorEventListener() {
        public void onSensorChanged(SensorEvent e) {
            //Handler code goes here
        }

        @Override
        public void onAccuracyChanged(Sensor sensor, int accuracy) {
            //I don't usually use this for light
        }
    }
}

Я обнаружил, что значения датчиков не меняются непрерывно. Я обычно вижу значения, исходящие от датчика, такие как - BRIGHT (~ 1000) - DIM (~ 600) - DARK (~ 100) - между ними ничего нет. Я думаю, что это может быть потому, что датчик освещения на моем телефоне вставлен (утоплен от прямого света) прямо рядом с динамиком телефона. Вероятно, он был разработан, чтобы помочь выяснить, держу ли я телефон до головы.

Надеюсь, это поможет!

0 голосов
/ 20 июня 2011

Аппаратная часть: большинство датчиков освещенности Фотодиоды .При воздействии света они создают ток.Чем ярче свет, тем выше сила тока.Этот ток затем «преобразуется» в последовательность битов.

(Чисто теория с этого момента). Затем он отправляется в часть ОС, работающую с датчиком света.Он получит разные значения (о да, есть куча света, вот вам значение 64000 / нет, сейчас довольно темно, 200) и будет делать все, что он должен делать с этими значениями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...