Views: 6059
Библиотека для работы с LCD индикаторами на драйвере HD44780 (страница) 1.14 MB 4305 downloads
Страница в pdf. ...Несмотря на преимущества графических индикаторов, еще много используется в разработках символьные индикаторы, на драйвере HD44780 или ему аналогичные например, S6B0066U.
Проект ИЛЛИССИ предусматривает поддержку индикаторов такого типа, на системных платах, предусмотрен соединитель, для подключения индикаторов такого типа.

Вид снизу, вариант подключения, соединителя на гибкий шлейф.

Для работы была написана библиотека с минимальными функциями позволяющая выводить на индикаторы 8х1, 16х2, 20х2, 20х4 символьную информацию (включая кириллицу).
Для подключения индикаторов необходимо соединить пин-то-пин соединитель на плате ИЛЛИССИ с индикатором. На плате есть возможность установки потенциометра для регулировки контрастности дисплея. А также ключа управления подсветкой дисплея и резисторов ограничителей тока.

LCD индикаторы в проекте должны быть русифицированы, т.е. иметь следующую кодировку
Краткое, русское описание. Команды драйвера HD44780.
Библиотека для работы с LCD индикаторами на драйвере HD44780-описание_ru 225.32 KB 5037 downloads
Краткое, русское описание команд HD44780. ...Библиотека была протестирована на индикаторах AC162A, BC0802A, AC204A.

Библиотека состоит из 5 функций которые облегчают вывод на индикаторы любых сообщений. Библиотека корректно выводить как латинские так и русские символы, очень удобна для формирования строковых сообщений.
InitLCD () – функция начальной инициализации дисплея. Необходимо использовать один раз в начале программы.
ClearLCD () – очистка индикатора. Когда необходимо полностью очистить индикатор.
CursorLCD (unsigned char stroka,unsigned char stolbec), где stroka – номер строки 0-3, stolbec – 0-40. В функции нет проверки привязки к типу индикатора, по этому необходимо корректно вводить номер столбца и номер строки. Используем эту функцию, когда необходимо установить курсор для вывода сообщения с определенной позиции индикатора. Пример, CursorLCD(0,5); – вывод в самую верхнюю строку с 6 знакоместа.
StringLCD (const unsigned char *str); – вывод строки текста в положение курсора, длина текста не должна превышать 255 символов. Хотя для вывода на индикатор необходимо учитывать его длину. Необходимо понимать, что драйвер HD44780 представляет собой управления до 40 знакомест, а в зависимости от того как производитель подключил драйвер к ЖКИ матрице и сколько он таких драйверов использует в дисплее, то превышение длины строки может в одном варианте привести к потере информации, в другом, то что конец строки появиться на третей или четвертой строке дисплея.
Пример,StringLCD(“Привет мир ILLISSI!!”);

