Разделы инструкций

В сети

Пользователей: 122
Из них просматривают:
Аналоги: 48. Видео: 1. Даташиты: 14. Инструкции: 4. Новости: 23. Остальное: 11. Программы: 2. Производители: 1. Профиль пользователя: 2. Торрент: 2. Форум: 12. Чат: 2.
Участников: 6
Гостей: 116

KT315 , alex01981 , Google , Kosmonavt , Яндекс , Zyablik , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

Оглавление

Функции для работы с LCD

Рассмотрим функции для работы с наиболее широко распространёнными ЖКИ-контроллерами по четырёхбитному интерфейсу с использованием определенных программистом выводов. Схема подключения контроллера ЖКИ к PIC представлена на рисунке 24.

 

Схема подключения контроллера ЖКИ к PIC

 Рис. 24. Схема подключения ЖКИ

 

Перед тем как вызывать библиотечные функции, следует убедиться, что используемый для работы с ЖКИ порт настроен на вывод. Для работы с клавиатурой используются библиотечные функции Lcd_Custom_Config, Lcd_Custom_Out, Lcd_Custom_Out_Cp, Lcd_Custom_Chr, Lcd_Custom_Chr_Cp и Lcd_Custom_Cmd. Описание этих функций представлено в таблицах 7 -13 соответственно.

 

Таблица 7. Описание функции Lcd_Custom_Config

Прототипvoid Lcd_Custom_Config(char * data_port, char D7, char D6, char D5, char D4, char* ctrl_port, char RS, char WR, char EN)
Возвращаемое значениеНет
ОписаниеИнициализирует порт данных (data_port) и управления (controLport) в соответствии с заданным назначением разрядов
ТребованияНет
Пример                         
Lcd_Custom_Config(&P0RTD,3(2,1(0,&PORTB,2,3,4)

 

Таблица 8. Описание функции Lcd_Custom_Out

Прототипvoid Lcd_Custom_Out(char row, char col, char "text)
Возвращаемое значениеНет
ОписаниеВыводит на LCD text в заданную строку и заданную позицию (аргументы row и col). В качестве text может использоваться как строковая переменная, так и литерал
ТребованияПорт, к которому подключен контроллер ЖКИ, должен быть проинициализирован функцией Lcd_Custom_Config
Пример                         
Вывод «Hello!» на LCD 8 строку 1, с позиции 3: Lcd_Custom_Out(1, 3, "Hello!");

 

Таблица 9. Описание функции Lcd_Custom_Out_Cp

Прототипvoid Lcd_Custom_Out_Cp(char "text)
Возвращаемое значениеНет
ОписаниеВыводит text на ЖКИ, начиная с текущей позиции курсора. В качестве text может использоваться как строковая переменная, так и литерал
ТребованияПорт, к которому подключен контроллер ЖКИ, должен быть проинициализирован функцией Lcd_Custom_Config
Пример                         
Вывод «Here!» с текущей позиции курсора: Lcd_Custom_Out_Cp( Here!")

 

Таблица 10. Описание функции Lcd_Custom_Chr

Прототипvoid Lcd_Custom_Chr(char row, char col, char character)
Возвращаемое значениеНет
ОписаниеВывод символа character на ЖКИ в заданную строку и позицию (аргументы row и col). В качестве character может использоваться как переменная, так и литерал
ТребованияПорт, к которому подключен контроллер LCD, должен быть проинициализирован функцией Lcd_Custom_Config
Пример                         
Вывод «I» на ЖКИ в строку 2, позицию 3: Lcd_Custom_Chr(2, 3, 'i')

 

 

Таблица 11. Описание функции Lcd_Custom_Chr_Cp

Прототипvoid Lcd_Custom_Chr_Cp(char character)
Возвращаемое значениеНет
ОписаниеВыводит символ character на ЖКИ в текущую позицию курсора. В качестве character может использоваться как переменная, так и литерал
ТребованияПорт, к которому подключен контроллер ЖКИ, должен быть проинициализирован функцией Lcd_Custom_Config
Пример                         
Вывод «е» в текущую позицию: Lcd_Custom_Chr_Cp('e')

 

Таблица 12. Описание функции Lcd_Custom_Cmd

Прототипvoid Lcd_Custom_Cmd(char command)
Возвращаемое значениеНет
ОписаниеПосылает команду command на ЖКИ. Здесь можно использовать одну из предопределённых команд. Список всех команд приведён ниже
ТребованияПоот, к которому подключен контроллер ЖКИ, должен быть проинициализирован функцией Lcd_Custom_Config
Пример                         
Очистка LCD: Lcd_Custom_Cmd(LCD_CLEAR)

 

Таблица 13. Список команд для управления LCD

Команда LCDНазначение
LCD FIRST ROWПеремещение курсора в 1-ю строку
LCD_SECOND_ROWПеремещение курсора во 2-ю строку
LCD_THIRD_ROWПеремещение курсора в 3-ю строку
LCD_FOURTH_ROWПеремещение курсора в 4-ю строку
LCD_CLEARСтирание дисплея
LCD_RETURN_HOMEВозврат курсора в исходное положение и возврат сдвинутого изображения дисплея в первоначальное состояние. Данные в памяти контроллера дисплея не затрагиваются
LCD_CURSOR_OFFВыключение курсора
LCD_UNDERLINE_ONВключение курсора «подчёркивание»
LCD_BLINK_CURSOR_ONВключение мерцания курсора
LCD_MOVE_CURSOR_LEFTСдвиг курсора влево без изменения данных в памяти контроллера дисплея
LCD_MOVE_CURSOR_RIGHTСдвиг курсора вправо без изменения данных в памяти контроллера дисплея
LCD_TURN_ONВключение дисплея
LCD_TURN_OFFВыключение дисплея
LCD_SHIFT_LEFTСдвиг экрана дисплея влево без изменения памяти контроллера дисплея
LCD_SHIFT_RIGHTСдвиг экрана дисплея вправо без изменения памяти контроллера дисплея

 


Следующий программный код демонстрирует пример использования описанных функций и позволяет отобразить на дисплее строку mikroElektronika.

 

char *text = "mikroElektronika" ;
void main() {
TRISD = 0 ; // PORTD на выход
// Инициализировать LCD на порт PORTD
Lcd_Custom_Conf ig(&PORTD,3,5,4,6,&PORTD,1,0,2);
Lcd_Custom_Cmd(Lcd_CURSOR_OFF); // Выключить LCD
Lcd_Custom_Out( 1 , 1 , text); //Вывести текст на LCD }

 

7
<< Меню >>  
Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити

Разное

Если "ревёт" один из дросселей резонансного стабилизатора, забейте деревянный клин между его катушками.

Интересно

Наличие высокого напряжения на присоске можно проверить отверткой, соединенной с корпусом через резистор 3-5 МОм

Похожие инструкции