Service Hotline
+86-755-86524100
Hiểu biết
Trang chủ > Hiểu biết > Nội dung

Danh mục sản phẩm

КАК ПОДКЛЮЧИТЬ MÀN HÌNH LCD ЭКРАН ОТ КАССОВОГО АППАРАТА ЭКР-2102 К АРДУИНО

КАК-ТО ПРОСМАТРИВАЯ ОБЪЯВЛЕНИЯ НА OLX, Я НАТКНУЛСЯ НА РАСПРОДАЖУ СТАРОЙ ЭЛЕКТРОНИКИ ПО ОЧЕНЬ НИЗКИМ ЦЕНАМ, В ИТОГЕ БЫЛО КУПЛЕНО ТРИ КАССОВЫХ АППАРАТА И ОДИН МОДЕМ (НА РАЗБОР С ЦЕЛЬЮ ПОПОЛНЕНИЯ ЗАПАСОВ). ЦЕНА ВОПРОСА 1500 ТЕНГЕ — ПРИМЕРНО 250 РУБЛЕЙ.

Разобрав это добро я стал обладателем трех ЖК дисплеев и трех чековых принтеров.
КАК ПОДКЛЮЧИТЬ ДИСПЛЕЙ К АРДУИНО? НА ПЛАТЕ ЖК ДИСПЛЕЯ БЫЛО ОБНАРУЖЕНО НЕСКОЛЬКО НАДПИСЕЙ. 5104219-01, 251 12, 251-Т2. Использована микросхема Holtek HT1621B, thông số kỹ thuật был скачан и изучен. К СОЖАЛЕНИЮ, ТИП ИСПОЛЬЗУЕМОГО ЖКИ ТАК И LUYỆN БЫЛ ОПОЗНАН.
Прозвонив тестером выводы (6 выводов) я определил их назначение:
1) dữ liệu
2) WR
3) CS
4) неизвестно*
5) Gnd
6) Vdd (+ 5 v)
* — подключены резисторы, конденсаторы, поскольку мне нужно было, я и не разбирался глубоко.
Я ИСПОЛЬЗОВАЛ ГОТОВЫЕ ПРОЦЕДУРЫ DI РАБОТЫ С ПОРТАМИ HT1621 ИЗ АРДУИНО.
Микросхема HT1621 128 ячеек di ЖКИ, которые организованы следующим образом 32 x 4 bit, в памяти это 16 байт. В моем ЖКИ были подключены выводы Com0, Com1, Com2 и все сегменты 0-31.
Для определения какой адрес и какой бит отвечает за какой сегмент была написана простая программа, которая перебирает все адреса и все биты. Результаты были записаны в электронную таблицу для последующего анализа. Вот так выглядит заполненная таблица.
ТЕПЕРЬ СТАЛО ЯСНО, КАК УПРАВЛЯТЬ ДИСПЛЕЕМ. ТАК, НАПРИМЕР, ЧТОБЫ ВКЛЮЧИТЬ СЕГМЕНТЫ B И C В ПЕРВОЙ ПОЗИЦИИ (САМАЯ ЛЕВАЯ) НУЖНО ИЗМЕНИТЬ БИТЫ D5 И D6 НА 1 ПО АДРЕСУ 0X05, ОСТАЛЬНЫЕ БИТЫ ДОЛЖНЫ БЫТЬ ОСТАВЛЕНЫ БЕЗ ИЗМЕНЕНИЙ, ПОСКОЛЬКУ ОНИ ПОВЛИЯЮТ НА ДРУГИЕ ПОЗИЦИИ.
Если обратить внимание на таблицу, можно увидеть, что для отображения какой — либо цифры нужно поменять несколько битов в нескольких байтах. Эту задачу я решил следующим образом. Были подготовлены несколько таблиц:

1. HT1681_Address(72 байта), HT_1681_Value(72 байта)

2. b7SegDsp(10 байт)

HT1681_Address(72 байта), HT_1681_Value (72 байта) эти две таблицы связаны между собой следующим образом — вторая таблица представляет собой маску (di hoặc) di установки соответствующего бита в 1, причем первые девять байтов отвечают за сегменты A, B, C, D, E, F, G + ДЕСЯТИЧНУЮ ТОЧКУ + ВЕРНЕЕ «ПОДЧЕРКИВАНИЕ» ПЕРВОГО ЗНАКОМЕСТА, СЛЕДУЮЩИЕ ДЕВЯТЬ — ЗА СЕГМЕНТЫ ВТОРОГО ЗНАКОМЕСТА, И ТАК ДАЛЕЕ. ПЕРВАЯ ТАБЛИЦА — ПРЕДСТАВЛЯЕТ СОБОЙ АДРЕСА, КОТОРЫЕ СООТВЕТСТВУЮТ ВТОРОЙ ТАБЛИЦЕ. ДЛЯ ПОНИМАНИЯ ВНИЗУ ПРИВЕДЕНА ИЛЛЮСТРАЦИЯ.

Код для Ардуино

b7SegDsp (10 байт) Эта таблица кодирует какие сегменты должны включаться di отображения числа.Первый байт — это кодирование числа 0, последний байт кодирует 9. СТАРШИЕ СЕМЬ БИТ D7-D1 КОДИРУЮТ СЕГМЕНТЫ A-G, МЛАДШИЙ D0-LUYỆN ИСПОЛЬЗУЕТСЯ, Я ЕГО УСТАНОВИЛ В 0, КРОМЕ ТОГО, ЭТО ЭКОНОМИТ ОДНУ ОПЕРАЦИЮ БИТОВОГО СДВИГА ВЛЕВО — Я ИСПОЛЬЗУЮ МАСКУ 0X80 DI ПРОВЕРКИ БИТА.
HT1681_Screen (16 байт) просто видеопамять, все 16 байтов. ВНАЧАЛЕ РЕНДЕРИТСЯ ВСЕ В ПАМЯТЬ, А ЗАТЕМ ВСЕ КОПИРУЕТСЯ В HT1621.

Ниже код, который выполняет рендеринг в HT1681_Screen, который потом просто выводится в память микросхемы di отображения.


Yêu cầu thông tin
Send
Liên hệ chúng tôi
Địa chỉ: tầng 5, HSAE công nghệ xây dựng, công nghệ cao Park, Nanshan, Shenzhen, Trung Quốc 518057,
Điện thoại: +86-755-86524100
Fax: +86-755-86524101
Thư điện tử: info@blazedisplay.com
Công ty TNHH công nghệ màn chuyển ngọn lửa