SendLCDdata (unsigned char data, unsigned char rs); – загрузка в индикатор команды или данных для вывода на индикатор. Где data – код символа или команда, rs – 0 команда, 1 – данные. Предназначена когда необходимо вывести какой-то определенный (не печатный) символ из таблицы кодировки или команду. Пример, SendLCDdata (0xEF,1); – выводит на дисплей символ градус, SendLCDdata (0b00001111,0); – команда – дисплей включен/курсор включен/мигание курсора включено.
Обновление v-1.2.
Чем меньше у функции аргументов, тем меньше она “кушает” память микроконтроллера. Поэтому в версии 1,2 добавлены две новые функции SendLCDd(unsigned char data); – загрузка данных (символа) и SendLCDc(unsigned char data); – загрузка команды.
Подключение библиотеки.
Примечание, если используются системные платы проекта Иллисси эту главу можно пропустить.
Для подключения библиотеки, в файле LCDHD44780.h необходимо внести изменения
1- указать с какой тактовой частотой работает микроконтроллер.
#define _XTAL_FREQ 64000000
2- указать какой порт используется для подключения LCD индикатора и назначение выводов
#define LCD PORTB // определение порта #define LCD_TRIS TRISB // #define E RB3 // определение E #define RW RB2 // определение RW #define RS RB1 // определение RS #define LCD_LED RC6 // определение порта управления подсветкой или для новых контроллеров используемых регистры LAT #define LCD PORTB // определение порта #define LCD_TRIS TRISB // #define E LATB3 // определение E #define RW LATB2 // определение RW #define RS LATB1 // определение RS #define LCD_LED LATC6 // определение порта управления подсветкой
Библиотека и демо пример.
Библиотека для работы с LCD индикаторами на драйвере HD44780-описание_ruБиблиотека для работы с LCD индикаторами на драйвере HD44780-v1.1
Библиотека для работы с LCD индикаторами на драйвере HD44780-v1.1 16.04 KB 1230 downloads
Компилятор HI-TECH C Compiler for PIC18 MCUs (PRO Mode) V9.80, MPLAB...Библиотека для работы с LCD индикаторами на драйвере HD44780 v 1.3 2.91 KB 1942 downloads
Версия для компилятора Microchip MPLAB XC8 C Compiler V1.12,...Демопроект
25/01/14 V1.1
Microchip MPLAB XC8 C Compiler (PRO Mode) V1.30
Copyright (C) 2014 Microchip Technology Inc.
MPLAB X IDE v2.00
Библиотека для работы с LCD индикаторами на драйвере HD44780 или KS0066U (Демопроект) 256.11 KB 1008 downloads
Библиотека для работы с LCD индикаторами на драйвере...Версия – 2.0 Microchip MPLAB XC8 C Compiler V1.30 корректная работа со всеми тактовыми частотами
Библиотека для работы с LCD индикаторами на драйвере HD44780 или KS0066U - V2.0 2.97 KB 1219 downloads
Библиотека для работы с LCD индикаторами на драйвере...HD44780 или KS0066U описание команд драйвера 760.24 KB 1032 downloads
HD44780 или KS0066U описание команд драйвера ...Версия (pic24) – 1.0 Microchip MPLAB XC16 C Compiler V1.25
Библиотека для работы с LCD индикаторами на драйвере HD44780 или KS0066U для XC16 (PIC24) 2.83 KB 608 downloads
Библиотека для работы с LCD индикаторами на драйвере...Это может быть интересно
CCP – модуль в режиме Compare на примере PIC18Views: 3266 CCP – модуль можно использовать в трех режимах: Capture – позволяет захватывать входной сигнал и определять его параметры (длительность или частоту). Дополнительно управлять внутренними модулями. Compare – позволяет …
Проект с использованием MCC часть 02Views: 2458 Когда мы запустили конфигуратор, самое главное понять, что с этим делать и как проверить, то что мы делаем работает или нет. Для начала настроим регистры конфигурации микроконтроллера и настроем …
USB K-L-line адаптерViews: 4767 USB K-L-line адаптер предназначен для связи персонального компьютера с диагностической шиной автомобиля – интерфейс ISO-9141. Этот проект предназначен для сборки недорого устройства с использованием специально для этой цели …
Униполярный шаговый двигатель – часть 2Views: 1021 В этой части только итог и версия 2.0 универсальной, которая позволяет управлять шаговым двигателем во всех трех режимах и 3.0 специальной библиотеки только для одного полушагового режима. В …
Toyota Auto Fader – Модуль включения усилителяViews: 2095 Toyota Auto Fader – Модуль включения усилителя. Часто автолюбители прибегают к замене штатного головного устройства на универсальное мультимедийное, в котором значительно расширены функциональные возможности. Если возникает желание оставить …
Acquaintance with audio-bluetooth modules F-6888 (BK3254).Views: 2416 Для проектов появилось необходимость познакомиться с недорогими модулями китайского производства, которые можно приобрести у нас в Украине и у китацев, на алиэкспрессе. Так как меня интересует не просто, …
MPLAB® Harmony – или как это просто! Часть 1.Views: 3858 Часть первая – Установка Гармонии. Музыкальная тема к статье, слушаем: В начале запуска нового проекта и выбора микроконтроллера стоит задача правильно его сконфигурировать, прежде чем перейти к реализации …
Проект с использованием MCC часть 14Views: 1077 С выводом данных на дисплей мы справились (но могу сразу сказать библиотеку графики к этой статьи пришлось доработать, поэтому в этом проекте она обновлена). У нас на текущем …
MAX7219/21 и 8х8 LED дисплеиViews: 1081 MAX7219, MAX7221 предназначены для вывода информации на 8 разрядов семисегментного индикатора, но на нем легко организовать вывод на светодиодные индикаторы 8х8. продолжение следует…. Это может быть интересно
Применение typedef, struct и unionViews: 8917 Полезные описания переменных Часто необходимо в памяти расположить последовательно разные виды данных, что бы потом можно было их использовать. Полезные ссылки Взято и переработано с сайта http://www.butovo.com/~zss/cpp/struct.htm http://cppstudio.com/post/9172/ …











