на главную
Карта сайта
English version
Вы читаете:

Работа с гамма-корректором и контроллером клавиатуры ноутбуков

Компьютерная техника
3 года назад

Postal programmer — «умный» программатор. Работа с гамма-корректором MAX96XX и контроллером клавиатуры ноутбуков KB9012 (часть 1)


Иногда при ремонте приходится сталкиваться с экзотическими микросхемами, которые перед использованием требуют загрузки по нестандартному протоколу. Обычно в таких случаях используются специализированные программаторы. Уникальный программно-аппаратный комплекс Postal programmer позволяет решить проблему без дополнительных затрат.

 

Гамма-корректоры серии MAX96XX

Рассмотрим серию этих ИМС на примере MAX9669. Микросхема включает в себя (см. блок-схему на рис. 1):

- 16 каналов 10-битных цифроаналоговых преобразователей (ЦАП) для коррекции гаммы жидкокристаллических дисплеев;

- дополнительный мощный канал (600 мА) опорного напряжения (VCOM);

- многократно программируемую память для хранения установленных значений напряжения для всех каналов (MTP).

Блок-схема микросхемы MAX9669

Рис. 1. Блок-схема микросхемы MAX9669

 

Более подробно об этой микросхеме можно узнать из даташита от производителя [1]. Нас же интересует только программирование ее энергонезависимой памяти, необходимость которого возникает при замене этой микросхемы в случае ремонта модуля тайминг-контроллера T-CON (модуль входит в состав любой ЖК панели, см. рис. 2).

Внешний вид модулей T-CON, использующих программируемый гамма-корректор

Рис. 2. Внешний вид модулей T-CON, использующих программируемый гамма-корректор

 

Микросхемы гамма-корректоров предыдущего поколения использовали для формирования напряжений цепочки дискретных резисторов и не требовали программирования, применение же микросхем с памятью позволило отказаться от высокоточных делителей и обеспечить универсальность модулей T-CON.

Программирование энергонезависимой памяти микросхемы MAX9669 производится по протоколу I2C. Работа с внутренними регистрами микросхемы имеет специфические особенности, программатор Postal programmer предоставляет инструментарий, но не вносит изменений автоматически. Работа с прочитанными данными происходит вручную, в общем случае надо знать, что для копирования данных из одной микросхемы в другую данные необходимо скорректировать. Рассмотрим особенности программирования более подробно.

 

Установки в программе Postal3 для MAX96XX

Для чтения и записи микросхем MAX96XX необходимо загрузить управляющую программу Postal3, выбрать режим "EEPROM", затем войти в настройки, выбрать "Other Chips" и в выпадающем списке выбрать пункт "MAX96XX full" (рис. 3). В окне "Buffer Size" будет показан размер буфера 256 байт, но на самом деле из-за 16-битных данных работа ведется с дампами в 512 байт. Теперь необходимо вручную внести в ячейку шинный адрес для MAX9669 (автоматически он не сканируется, т.к. не попадает в диапазон для EEPROM). В ячейку "Bus Address" вносят код "74" - в скобках отображается адрес со смещением E8, указанный в даташите. Второй возможный адрес - "75" (EA) (адрес зависит от уровня на выв. 4 MAX9669). В дальнейшем, после работы с гамма-корректором, необходимо будет вернуть адрес по умолчанию для работы с I2C-EEPROM - нажать кнопку "Default". Сделав установки, нажимают "OK" и возвращаются в главное меню программы. Предполагается, что ИМС гамма-корректора запитана и линии I2C к ней подключены.

Рис. 3. Скриншот установок программы Postal3 для работы с гамма-корректором

 

Чтение микросхемы гамма-корректора происходит почти аналогично микросхеме EEPROM 24C02, за исключением следующих особенностей:

1. С каждого адреса памяти читается в файл по 2 байта данных. Таким образом, адрес регистра из даташита для поиска в файле должен быть умножен на 2.

2. Отсутствие подтверждения ACK (подтверждение приема байта по стандарту I2C) после записи последнего байта в энергонезависимую память (MTP). Поскольку ресурс циклов записи/стирания памяти этой ИМС мал (допустимо всего 100 перезаписей), то программатор, не учитывающий эту особенность, запросто исчерпает ресурс микросхемы непрерывным рестартом записи.

3. Запись в регистры управляется битами в поле данных, из-за чего считанные данные никогда не равны только что записанным. Поэтому следует различать прочитанный файл и файл, скорректированный для записи, - верификация с последним путем чтения невозможна. Возникает вопрос - почему же программа не делает все коррекции автоматически? Дело в том, что логика работы программы должна быть предсказуемой и понятной, иначе очень легко запутаться.

 

Логика работы программы Postal3 в режиме "MAX96XX full"

Программа использует при транзакции чтения и записи по 2 байта данных, аппаратный автоинкремент адреса не выполняется - каждый адрес (регистр) читается и записывается отдельной I2C-транзакцией, адрес инкрементируется в программе. При чтении будет всегда прочитано 512 байт данных с 256 адресов, адреса, ответа от которых не получено, заполняются кодом FFFF. Кнопка "Запись" подразумевает запись в адрес по стандарту I2C, а биты в поле данных, управляющие записью в регистры MAX96XX, проставляются вручную. Если поле данных для записи содержит код FFFF (данные всегда 16-битные), то адрес будет пропущен, таким образом можно задавать адреса для пропуска при редактировании файла под последующую запись (файловый адрес получается удвоением адреса регистра). Если при чтении регистра возникает ошибка, то соответствующий адрес в файле заполняется кодом FFFF и чтение продолжается без вывода сообщения об ошибке. Если файл в позиции отображения какого-либо регистра содержит FFFF, то при верификации отображаемый адрес будет пропущен и не будет считываться из микросхемы. Старшие (управляющие записью) биты реальных данных при верификации не маскируются, поэтому после записи MAX96XX появится сообщение об ошибке, поскольку в позиции управляющих битов при чтении будут нули. Можно загрузить оригинальный дамп (имеется в виду, что копируются данные из одной микросхемы в другую), первоначально считанный с оригинальной микросхемы, как будто для записи, и выполнить верификацию.

Для подобных случаев в настройках программы есть флажок "Use Opened File for Verify" на вкладке "Misc", установленный по умолчанию. Файл для последующей верификации можно открыть кнопкой "open" либо просто "перетащить" на главное окно программы (drag-and-drop). После этого при нажатии кнопки "Verify" содержимое микросхемы будет сравнено с данными открытого файла.

Необходимо также помнить, что после основных данных в памяти ИМС содержатся служебные данные, индивидуальные для каждой микросхемы. Рассмотрим подробнее, в чем разница между считанным с микросхемы файлом и файлом, пригодным для загрузки в нее по кнопке "Write".

Прододжение следует

Автор: Валерия Ершова (г. Москва)

Источник: Ремонт и сервис


Рекомендуем к данному материалу ...