' ---------------------[Заголовок]---------------------------------------------------- ' ' Файл......proj07pro.bas ' Формат....PicBasic Pro ' Цель......PIC -> ЖКИ с (4-битным интерфейсом) (на микроконтроллере PIC16F876 и ' ЖКИ-модуле, отображающем 2 строки по 16 символов в каждой) ' Автор.....Чак Хелибайк ' Создан....19 ноября 1999 года ' Изменен... ' ' ' ---------------------[Описание программы]----------------------------------------------- ' ' Подключение PIC16F876 к выводам ЖКИ-модуля: ' ' PIC ЖКИ Другие подключения ' --- --- ------------------ ' B4 ЖКИ.11 ' B5 ЖКИ.12 ' B6 ЖКИ.13 ' B7 ЖКИ.14 ' B3 ЖКИ.4 ' B0 ЖКИ.6 ' OSC1 Резонатор 4 МГц ' OSC2 Резонатор 4 МГц ' MCLR VDD через резистор сопротивлением в 1 кОм ' VDD +5 В ' VSS Земля ' ' ---------------------[Список версий программы]------------------------------------------ ' ' ' ' ---------------------[Подключаемые файлы и настройка режимов]--------------------------- Define LOADER_USED 1 ' Эта строка нужна только если для прошивки ' PIC-микроконтроллера ' используется системный загрузчик DEFINE LCD_DREG PORTB ' Задать порт PIC-микроконтроллера для передачи ' данных на ЖКИ DEFINE LCD_DBIT 4 ' Задать первый вывод порта PORTB, который будет ' подключен к выводу DB4 ЖКИ DEFINE LCD_RSREG PORTB ' Задать порт PIC-микроконтроллера, который будет ' выдавать сигнал RS на ЖКИ DEFINE LCD_RSBIT 3 ' Задать вывод порта PORTB, с которого будет ' выдаваться сигнал RS на ЖКИ DEFINE LCD_EREG PORTB ' Задать порт PIC-микроконтроллера, который будет ' выдавать сигнал E на ЖКИ DEFINE LCD_EBIT 0 ' Задать вывод порта PORTB, с которого будет ' выдаваться сигнал E на ЖКИ DEFINE LCD_BITS 4 ' Задать 4-битный режим обмена информацией для ЖКИ DEFINE LCD_LINES 2 ' Задать ЖКИ режим с 2 строками отображения DEFINE LCD_COMMANDUS 2000 ' Задать паузу между передачей команд на ЖКИ DEFINE LCD_DATAUS 50 ' Задать паузу между передачей данных на ЖКИ ' ---------------------[Определение констант]--------------------------------------------- ' ' ---------------------[Определение переменных]------------------------------------------- ' ' ---------------------[Процедура инициализации]------------------------------------------ ' ' ---------------------[Основная програма]------------------------------------------------ ' Start: lcdout $fe, 1 ' Очистить экран lcdout $fe, 2 ' Переместить курсор ЖКИ в начало первой строки ' **********************Вывести надпись «Hello World» в первой строке ЖКИ***************** LCDOUT "Hello World" ' Передать сообщение “Hello World” на ЖКИ Pause 1000 ' Ждать 1 секунду, чтобы глаз успел заметить Goto Start ' Вернуться в начало программы и начать все снова