Вольтметр на 4 разряда
Feb. 21st, 2015 01:18 pmСегодня утром написал вольтметр на 4 разряда:
код на сосфорже, схема.
Алгоритм элементарный: раз в миллисекунду обновляется очередная цифра на экране индикатора + заносится очередное значение, полученное АЦП, в буфер из девяти чисел. Как только буфер заполняется, вычисляется медиана (18 операций сравнения/перестановки) и прибавляется к значению U (инкрементируя соответствующий счетчик). Один раз в 300мс происходит обновление измеренного значения: U усредняется, умножается на 3300 (3.3В — амплитуда питания, 10 — коэффициент делителя, 100 — т.к. напряжение в сотых долях Вольта считается) и сдвигается вправо на 10 разрядов (т.к. АЦП 10битный). Измерение на тестовом источнике 5/12В показало, что вполне нормально данные согласуются с измерением на обычном вольтметре (с точностью до LSB, равного 0.03В).
код на сосфорже, схема.
Алгоритм элементарный: раз в миллисекунду обновляется очередная цифра на экране индикатора + заносится очередное значение, полученное АЦП, в буфер из девяти чисел. Как только буфер заполняется, вычисляется медиана (18 операций сравнения/перестановки) и прибавляется к значению U (инкрементируя соответствующий счетчик). Один раз в 300мс происходит обновление измеренного значения: U усредняется, умножается на 3300 (3.3В — амплитуда питания, 10 — коэффициент делителя, 100 — т.к. напряжение в сотых долях Вольта считается) и сдвигается вправо на 10 разрядов (т.к. АЦП 10битный). Измерение на тестовом источнике 5/12В показало, что вполне нормально данные согласуются с измерением на обычном вольтметре (с точностью до LSB, равного 0.03В).
no subject
Date: 2015-02-21 08:07 pm (UTC)Значение 1мс на обновление цифр было получено экспериментально. Если поставить 10мс, то становится заметно мерцание цифр на 4-значном индикаторе, а на 5-значном полная жопа получается. У глаза инерционность зависит от яркости: чем больше яркость, тем выше частота кадров нужна (поэтому-то мониторы обязательно как минимум 60Гц). Яркость светодиодного индикатора вполне приличная. Поэтому нужно хотя бы 50Гц. Если у нас 4 цифры, то получается, что очередную нужно обновлять минимум с частотой 200Гц. А это — 5мс.
Вот с пятикратным запасом 1мс и получается!!!
no subject
Date: 2015-02-22 06:38 am (UTC)А, там динамика. Тогда понятно. У STM8 нет LED control? В STM32L0 есть. Жаль не было задач поиграться.
no subject
Date: 2015-02-22 08:25 am (UTC)> Откуда информация про зависимость от яркости?
Из нейрофизиологии.
> А, там динамика
Не бывает светодиодных экранчиков с возможностью статической индикации: это ж ног бы черт-те сколько нужно было заводить!!!
> У STM8 нет LED control?
что это и зачем?
no subject
Date: 2015-02-22 04:20 pm (UTC)В любом случае один кадр формируется 1/25 и мы этого не замечаем. Вне зависимости от яркости. Поэтому и хочу уточнить:
> Из нейрофизиологии.
Подробнее? Если бы это было так белый бы моргал в телевизоре, а черный нет (или наоборот?)?
> Не бывает светодиодных экранчиков с возможностью статической индикации
Конечно бывают. Со встроенными контроллерами. Лично мне чаще встречались именно такие.
> что это и зачем?
аппаратный контроллер ЖК.
no subject
Date: 2015-02-22 06:30 pm (UTC)Нет, естественно: базой является средняя освещенность картины, а в мозг уже идут разностные сигналы.
> Лично мне чаще встречались именно такие.
Ни разу не встречал. Они ж дороже значительно будут! Зачем?
> аппаратный контроллер ЖК
Совершенно бессмысленная вещь.
no subject
Date: 2015-02-22 08:28 pm (UTC)> чем больше яркость, тем выше частота кадров нужна
Взаимоисключаемые параграфы, не?
> Ни разу не встречал. Они ж дороже значительно будут! Зачем?
Задачи разные. От экономии на пинах в задачах типа того-же вольтметра, до управления матрицами жк-дисплеев.
> Совершенно бессмысленная вещь.
Без обид, но это очень сильное утверждение от человека, который с жк-контроллерами не сталкивался ;)