Парни! Скажите пожалуйста, эта прога должна работать с 16f873 и 16*2 LCD . @ device pic16f873, HS_osc, wdt_off, wrt_off, lvp_off, pwrt_off, protect_off
define OSC 4
;-----------Íàñòðîéêè ïîäêëþ÷åíèÿ ÆÊÈ--------------------------
DEFINE LCD_DREG PORTB ;Ïîðò äàííûõ ÆÊÈ
DEFINE LCD_DBIT 4 ; Áèò äàííûõ ÆÊÈ
DEFINE LCD_EREG PORTb ; Óïðàâëåíèå ëèíèåé E
DEFINE LCD_EBIT 0 ; Óïðàâëåíèå ëèíèåé E
DEFINE LCD_RSREG PORTb ; Óïðàâëåíèå ëèíèåé RS
DEFINE LCD_RSBIT 3 ; Óïðàâëåíèå ëèíèåé RS
DEFINE LCD_BITS 4 ;Ðàçðÿäíîñòü øèíû äàííûõ
DEFINE LCD_COMMANDUS 2000 ; Çàäåðæêà ïåðåä ïîñûëêîé êîìàíäû
DEFINE LCD_DATAUS 50 ; Çàäåðæêà ïåðåä ïîñûëêîé äàííûõ
DEFINE LCD_LINES 2 ; Êîëè÷åñòâî ñòðîê ÆÊÈ
;----------------- Ðåãèñòðû ñïåöèàëüíîãî íàçíà÷åíèÿ-----------------
;-------------------------------- Íà÷àëî ----------------------------
trisc = %00000000
trisb = %00000000
trisd = %00000000
;------------------------ Ãëàâíàÿ ïðîãðàììà -----------------------
pause 2000
MainProgram:
Lcdout $fe, 1 ' Clear LCD screen
Lcdout "World"
Pause 500 ' Wait .5 second
portd.0=1
pause 1000
portd.0=0
pause 1000
Goto MainProgram ; Âîçâðàò íà íà÷àëî îñíîâíîé ïðîãðàììû
Соединял так:
RB4 LCD.11
RB5 LCD.12
RB6 LCD.13
RB7 LCD.14
RB3 LCD.4
RB0 LCD.6
OSC1 Resonator - 4 mhz
OSC2 Resonator - 4 Mhz
MCLR Vdd via 1k resistor
Vdd 5v
Vss Gnd
А то я уже второй LCD кинул, а радости не вижу. Тут уже подобный вопрос обсуждался. Я только поправил прогу под себя, но видемо неудачно.
Все! Разобрался. Проблема была в железе. Прога вверху 100% рабочая.