Таймер полива на даче научил меня двум сезонам одним экраном. Зимой в неотапливаемом доме при плюс шести в тени буквы на синей панели бледнели так, что показания приходилось списывать с расстояния вытянутой руки, и это при живой подсветке и работающем скетче. Летом в теплице на солнце экран выцветал окончательно: картинка на месте, светодиод индикации мигает, а читать нечего. Оба раза железо было полностью исправно — и оба раза виновником оказался контраст, который на столе в комнате вёл себя образцово.
Прежде чем лезть в тонкости, сведём «чёрное» к двум разным симптомам, чтобы не лечить одно вместо другого. Два ряда чёрных квадратов при горящей подсветке — контраст уехал к земле, и это лечится подстроечником, как показано ещё в первом уроке раздела. Чёрная первая строка на пустом экране — контроллер не получил инициализацию, проводная или программная; там своя процедура диагностики, она разобрана в уроке про чёрную строку, а полный маршрут из шести шагов для молчащего экрана — в уроке про диагностику. Здесь разговор про третий случай: экран инициализирован, печатает правильно, но картинка плохая — бледная, вялая или слепнущая на солнце.
План такой: контраст как аналоговая величина и его температурный дрейф, программная уставка через ШИМ на V0, разбор панелей по светостойкости и сводка по питанию подсветки. Симулятор честен до предела: напряжение на V0 он не нарисует, поэтому стенд крутит уставку заполнения и её вольтовую оценку — на плате это ровно то напряжение, которое через RC-фильтр придёт на ножку контраста.
Правило различения — два инструмента без всякой пайки. Бледная, но ровная картинка — электрическая причина: мультиметр на питание панели и на V0 показывает всё за минуту. Выцветание под прямым светом, которое уходит, когда закрыть экран ладонью, — оптическая: дело в панели и подсветке, и никакая уставка не поможет. Два этих правила отделяют всё, о чём говорим ниже, от неисправности: живой экран с плохой картинкой — это настройка, мёртвый — проводка.
Контраст, который едет
Вход контраста V0 — ножка 3 панели, рабочее окно напряжения около 0,4-1 вольта, классическая схема — подстроечник 10 кОм между питанием и землёй; вся механика первого запуска разобрана в уроке про контраст и потенциометр. Тонкость, которая вылезает не в комнате, а на улице: порог жидких кристаллов смещается с температурой, и уставка, выставленная отвёрткой в квартире, зимой уходит мимо окна. Панели на это отвечают партиями: обычные рассчитаны примерно на минус пять — плюс сорок, расширенные, маркируемые как WT, держат от минус двадцати до плюс семидесяти; маркировка стоит в паспорте модуля, и для уличного прибора она важнее цены. На холоде меняется не только контраст — кристаллы вязнут, картинка перерисовывается вяло, и курсор догоняет нажатия с заметным опозданием.
Программная уставка закрывает дрейф без отвёртки. Схема двух деталей: ШИМ-пин через RC-фильтр на V0 — резистор 10 кОм и конденсатор 10 мкФ дают постоянную времени около 0,1 секунды, так что стандартные 490 герц ШИМ превращаются в ровное напряжение. Арифметика прямая: среднее напряжение равно пяти вольтам, умноженным на заполнение, значит окно 0,4-1 вольта — это заполнение от восьми до двадцати процентов, или значения analogWrite от 20 до 51 из 255. Промышленные решения делают ровно так же: цифровой контроль контраста и подсветки одной парой линий — этим подходом пользуется целая ветка заводских схем. Автоматика надстраивается сверху: термистор на свободном аналоговом входе двигает уставку вместе с температурой, и подстроечник остаётся только для первого запуска.
Автомат на термисторе собирается поверх этой схемы в три шага. Первый: термистор с делителем 10 кОм на свободный аналоговый вход — стандартная обвязка. Второй: калибровка в двух точках — комнатная и холодильник; по двум отсчётам строится таблица уставок, и я описывал приём двухточечной калибровки в разделе про EEPROM — здесь он переезжает целиком. Третий: гистерезис уставки в два-три градуса, чтобы заполнение не дёргалось на пограничной температуре — тот же приём, что у порогов день-ночь в диммере подсветки. Без гистерезиса ШИМ живёт своей жизнью ровно на границе, и экран слегка пульсирует, чего глаз не прощает.
#include <Wire.h>#include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27, 16, 2);const int potPin = A0; // уставка; в автомате здесь термисторconst int v0Pin = 3; // ШИМ через RC: 10 кОм + 10 мкФ на V0 unsigned long last = 0; void setup() { pinMode(v0Pin, OUTPUT); lcd.init(); lcd.backlight(); Serial.begin(9600); lcd.setCursor(0, 0); lcd.print("Kontrast: SHIM");} void loop() { if (millis() - last < 300) return; last = millis(); int raw = analogRead(potPin); int n = map(raw, 0, 1023, 20, 51); // заполнение 20..51 из 255 analogWrite(v0Pin, n); // среднее: 5В * n/255 = 0,4..1,0 В int volt10 = 50 * n / 255; // оценка V0 в десятых вольта lcd.setCursor(0, 1); lcd.print("N="); lcd.print(n); lcd.print(" V0="); lcd.print(volt10 / 10); lcd.print("."); lcd.print(volt10 % 10); lcd.print("V "); Serial.print("duty "); Serial.print(n * 100 / 255); Serial.print("% V0 ~ 0."); Serial.print(volt10 % 10); Serial.println(" V");}Солнце, панели и подсветка
Светостойкость начинается с типа панели, и разница видна в темноте. Позитивная жёлто-зелёная панель — тёмные буквы на светлом фоне — читается на одном отражённом свете: днём подсветка ей почти не нужна, солнце добавляет читаемости, а не отнимает. Негативная сине-белая — светлые буквы на тёмном фоне — без подсветки пустая, а на солнце её свет проигрывает отражённому: картинка выцветает ровно так, как выцветал мой тепличный таймер. Рабочие меры по возрастанию затрат: уводить экран в тень козырьком, брать позитивную панель для уличных приборов, повышать ток подсветки до максимума — последняя мера ещё и греет панель в закрытом корпусе.
Питание подсветки — второй край темы, и цифры здесь короткие. Подсветка 16x2 берёт 20-25 миллиампер, у 20x4 — уже 30-60; логика панели — копейки, один-два миллиампера, так что бюджет прибора определяет именно подсветка. ШИМ-диммер с ночной яркостью и гистерезисом порогов разобран в уроке про экономию подсветки, сон экрана по бездействию — в уроке про подсветку и сон, а когда модуль кормят прямо с пина — с ограничениями этого приёма — в уроке про питание от пина. Моё правило после двух дачных сезонов: улица — позитивная панель и козырёк, тёмное помещение — негативная с диммером, и никогда не наоборот.
Место установки выбирается вместе с панелью, а не после. Остекление щитка добавляет блик, который бьёт сильнее солнца: матовая плёнка канцелярского формата гасит его почти даром. Тень и северная сторона дают панели вторую жизнь: прибор, который слеп на южном окне, после переноса на восточный край стола возвращается в норму без единой пайки. И проверьте угол чтения: у символьных панелей читаемость падает при взгляде сбоку, поэтому наклон корпуса на десять-пятнадцать градусов к глазу оператора работает лучше, чем запас тока подсветки.
| Симптом | Частая причина | Первое лечение |
|---|---|---|
| Буквы бледнеют на холоде | Дрейф контраста: уставка ушла из окна V0 | Подстроечник по месту или уставка ШИМ по термистору |
| Призрачный текст при горящей подсветке | Панель питается от 3,3 В вместо паспортных 5 В | Вернуть 5 В на VCC или панель с широким диапазоном |
| Два ряда чёрных квадратов | Контраст уехал к земле, V0 около нуля | Подстроечник V0: от квадрата до букв за пол-оборота |
| Слепнет на солнце | Негативная панель: подсветка тонет в отражении | Позитивная панель, козырёк, запас тока подсветки |
Соберу всё в порядок действий для уличного прибора — по этому списку мои последние сборки проходят первый запуск без сюрпризов. Панель под задачу: для улицы позитивная, при настоящих морозах — партия WT; питание строго пять вольт, не с рельса логики 3,3. Контраст: подстроечник на первое включение, дальше ШИМ через RC на V0 с ручной уставкой; автомат с термистором подключается, когда за неделю наблюдений уставку двигали больше двух раз.
Подсветку сразу ведите через транзисторный ключ с ШИМ: на улице диммер окупается быстрее, чем в комнате, потому что разница между солнцем и ночью огромна. Логика наблюдения простая: лог уставки в Serial за неделю отвечает на вопрос, нужна ли автоматика; если уставка сидит на месте — автоматика не нужна, и это тоже результат. Так я пришёл к тому, что половина моих комнатных приборов живёт с одним подстроечником и не страдает: дрейф есть, но в отапливаемом помещении он меньше цены деталей и пайки.
- 1. Какое напряжение обычно держит вход контраста V0 для нормальной картинки?
- 2. Какая пара деталей превращает ШИМ в ровное напряжение на V0?
- 3. Какому заполнению ШИМ соответствует окно контраста 0,4-1,0 вольта при питании 5 В?
- 4. Какая панель читается на солнце без борьбы с подсветкой?
- 5. Призрачно-бледные буквы при горящей подсветке чаще всего означают…
- Два разных «чёрного»: квадраты — контраст у земли, чёрная строка — нет инициализации
- Окно V0 — 0,4-1 В, и оно дрейфует с температурой: комнатная уставка зимой мимо
- Программный контраст: ШИМ через RC 10 кОм + 10 мкФ на V0, заполнение 8-20%
- Панели бывают обычные (примерно минус пять — плюс сорок) и расширенные WT (минус двадцать — плюс семьдесят)
- Улица — позитивная панель и козырёк; тёмное помещение — негативная с диммером 20-25 мА
Частые вопросы по теме урока
- Какое напряжение обычно держит вход контраста V0 для нормальной картинки?
- Окно V0 — примерно 0,4-1 В. Подстроечник 10 кОм между питанием и землёй выбирает точку в этом окне. Около 0,4-1 вольта, близко к земле
- Какая пара деталей превращает ШИМ в ровное напряжение на V0?
- RC-фильтр 10 кОм на 10 мкФ даёт постоянную около 0,1 с и сглаживает 490 Гц ШИМ в ровное среднее. Резистор 10 кОм и конденсатор 10 мкФ
- Какому заполнению ШИМ соответствует окно контраста 0,4-1,0 вольта при питании 5 В?
- Среднее равно 5 В, умноженным на заполнение: 0,4 В — это 8%, 1,0 В — 20%, то есть значения analogWrite от 20 до 51. От 8 до 20 процентов
- Какая панель читается на солнце без борьбы с подсветкой?
- Позитивная панель работает на отражённом свете, солнце ей помогает. Негативная тонет: подсветка слабее отражённого света. Позитивная жёлто-зелёная: тёмные буквы на светлом фоне
- Призрачно-бледные буквы при горящей подсветке чаще всего означают…
- При низком питании контрастному окну не хватает размаха. Мультиметр на VCC решает диагноз за минуту. Питание панели 3,3 В вместо 5 В