??? 12/15/06 16:41 Read: times |
#129557 - LCD+error Responding to: ???'s previous message |
I don't make any time optimization, if i send to LCD for example 'a', i will read by LCD M or other character, i try to make a connection but is not some logic between what i send and what i see by LCD.I write the program after i read the LCD datasheet and i follow the diagram. RS BIT P3.2 ; RS=0 Send commands RS=1 Send data RW BIT P3.3 ; RW=0->write to LCD ,RW=1 read LCD EN BIT P3.4 ; Enable Db0 BIT P1.0 Db1 BIT P1.1 Db2 BIT P1.2 Db3 BIT P1.3 Db4 BIT P1.4 Db5 BIT P1.5 Db6 BIT P1.6 Db7 BIT P1.7 LCDdata EQU P1 ;***************************************** ACALL ZERO ; fill P1 and P3 with 0 ACALL TIMER_75MS ; wait 75 milliseconds MOV LCDdata,#38h ; set display on, two lines ACALL ENABLE ; send command to LCD ACALL TIMER_75MS ; wait again MOV LCDdata,#0Fh ; set display on, cursor on, blink on ACALL ENABLE ; enable command ACALL TIMER_1MS ; wait MOV LCDdata,#01h ; display clear ACALL ENABLE ; enable ACALL TIMER_30MS MOV LCDdata,06h ; entry mod set = increment mode ACALL ENABLE ACALL TIMER_30MS ; end of initialization SETB RS ; I set the bus for data, from now i ;can send DATA ACALL ENABLE ACALL TIMER_30MS MOV LCDdata,'a' ACALL ENABLE ACALL TIMER_30MS MOV LCDdata,'A' ACALL ENABLE LOOP: NOP AJMP LOOP END |
Topic | Author | Date |
LCD+error | 01/01/70 00:00 | |
sure, about what | 01/01/70 00:00 | |
LCD+error | 01/01/70 00:00 | |
Initialization | 01/01/70 00:00 | |
Thank you | 01/01/70 00:00 | |
Post all of your display code | 01/01/70 00:00 | |
Oops... try this | 01/01/70 00:00 | |
LCD+error | 01/01/70 00:00 | |
usually it's the program, not the hardware | 01/01/70 00:00 | |
99% SOLVED | 01/01/70 00:00 | |
Are you still... | 01/01/70 00:00 | |
strange coding | 01/01/70 00:00 | |
Sorry for mistake | 01/01/70 00:00 | |
fortunately happy end![]() | 01/01/70 00:00 |