Interfacing 8051 With LCD
Interfacing 8051 With LCD
DELAY:
MOV TMOD,#01H
MOV TH0,#0FFH
MOV TL0,#06H
SETB TR0
JNB TF0,$
CLR TF0
RET
END
REPEAT:
MOV TL0, #00
MOV TH0, #00
SETB TR0
ACALL DELAY
CLR TR0
MOV A, TL0
MOV P2, A
MOV A, TH0
MOV P1,A
SJMP REPEAT
DELAY:
MOV R1, #28
AGAIN: MOV TH1,#00H
MOV TL1,#00H
SETB TR1
JNB TF1,$
CLR TF1
CLR TR1
DJNZ R1, AGAIN
RET
END
PWM code, duty cycle changes after every 1 second
MOV DPTR,#TABLE
MOV TMOD,#02
SETB TR0
AGAIN:
MOV R0,#0
CALL NEXT_DC
SJMP AGAIN
NEXT_DC:
/*************************************/
MOV R1,#16
THERE2:
MOV R2,#250
THERE:
MOV A,R0
MOVC A,@A+DPTR
MOV TH0,A
MOV TL0,A
SETB P1.0
JNB TF0,$
CLR TF0
INC R0
MOV A,R0
MOVC A,@A+DPTR
MOV TH0,A
MOV TL0,A
CLR P1.0
JNB TF0,$
CLR TF0
DEC R0
DJNZ R2,THERE
DJNZ R1,THERE2
INC R0
INC R0
CJNE R0,#10,NEXT_DC
RET
/************************************/
END