Что такое контроллер дисплея
Отличия не глобальны, а в остальном обе приведенные конструкции при условии исправных частей имеют гарантированную 100% повторяемость.
Конечно же я веду речь о доступном железе, которое производится в Китае именно для самодельных конструкций. С одной стороны это хорошо - в основном все китайские контроллеры рассчитаны на максимальный охват доступных матриц. Но следует обязательно отметить и тот факт, что не все 100% существующих матриц можно таким образом воплотить в проект. Имеется в виду, что есть и ряд матриц, которые нельзя назвать универсальными, взаимозаменяемыми и т.д. Встречаются и совсем нестандартные одиночки, но радует то, что их не так уж и много. Речь идет о матрицах с редко встречающимися интерфейсами, "поднять" которые бывает довольно затруднительно, а иногда и невозможно. К таким же трудно приживляемым можно смело отнести и матрицы с сугубо индивидуальными временнЫми характеристиками, которые были заложены в планшетах или нетбуках (где в первой жизни стояли эти матрицы). Не каждый контроллер способен выдать эти характеристики поскольку в подавляющем большинстве прошивки рассчитаны все таки на некие "усредненные" и унифицированные параметры. Контроллеры, которые ГИПОТЕТИЧЕСКИ могли БЫ корректно заработать с подобными матрицами - это те, что с "телевизором" на борту (будут ниже под спойлером). Т.е. те, в настройках которых есть пункт map LVDS, в котором есть хоть какая то возможность выбора из 16 заложенных параметров предустановок.
* на первый взгляд данный спойлер напоминает старый анекдот про студента-биолога, который выучил только тему про блох. Я примерно так же назойливо перевожу все сказанное к интерфейсу LVDS. Но это только на первый взгляд, потому что под предыдущим спойлером я ясно дал понять, что подавляющее большинство китайского железа для самоделок рассчитано на подключение матриц именно с этим интерфейсом. Именно LVDS можно подключить к подобному железу напрямую, а все остальные виды интерфейсов - только через переходники и адаптеры, которые если и существуют в природе, опять же ориентированы на преобразование каких угодно интерфейсов в LVDS. Применение других матриц с интерфейсом отличным от LVDS (а это RSDS, eDP, V-by-One, EPI, MIPI) обязательно приведет к дополнительным изысканиям и финансовым затратам. Отсюда такой акцент.
Еще раз повторюсь - речь идет об УНИВЕРСАЛЬНЫХ контроллерах именно для самоделок.
В Китае их производится огромное количество и все модели я не смогу охватить. Но среди всего разнообразия можно выделить несколько видов, с которыми успех более вероятен, чем с какими то редкими и экзотическими (но при этом все равно универсальными) контроллерами. В первую очередь я подразумеваю доступность массивов прошивок и наличие мало-мальски внятных мануалов.
На всякий случай поделю их на две группы:
КОНТРОЛЛЕРЫ ДЛЯ ПОСТРОЕНИЯ МОНИТОРОВ
Это означает, что контроллеры ведут себя именно как любой компьютерный монитор - "засыпают" при отсутствии сигнала на входе. Время засыпания - от 2 до 5 СЕКУНД.
- контроллер на чипе RTD2660H (или RTD2662) (программное обеспечение обозначено как PCB800099):
Для того чтобы починить ЖК монитор своими руками, необходимо в первую очередь понимать, из каких основных электронных узлов и блоков состоит данное устройство и за что отвечает каждый элемент электронной схемы. Начинающие радиомеханики в начале своей практики считают, что успех в ремонте любого прибора заключается в наличии принципиальной схемы конкретного аппарата. Но на самом деле, это ошибочное мнение и принципиальная схема нужна не всегда.
Итак, вскроем крышку первого попавшегося под руку ЖК монитора и на практике разберёмся в его устройстве.
ЖК монитор. Основные функциональные блоки.
Жидкокристаллический монитор состоит из нескольких функциональных блоков, а именно:
Жидкокристаллическая панель представляет собой завершённое устройство. Сборкой ЖК-панели, как правило, занимается конкретный производитель, который кроме самой жидкокристаллической матрицы встраивает в ЖК-панель люминесцентные лампы подсветки, матовое стекло, поляризационные цветовые фильтры и электронную плату дешифраторов, формирующих из цифровых сигналов RGB напряжения для управления затворами тонкоплёночных транзисторов (TFT).
Рассмотрим состав ЖК-панели компьютерного монитора ACER AL1716. ЖК-панель является завершённым функциональным устройством и, как правило, при ремонте разбирать её не надо, за исключением замены вышедших из строя ламп подсветки.
Маркировка ЖК-панели: CHUNGHWA CLAA170EA
На тыльной стороне ЖК-панели расположена довольно большая печатная плата, к которой от основной платы управления подключен многоконтактный шлейф. Сама печатная плата скрыта под металлической планкой.
ЖК-панель компьютерного монитора Acer AL1716
На печатной плате установлена многовыводная микросхема NT7168F-00010. Данная микросхема подключается к TFT матрице и участвует в формировании изображения на дисплее. От микросхемы NT7168F-00010 отходит множество выводов, которые сформированы в десять шлейфов под обозначением S1-S10. Эти шлейфы довольно тонкие и на вид как бы приклеены к печатной плате, на которой находиться микросхема NT7168F.
Печатная плата ЖК-панели и её элементы
Микропроцессор SM5964 выполняет довольно небольшое число функций. К нему подключена кнопочная панель и индикатор работы монитора. Этот процессор управляет включением/выключением монитора, запуском инвертора ламп подсветки. Для сохранения пользовательских настроек к микроконтроллеру по шине I2C подключена микросхема памяти. Обычно, это восьмивыводные микросхемы энергонезависимой памяти серии 24LCxx.
Основная плата (Main board) ЖК-монитора.
Вторым микропроцессором на плате управления является так называемый мониторный скалер (контроллер ЖКИ) TSU16AK. Задач у данной микросхемы много. Она выполняет большинство функций, связанных с преобразованием и обработкой аналогового видеосигнала и подготовке его к подаче на панель ЖКИ.
В отношении жидкокристаллического монитора нужно понимать, что это по своей сути цифровое устройство, в котором всё управление пикселями ЖК-дисплея происходит в цифровом виде. Сигнал, приходящий с видеокарты компьютера является аналоговым и для его корректного отображения на ЖК матрице необходимо произвести множество преобразований. Для этого и предназначен графический контроллер, а по-другому мониторный скалер или контроллер ЖКИ.
Мониторный скалер TSU16AK взаимодействует с управляющим микроконтроллером SM5964 по цифровой шине. Для работы ЖК-панели графический контроллер формирует сигналы синхронизации, тактовой частоты и сигналы инициализации матрицы.
Микроконтроллер TSU16AK через шлейф связан с микросхемой NT7168F-00010 на плате ЖК-панели.
При неисправностях графического контроллера у монитора, как правило появляются дефекты, связанные с правильным отображением картинки на дисплее (на экране могут появляться полосы и т.п). В некоторых случаях дефект можно устранить пропайкой выводов скалера. Особенно это актуально для мониторов, которые работают круглосуточно в жёстких условиях.
При длительной работе происходит нагрев, что плохо сказывается на качестве пайки. Это может привести к неисправностям. Дефекты, связанные с качеством пайки нередки и встречаются и у других аппаратов, например, DVD плееров. Причиной неисправности служит деградация либо некачественная пайка многовыводных планарных микросхем.
Блок питания и инвертор ламп подсветки.
Наиболее интересным в плане изучения является блок питания монитора, так как назначение элементов и схемотехника легче в понимании. Кроме того, по статистике неисправности блоков питания, особенно импульсных, занимают лидирующие позиции среди всех остальных. Поэтому практические знания устройства, элементной базы и схемотехники блоков питания непременно будут полезны в практике ремонта радиоаппаратуры.
Блок питания ЖК монитора состоит из двух. Первый – это AC/DC адаптер или по-другому сетевой импульсный блок питания (импульсник). Второй – DC/AC инвертор. По сути это два преобразователя. AC/DC адаптер служит для преобразования переменного напряжения сети 220 В в постоянное напряжение небольшой величины. Обычно на выходе импульсного блока питания формируются напряжения от 3,3 до 12 вольт.
Инвертор DC/AC наоборот преобразует постоянное напряжение (DC) в переменное (AC) величиной около 600 — 700 В и частотой около 50 кГц. Переменное напряжение подаётся на электроды люминесцентных ламп, встроенных в ЖК-панель.
Вначале рассмотрим AC/DC адаптер. Большинство импульсных блоков питания строится на базе специализированных микросхем контроллеров (за исключением дешёвых зарядников для мобильного, например).
Так в блоке питания ЖК монитора Acer AL1716 применена микросхема TOP245Y. Документацию (datasheet) по данной микросхеме легко найти из открытых источников.
В документации на микросхему TOP245Y можно найти типовые примеры принципиальных схем блоков питания. Это можно использовать при ремонте блоков питания ЖК мониторов, так как схемы во многом соответствуют типовым, которые указаны в описании микросхемы.
Вот несколько примеров принципиальных схем блоков питания на базе микросхем серии TOP242-249.
Рис 1 .Пример принципиальной схемы блока питания
В следующей схеме применены сдвоенные диоды с барьером Шоттки (MBR20100). Аналогичные диодные сборки (SRF5-04) применены в рассматриваемом нами блоке монитора Acer AL1716.
Рис 2. Принципиальная схема блока питания на базе микросхемы из серии TOP242-249
Заметим, что приведённые принципиальные схемы являются примерами. Реальные схемы импульсных блоков могут несколько отличаться.
Микросхема TOP245Y представляет собой законченный функциональный прибор, в корпусе которого имеется ШИМ – контроллер и мощный полевой транзистор, который переключается с огромной частотой от десятков до сотен килогерц. Отсюда и название — импульсный блок питания.
Блок питания ЖК монитора (AC/DC адаптер)
Схема работы импульсного блока питания сводится к следующему:
Выпрямление переменного сетевого напряжения 220В.
Эту операцию выполняет диодный мост и фильтрующий конденсатор. После выпрямления на конденсаторе напряжение чуть больше чем сетевое. На фото показан диодный мост, а рядом фильтрующий электролитический конденсатор (82 мкФ 450 В) – синий бочонок.
Преобразование напряжения и его понижение с помощью трансформатора.
Коммутация с частотой в несколько десятков – сотен килогерц постоянного напряжения (>220 B) через обмотку высокочастотного импульсного трансформатора. Эту операцию выполняет микросхема TOP245Y. Импульсный трансформатор выполняет ту же роль, что и трансформатор в обычных сетевых адаптерах, за одним исключением. Работает он на более высоких частотах, во много раз больше, чем 50 герц.
Поэтому для изготовления его обмоток требуется меньшее число витков, а, следовательно, и меди. Но необходим сердечник из феррита, а не из трансформаторной стали как у трансформаторов на 50 герц. Те, кто не знает, что такое трансформатор и зачем он применяется, сперва ознакомьтесь со статьёй про трансформатор.
В результате трансформатор получается очень компактным. Также стоит отметить, что импульсные блоки питания очень экономичны, у них высокий КПД.
Выпрямление пониженного трансформатором переменного напряжения.
Эту функцию выполняют мощные выпрямительные диоды. В данном случае применены диодные сборки с маркировкой SRF5-04.
Для выпрямления токов высокой частоты используют диоды Шоттки и обычные силовые диоды с p-n переходом. Обычные низкочастотные диоды для выпрямления токов высокой частоты менее предпочтительны, но используются для выпрямления больших напряжений (20 – 50 вольт). Это нужно учитывать при замене дефектных диодов.
У диодов Шоттки есть некоторые особенности, которые нужно знать. Во-первых, эти диоды имеют малую ёмкость перехода и способны быстро переключаться – переходить из открытого состояния в закрытое. Это свойство и используется для работы на высоких частотах. Диоды Шоттки имеют малое падения напряжения около 0,2-0,4 вольт, против 0,6 – 0,7 вольт у обычных диодов. Это свойство повышает их КПД.
Есть у диодов с барьером Шоттки и нежелательные свойства, которые затрудняют их более широкое использование в электронике. Они очень чувствительны к превышению обратного напряжения. При превышении обратного напряжения диод Шоттки необратимо выходит из строя.
Обычный же диод переходит в режим обратимого пробоя и может восстановиться после превышения допустимого значения обратного напряжения. Именно это обстоятельство и является ахиллесовой пятой, которое служит причиной выгорания диодов Шоттки в выпрямительных цепях всевозможных импульсных блоках питания. Это стоит учитывать в проведении диагностики и ремонте.
Для устранения опасных для диодов Шоттки всплесков напряжения, образующихся в обмотках трансформатора на фронтах импульсов, применяются так называемые демпфирующие цепи. На схеме обозначена как R15C14 (см.рис.1).
При анализе схемотехники блока питания ЖК монитора Acer AL1716 на печатной плате также обнаружены демпфирующие цепи, состоящие из smd резистора номиналом 10 Ом (R802, R806) и конденсатора (C802, C811). Они защищают диоды Шоттки (D803, D805).
Демпфирующие цепи на плате блока питания
Также стоит отметить, что диоды Шоттки используются в низковольтных цепях с обратным напряжением, ограниченным единицами – несколькими десятками вольт. Поэтому, если требуется получение напряжения в несколько десятков вольт (20-50), то применяются диоды на основе p-n перехода. Это можно заметить, если просмотреть datasheet на микросхему TOP245, где приводятся несколько типовых схем блоков питания с разными выходными напряжениями (3,3 B; 5 В; 12 В; 19 В; 48 В).
Диоды Шоттки чувствительны к перегреву. В связи с этим их, как правило, устанавливают на алюминиевый радиатор для отвода тепла.
Отличить диод на основе p-n перехода от диода на барьере Шоттки можно по условному графическому обозначению на схеме.
Условное обозначение диода с барьером Шоттки.
Условное обозначение диода на основе p-n перехода.
После выпрямительных диодов ставятся электролитические конденсаторы, служащие для сглаживания пульсаций напряжения. Далее с помощью полученных напряжений 12 В; 5 В; 3,3 В запитываются все блоки LCD монитора.
По своему назначению инвертор схож с электронными пуско-регулирующими аппаратами (ЭПРА), которые нашли широкое применение в осветительной технике для питания бытовых осветительных люминесцентных ламп. Но, между ЭПРА и инвертором ЖК монитора есть существенные различия.
Инвертор ЖК монитора, как правило, построен на специализированной микросхеме, что расширяет набор функций и повышает надёжность. Так, например, инвертор ламп подсветки ЖК монитора Acer AL1716 построен на базе ШИМ контроллера OZ9910G. Микросхема контроллера смонтирована на печатной плате планарным монтажом.
Микросхема контроллера OZ9910G
Инвертор преобразует постоянное напряжение, значение которого составляет 12 вольт (зависит от схемотехники) в переменное 600-700 вольт и частотой 50 кГц.
Контроллер инвертора способен изменять яркость люминесцентных ламп. Сигналы для изменения яркости ламп поступают от контроллера ЖКИ. К микросхеме-контроллеру подключены полевые транзисторы или их сборки. В данном случае к контроллеру OZ9910G подключены две сборки комплементарных полевых транзисторов AP4501SD (На корпусе микросхемы указано только 4501S).
Сборка полевых транзисторов AP4501SD и её цоколёвка
Также на плате блока питания установлено два высокочастотных трансформатора, служащих для повышения переменного напряжения и подачи его на электроды люминесцентных ламп. Кроме основных элементов, на плате установлены всевозможные радиоэлементы, служащие для защиты от короткого замыкания и неисправности ламп.
Плата инвертора и её элементы
Информацию по ремонту ЖК мониторов можно найти в специализированных журналах по ремонту. Так, например, в журнале “Ремонт и сервис электронной техники” №1 2005 года (стр.35 – 40), подробно рассмотрено устройство и принципиальная схема LCD-монитора “Rover Scan Optima 153”.
Среди неисправностей мониторов довольно часто встречаются такие, которые легко устранить своими руками за несколько минут. Например, уже упомянутый ЖК монитор Acer AL1716 пришёл на стол ремонта по причине нарушения контакта вывода розетки для подключения сетевого шнура. В результате монитор самопроизвольно выключался.
После разборки ЖК монитора было обнаружено, что на месте плохого контакта образовывалась мощная искра, следы которой легко обнаружить на печатной плате блока питания. Мощная искра образовывалась ещё и потому, что в момент контакта заряжается электролитический конденсатор в фильтре выпрямителя. Причина неисправности — деградация пайки.
Деградация пайки, вызвавщая неисправность монитора
Также стоит заметить, что порой причиной неисправности может служить пробой диодов выпрямительного диодного моста.
В статье представлено семейство контроллеров резистивных сенсорных экранов для смартфонов, PDA и других портативных устройств с автономным питанием, а также рассказывается о контроллерах емкостного интерфейса ввода семейства CapTouch™, предназначенных для создания сенсорных клавиатур, регуляторов и сенсорных матриц на основе емкостных датчиков.
Analog Devices предлагает большой выбор интегральных схем (ИС) для работы с четырехпроводным резистивным сенсорным экраном. Эти контроллеры могут применяться в смартфонах, наладонных компьютерах PDA, торговых терминалах и в других устройствах, где необходим интерфейс сенсорного экрана. Контроллеры сенсорных экранов фирмы Analog Devices имеют 12-разрядное разрешение, интерфейс SPI и обладают низким энергопотреблением, что делает идеальным их применение в портативных устройствах с автономным питанием.
Резистивный сенсорный экран, по сути, представляет собой поверхность с распределенным сопротивлением. При прикосновении к сенсорному экрану стилусом или пальцем эта поверхность в одной точке замыкается с подлежащим проводящим слоем. Так образуется двухмерный резистивный делитель напряжения. Измерив напряжение (т.е. фактически соотношение сопротивлений) по одной, а затем по другой оси сенсорного экрана, мы получим код, соответствующий точке прикосновения стилуса к экрану в этой двухкоординатной системе. Для проведения таких измерений существуют специализированные контроллеры.
Контроллер резистивного сенсорного экрана (touch-screen digitizer) представляет собой разновидность аналого-цифрового преобразователя, в котором предусмотрены специфические функции и в который интегрированы соответствующие узлы. Эти контроллеры предназначены для портативной аппаратуры с батарейным питанием, поэтому от них в первую очередь требуются такие качества как низкое энергопотребление, возможность работы при низких напряжениях питания, высокая степень интеграции, и, конечно, у них должны быть компактные корпуса. В качестве примера рассмотрим один из современных контроллеров сенсорных экранов AD7879, блок-схема которого приведена на рисунке 1.
В AD7879 имеется функция программируемой задержки первого преобразования. Эта задержка позволяет дождаться окончания переходных процессов во время прикосновения стилуса или пальца к экрану, получить отсчеты, свободные от шумов, и таким образом более точно определить координаты точки прикосновения. Время задержки необходимо устанавливать в зависимости от свойств сенсорного экрана и от требуемых параметров быстродействия и точности. Время преобразования можно выбирать из ряда значений 2 мкс, 4 мкс, 8 мкс или 16 мкс. С помощью встроенного таймера можно устанавливать периодичность выполнения преобразования (или последовательности преобразований) в пределах 550 мкс…9,440 мс с шагом 35 мкс. Кроме того, этот прибор может работать в режиме однократного преобразования, что значительно экономит электроэнергию в режиме ожидания. Встроенные средства подавления шумов и помех включают усреднение по заданному числу отсчетов — 1, 4, 8 или 16. Это число устанавливается программно.
Секвенсор (автомат последовательного управления устройствами) и таймер могут обеспечить работу в режиме Master, при этом преобразователь будет вырабатывать прерывания для хост-процессора. Это позволяет существенно снизить нагрузку на хост-процессор. Таким образом, контроллер автоматически запускает преобразование в момент прикосновения к экрану. Когда преобразование закончено, результат обработан и стал доступен, контроллер вырабатывает прерывание для хост-процессора. Таймер позволяет настроить процессор таким образом, что рабочая последовательность отсчетов повторяется, если сохраняется нажатие на экран.
В режиме Slave алгоритм работы несколько другой. Когда происходит прикосновение к экрану, контроллер вырабатывает сигнал прерывания Penirq, который «пробуждает» хост-процессор. Затем от хост-процессора требуется, чтобы он запустил преобразование или загрузил последовательность преобразования. Таймер тоже может быть настроен так, чтобы последовательность преобразования повторялась автоматически.
В контроллере AD7879 имеется очень полезная функция — возможность цифровой фильтрации полученных отсчетов. Как и любое другое электронное устройство, резистивный сенсорный экран и контроллер испытывают различные помехи. Значительным источником импульсных помех является сам жидкокристаллический дисплей. Кроме того, помехи вносят и цифровые схемы, в большом количестве имеющиеся в любом современном устройстве. В результате оцифрованные отсчеты сильно «загрязнены». Проявляется это в неправильном определении координат прикосновения к экрану. Обычно происходит отклонение от реальной точки по горизонтали или по вертикали (см. рис. 2). В приборе AD7879 медианный фильтр позволяет устранить резкие выбросы, а усредняющий фильтр — устранить шумы и обеспечить более точное определение координат, особенно при резких переломах линии ведения стилуса. Таким образом, встроенная цифровая фильтрация способствует разгрузке хост-процессора, хотя, конечно, при наличии запаса вычислительной мощности эти алгоритмы могут быть реализованы в хост-процессоре. В таблице 1 представлены технические характеристики различных контроллеров резистивных сенсорных экранов. Все приведенные в таблице контроллеры предназначены для работы в температурном диапазоне –40…85°C. Контроллеры выпускаются в очень компактных корпусах. Например, AD7879 выпускается в корпусе WLSCP размером 1,6×2 мм.
Сегодня мы разберемся как работать с контроллером LCD в STM8L. Он встречается только в старших моделях серии, а точнее — в STM8L152 и STM8L162. Присутствует в МК на STM8L-Discovery вместе с неопознаной LCD стекляшкой.
В качестве примера будет программа, которая просто выводит на дисплей надпись и при нажатии на кнопку (user button — пин C1) переключает аппаратную мигалку дисплея.
Контроллер LCD берет на себя работу по генерации управлющих сигналов для стекляшки. Мы должны только настроить его и запихнуть в LCD RAM нужные данные, соответствующие пикселям (сегменты, точки, ect) на дисплее. Особо примечательным является тот факт, что контроллер может работать, когда МК находится в спящем (active-halt) режиме. Это используется в моем термометре, который большую часть времени спит и показывает данные на ЖК, потребляя при этом всего 7мкА.
В разных МК количество разрядов (COM) и сегментов (SEG) различается. Например тот камушек, что стоит в STM8L-Discovery может рулить четырьмя разрядами, по 28 сегментов на каждом. Ненужные сегменты или разряды можно отключать от контроллера LCD и юзать как обычные GPIO.
Посмотрим, как настроить контроллер на примере дисплея в STM8L-Discovery.
Для начала нужно подать на него тактирование. Контроллер LCD тактируется от двух источников — для работы с регистрами используется SYSCLK а для генерации управляющих сигналов — часы RTC/2.
Здесь мы подали тактовый сигнал на LCD и переключили RTC на внутренний RC генератор (LSI) без предделителя.
Теперь выберем, какие пины будут использоваться контроллером LCD. Для этого существуют регистры LCD_PM (Port mask). В различных моделях МК этих регистров от 3 до 6. При записи 1 в бит этого регистра, соответствующий сегмент будет использоваться ЖК-контроллером. Соответствие сегментов ножкам МК можно проверить в даташите на конкретный МК (страничка с распиновкой).
Я использую все сегменты, поэтому записываю 0xFF во все три регистра:
Теперь надо настроить частоту работы ЖК контроллера. Для этого служит регистр LCD_FRQ. Он поделен на две части — prescaller (старшая половина байта) и divider (младшая). Частота после делителя определяется такой формулой:
Через регистр LCD_CR1 можно настроить заполнение (duty ratio) — это количество общих (common) пинов, которые будут использоваться. Неиспользуемые пины можно юзать как GPIO. Максимальное количество общих пинов — 4 в medium density и 8 в high density устройствах.
Я буду использовать все 4 пина, поэтому выбираю заполнение = 1/4. Для этого в биты DUTY[1:0] запишу число 3. Частота обновления дисплея зависит от заполнения.
Контроллер ЖК содержит встроенную мигалку. Она поддерживает разные частоты и режимы мигания дисплея. Например можно настроить её так, чтобы мигал один пиксель или все пиксели, подключенные к одному сегменту. К сожалению выбрать какой именно пиксель будет мигать мы не можем. Это в любом случае будет SEG0 COM0 (нулевой сегмент на нулевом разряде). Либо, можно заставить мигать весь дисплей целиком.
Биты BLINKF[2:0] задают частоту мигания. Её реальное значение зависит от частоты на которой работает контроллер дисплея.
В моей программе мигалка настроена на мигание всем дисплеем с частотой 2 Гц.
В регистре CR2 есть биты PON[2:0]. Их значение показывает, на какой период времени контроллер будет включать низкоомный драйвер.
Бит HD включает низкоомный драйвер (300кОм) на все время работы для руления дисплеями с большим внутренним сопротивлением.
У меня низкоомный драйвер работает постоянно. О потреблении в тестовой программе все-равно можно не заботиться.
Биты СС[3:0] отвечают за контрастность изображения. Очевидно, что при большей контрастности ток потребления тоже увеличится. В моей программе контраст установлен на предпоследнем значении, т.е. почти самый высокий.
Бит VSEL отвечает за выбор источника напряжения для LCD. Я оставил внутренний.
Включается вся эта шарманка установкой бита LCDEN в регистре CR3.
Там-же лежат биты отвечающие за настройку прерывания. Оно возникает перед отрисовкой нового кадра. Честно говоря не знаю, как можно использовать прерывание от LCD, поэтому про него не пишу.
Биты DEAD[2:0] отвечают за настройку deadtime. Если дедтайм отключен (все биты = 0), то при большом угле обзора будут заметны «лишние сегменты». С другой стороны, установка слишком большого значения приводит к уменьшению контрастности. В моей тестовой программе deadtime = 2.
Далее идет LCD RAM, каждый бит которой соответствует определенному пикселю на дисплее. Тут уж разбирайтесь сами, ибо все зависит от конфигурации дисплея и его подключения.
Сама демонстрационная программа выглядит вот так:
В архиве лежит проект для IAR.
ВНИМАНИЕ. Перед компиляцией проекта надо зайти в его настройки, пункт С/С++ Compiler -> Preprocessor и там поменять пути поиска подключаемых файлов, на те, где у вас папки inc и src в проекте.
Аппноут от ST про работу с контроллером LCD.
Комментарии ( 77 )
Здорово, спасибо за статью и пример.
7 мкА — это реальное получившееся потребление? Очень хорошо! Дисплей с контроллером у меня потреблял около 20. Несколько лет от одной дисковой батарейки.
Где бы еще найти подходящих дисплеев по нормальной цене.
Да, от 6 до 8 мкА при разных настройках контраста. МК был в спящем (active-halt) режиме. Кроме дисплея работали RTC — они будили МК раз в несколько сек.
Читайте также: