Библиотека Flex LCD
 

    Библиотека предназначена для подключения символьных ЖК индикаторов на контроллере HD44780 к микроконтроллерам с использованием 4-х битной шины данных. Основное отличие от подобных программных модулей заключается в том, что Flex LCD позволяет использовать пины и порты в совершенно произвольном порядке. Код полностью написан на языке Си под компилятор CVAVR и поэтому может быть портирован под другие компиляторы с минимальными доработками. Назначение пинов портов производится в самом начале через дефайны(#define). Один из пользователей библиотеки добавил перекодировку русских символов в таблицу кодов ЖКИ. Благодаря этому в компиляторе можно сразу писать русскими буквами. Пользовательские функции по названию совместимы со встроенной библиотекой CodeVision(та которая подключается файлом lcd.h).

    Установка параметров ЖКИ:
#define lcd_max_x 16//количество символов в строке
#define lcd_max_y 2 //количество строк
Т.е. в данном случае по умолчанию используется ЖКИ 16х2.

    Описание пользовательских функций(API):
void lcd_init(void)
Запускает процедуру инициализации ЖКИ и устанавливает 4-битный режим обмена. Обычно вызывается один раз при загрузке контроллера.

void lcd_clear(void)
Очистка ЖКИ. В отличие от библиотеки CV не осуществляет сброс на нулевую позицию(0,0) печати. Поэтому для идентичности результата после нее следует вызывать lcd_gotoxy(0,0).

void lcd_gotoxy(unsigned char x, unsigned char y)
Переводит курсор на новую позицию x,y. x=символов в строке, y=число строк. Счет начинается с нуля.

void lcd_putchar(char chr)
Печатает символ с заданной позиции. После печати позиция следующего символа автоматически сдвигается вправо, либо осуществляется переход на начало новой строки если текущая строка заполнена.

void lcd_puts(char *str)
Выводит строку из SRAM начиная с текщей позиции.

void lcd_putsf(char flash *str)
Выводит строку из FLASH с текущей позиции.

void define_char(flash unsigned char *pc, unsigned char char_code)
Назначает новые пользовательские символы. Осуществляет копирование изображения нового символа из FLASH контроллера(указатель на массив *pc) в RAM ЖКИ и назначает ему код char_code. Ввиду особенностей контроллера ЖКИ 44780 переназначены могут быть только первые восемь символов(адреса 0...7). В результате этой операции позиция курсора изменяется, поэтому после переназначения всех символов следует вызвать функцию lcd_gotoxy(0,0).

Скачать:
Библиотека flex_lcd.c
Пример использования
 
 

На главную

Hosted by uCoz