PA3040
Advanced Member level 3
Dear all My first LCD program does not work
please guide with wrong
my MCU is 16f877
LCD LMB162A
please guide with wrong
my MCU is 16f877
LCD LMB162A
Code:
status equ 0x03
trisb equ 0x86
portb equ 0x06
portd equ 0x08
trisd equ 0x88
count1 equ 0x20
count2 equ 0x21
#include <p16f877a.inc>
__CONFIG _XT_OSC & _WDT_OFF& _BODEN_OFF
start goto main
main call sys_init
call lcd
call data1
lcd bcf portd,7 ;E
bcf portd,5 ;RS
bcf portd,6 ;W
call delay_125
movlw 0x38
movwf portb
call pulseE
movlw 0x08
movwf portb
call pulseE
movlw 0x0e
movwf portb
call pulseE
movlw 0x06
movwf portb
call pulseE
movlw 0x14
movwf portb
call pulseE
movlw 0x01
movwf portb
call pulseE
return
data1 bcf portd,7
bsf portd,5
call delay_125
loop1 movlw 'D'
movwf portb
call delay_5ms
movlw 'A'
movwf portb
call delay_5ms
goto loop1
pulseE bsf portd,7 ;E
bcf portd,7
call delay_125
return
delay_125 movlw D'42'
movwf count1
loop decfsz count1,f
goto loop
return
delay_5ms movlw D'41'
movwf count2
delay call delay_125
decfsz count2,f
goto delay
return
sys_init bsf status,5
clrf trisb
clrf trisd
bcf status,5
clrf portb
clrf portd
return
end