| ??? 01/29/00 19:17 Read: times |
#1348 - RE: 2*16 LCD Help rqs. |
I think you can find the datasheet of any LCD modal because most of the setting are same.
here is an example, hope it can help you connect a port,say P0 to D0-D7 of LCD and connect three control pins rs,rw,en to any 3 pins of 8052 rs bit p1.0 rw bit p1.1 en bit p1.2 org 0h main: lcall datainterface lcall displayon lcall clear mov dptr,#msg0 lcall writestr loop: ljmp main datainterface: mov a,#00111000b ; 8-bit data, 2 line display, 5 x 7 dots lcall writecmd ret clear: mov a,#00000001b ;clear display lcall writecmd ret displayon: mov a,#00001111b ; display on, cursor on, blinking off lcall writecmd ret wait_till_not_busy: push a busy: clr rs ; instruction signal setb rw ; read mode mov p0,#11111111b setb en mov a,p0 ; input data from LCD clr en jb acc.7,busy ;busy flag = 1? lcall delay pop a ret delay: mov r6,#5 outer: mov r7,#150 inner: djnz r7,inner djnz r6,outer ret writechar:lcall wait_till_not_busy setb rs ; data signal clr rw ; write mode setb en mov p0,a ; output to LCD clr en ret writestr: mov r1,#0 next: mov a,r1 movc a,@a+dptr jz exit lcall writechar inc r1 mov a,r1 cjne a,#10h,cont mov a,#11000000b lcall writecmd ljmp next cont: cjne a,#1fh,next mov a,#0h lcall writecmd ljmp next exit: ret writecmd: lcall wait_till_not_busy clr rs ; instruction signal clr rw ; write mode setb en mov p0,a ; output to LCD clr en ret msg0: str "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890" db 0 |
| Topic | Author | Date |
| 2*16 LCD Help rqs. | 01/01/70 00:00 | |
| RE: 2*16 LCD Help rqs. | 01/01/70 00:00 | |
| RE: 2*16 LCD Help rqs. | 01/01/70 00:00 | |
RE: 2*16 LCD configuration pin | 01/01/70 00:00 |



