| ??? 04/12/07 21:05 Read: times |
#137075 - RxD to LCD problems |
Hi,
How do I display data received from the RxD pin onto the LCD screen? I have 2 rf transceiver relaying data from one end to another and it's working fine. When I receive the data at the uC of the receiving end. I wish to display the data onto the LCD but I cannot seem to get it working. Here's the code for the transmitting end: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ORG 0000H MOV SCON, #01000000B ; set serial port for mode 1 operation MOV TMOD, #20H ; set timer 1 to auto reload MOV TH1, #0FDH ; set reload value for 9600 baud at 11.059MHz SETB TR1 ; start timer 1 CLR TI LOOP: MOV SBUF, #55H ; transmit “55” hex out in TxD line JNB TI, $ ; wait until done CLR TI ; clear transmit flag ready to go again END XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX And here's the code for the receiving end: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ORG 00H JMP MAIN ORG 23H JMP SERIAL_ISR MAIN: MOV SCON, #50H ; 50H=01010000B MOV TMOD, #20H ; MOV TH1, #0FDH ; MOV IE, #10010000B SETB TR1 CLR RI SERIAL_ISR: JNB RI, SERIAL_ISR CLR RI MOV R2, SBUF CALL INIT_LCD CALL DATA_DISPLAY INIT_LCD: MOV A,#38H ; initialization ACALL CMD ; issue command MOV A,#0EH ; LCD ON, cursor ON ACALL CMD ; MOV A,#01H ; clear LCD ACALL CMD ; MOV A,#00H ; shift cursor right ACALL CMD ; MOV A,#80H ; cursor: line 1, position 6 ACALL CMD ; RET CMD: MOV P1,A ; issue command code CLR P3.3 ; clear RS=0, for command CLR P3.4 ; clear R/W=0, to write to LCD NOP SETB P3.5 ; set E=1 NOP NOP CLR P3.5 ; clear E=0, to generate an H-to-L pulse ACALL DELAY ; give LCD some time RET; DELAY: MOV R1,#49 ; second-loop counter LOOP2: MOV R0,#0FFH ; first-loop counter LOOP1: DJNZ R0,LOOP1 ; loop 255 times DJNZ R1,LOOP2 ; loop 49 times RET DATA_DISPLAY: MOV P1,R2 ; issue data SETB P3.3 ; set RS=1, for data CLR P3.4 ; clear R/W=0, to write to LCD NOP SETB P3.5 ; set E=1 NOP NOP CLR P3.5 ; clear E=0, to generate an H-to-L pulse ACALL DELAY ; give LCD some time END XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX For your information, i have already tested on the LCD seperately. It's working fine. Please assist. |
| Topic | Author | Date |
| RxD to LCD problems | 01/01/70 00:00 | |
| Serial ISR | 01/01/70 00:00 | |
| work needed. | 01/01/70 00:00 | |
| you need to control flow | 01/01/70 00:00 | |
| confused | 01/01/70 00:00 | |
| this is what I mean | 01/01/70 00:00 | |
| OK | 01/01/70 00:00 | |
| yes | 01/01/70 00:00 | |
| Non-useful Serial ISR | 01/01/70 00:00 | |
| AND it's stuck | 01/01/70 00:00 | |
| thanks | 01/01/70 00:00 | |
| I was going for optimization. | 01/01/70 00:00 | |
| It's functioning | 01/01/70 00:00 | |
| now stay consistent | 01/01/70 00:00 | |
| Terminating code? | 01/01/70 00:00 | |
| . | 01/01/70 00:00 | |
| correct terminology | 01/01/70 00:00 | |
| Missing the point | 01/01/70 00:00 | |
| i get it now | 01/01/70 00:00 | |
| Most, but not all | 01/01/70 00:00 | |
| why on earth | 01/01/70 00:00 | |
| if it\'s almost correct, it\'s still wrong :-) | 01/01/70 00:00 | |
| ok | 01/01/70 00:00 | |
| Not R6 and R7 | 01/01/70 00:00 | |
| well it happend again | 01/01/70 00:00 | |
| Q.E.D. | 01/01/70 00:00 | |
| One further comment is needed | 01/01/70 00:00 | |
| Hey | 01/01/70 00:00 | |
| Dangerous recommendation | 01/01/70 00:00 | |
| good point | 01/01/70 00:00 | |
they all do | 01/01/70 00:00 | |
| it 'trust' the same as 'experiment'? | 01/01/70 00:00 | |
| more issues | 01/01/70 00:00 | |
| Joe, please read this | 01/01/70 00:00 |



