??? 06/26/06 18:20 Modified: 06/26/06 18:30 Read: times Msg Score: +1 +1 Good Answer/Helpful |
#119143 - Program # 2 Responding to: ???'s previous message |
ORG 00H LJMP MAIN MAIN: MOV TMOD,#20H MOV TH1,#0FAH MOV SCON,#50H SETB TR1 MOV DPTR,#TEXT AGAIN: CLR A MOVC A,@A+DPTR JZ STOP < --- check for zero at end of text MOV P1,A ACALL SEND INC DPTR SJMP AGAIN STOP: SJMP $ < --- endless loop here, stop program SEND: MOV SBUF,A BACK: JNB TI,BACK CLR TI RET RECVE: JNB RI,RECVE MOV A,SBUF CLR RI RET TEXT: DB "I AM READY",0 < -- added zero END This program sets up serial port for 4800 baud, then starts reading the message TEXT, sends the data to P1 and also serial port. The problem with this program is after you complete the message "I AM READY", there is nothing to stop the reading/display loop from continuing through the [edit]next 65525 bytes of [/edit] the ROM displaying what ever may be there. You need to add something like a zero "0" to the end of your text string, then a check for zero to exit the loop. Jon |
Topic | Author | Date |
im confused program not working | 01/01/70 00:00 | |
the upper one will never assemble! | 01/01/70 00:00 | |
bascom-8051 | 01/01/70 00:00 | |
BASIC compiler; proper link![]() | 01/01/70 00:00 | |
1st program TMOD wrong. | 01/01/70 00:00 | |
How to post code | 01/01/70 00:00 | |
as usual | 01/01/70 00:00 | |
Evidently... | 01/01/70 00:00 | |
do not judge people on their mistakes, j | 01/01/70 00:00 | |
As Usual Erik BULLIES Not Help | 01/01/70 00:00 | |
Instead of bullying ME why do'nt YOU hel | 01/01/70 00:00 | |
Charles take note | 01/01/70 00:00 | |
fait accompli | 01/01/70 00:00 | |
That's true... | 01/01/70 00:00 | |
Why would he? | 01/01/70 00:00 | |
Stop the War please | 01/01/70 00:00 | |
the crux | 01/01/70 00:00 | |
Program # 2 | 01/01/70 00:00 |