??? 09/03/05 08:39 Modified: 09/03/05 08:40 Read: times |
#100516 - Next step Responding to: ???'s previous message |
You next step should be to start a simple serial IO project - just serial IO, no PWM, nothing else.
(probably also start a new thread - with a reference back to this one). Start with something really simple that just configures the UART (baud rate, etc) and sends a simple message such as "Hello, World!" - don't try interrupts yet, just send 1 character, wait for TI, send the next character, etc... I wouldn't even try to do it in a loop at this stage. Run this on a simulator, and you should see the message come up in the simulated serial output. Connect this to a PC and hypoterminal (or whatever) - if you see the message correctly, you know that you have the UART configured correctly, and all your hardware & cables are working. Once this is working, be sure to save this project so that you can go back to it if everything goes terribly wrong later... Now, take a look at that interrupt-driven serial code I found earlier (or some other example, if you prefer): http://www.8052.com/forum/read.phtml?id=100452 Adapt your initial project to use this interrupt-driven interface to send the message; Simulate; Test in-target. Again, save this project once it's working. Now, try making it wait for a receied character (via the interrupt stuff) before sending the message. Simulate; Test in-target; Save the project. Now you could try a crude performance test: Have your main loop wait for received characters(via the interrupt stuff); each time it receives a character, have it transmit that character straight back again (also via the interrupt stuff). Now, anything you type at hypoterminal you should see echoed straight back. Take you receive & transmit wires, and connect them to separate COM: ports on your PC (or separate PCs, if you don't have multiple COM: ports): COM1: Tx ---------------> 8051 Rx | | V your code | | V COM2: Rx <---------------- 8051 TxNow, anything you type at the hypoterminal on COM1: (say) should appear on the hypoterminal on COM2:. Type suffifient characters to check that your buffer wrap-around is working. Now you can test the performance by sending a file from COM1: to COM2:, then use the PC to compare the two files - you don't want to see any missing or corrupted bytes! |
Topic | Author | Date |
Laser system serial port com | 01/01/70 00:00 | |
MHz? | 01/01/70 00:00 | |
11.059 | 01/01/70 00:00 | |
also... | 01/01/70 00:00 | |
Even more... anybody got any ideas? | 01/01/70 00:00 | |
Values in | 01/01/70 00:00 | |
text??? | 01/01/70 00:00 | |
thanks so far | 01/01/70 00:00 | |
Back to basics | 01/01/70 00:00 | |
Oh, come on... | 01/01/70 00:00 | |
"Program" or "Code?" | 01/01/70 00:00 | |
Oh dear... | 01/01/70 00:00 | |
Fundamental Comms Problem | 01/01/70 00:00 | |
Serial Code - Doomed! | 01/01/70 00:00 | |
this is getting ridiculous | 01/01/70 00:00 | |
learning process | 01/01/70 00:00 | |
oh well | 01/01/70 00:00 | |
agreed - waiting for the real stuff :-) | 01/01/70 00:00 | |
cart before horse | 01/01/70 00:00 | |
weekend approaching? | 01/01/70 00:00 | |
sure we can, but then why do you say the | 01/01/70 00:00 | |
this belong in the chat, but since it is | 01/01/70 00:00 | |
hrm | 01/01/70 00:00 | |
make an effort do not "whip up some code | 01/01/70 00:00 | |
facts & emotions | 01/01/70 00:00 | |
k | 01/01/70 00:00 | |
Good luck with the 430's | 01/01/70 00:00 | |
int | 01/01/70 00:00 | |
Slight misconception. | 01/01/70 00:00 | |
Next step | 01/01/70 00:00 | |
-1 provocative troll | 01/01/70 00:00 | |
read | 01/01/70 00:00 | |
which derivative? | 01/01/70 00:00 | |
dallas | 01/01/70 00:00 | |
DS89C420 | 01/01/70 00:00 | |
system im using | 01/01/70 00:00 | |
int | 01/01/70 00:00 | |
Process | 01/01/70 00:00 | |
Why do you persist | 01/01/70 00:00 | |
2 byte protocol | 01/01/70 00:00 | |
Intersting, but... | 01/01/70 00:00 | |
very interesting | 01/01/70 00:00 | |
How to proceed | 01/01/70 00:00 | |
a problem and a suggestion | 01/01/70 00:00 | |
Problems many & varied | 01/01/70 00:00 | |
Begin at the beginning! | 01/01/70 00:00 | |
started again | 01/01/70 00:00 | |
Re: started again | 01/01/70 00:00 | |
ah crap. | 01/01/70 00:00 | |
ah my eyes! | 01/01/70 00:00 | |
continued.. | 01/01/70 00:00 | |
Second UART | 01/01/70 00:00 | |
int vector | 01/01/70 00:00 | |
Look at the datasheet ! | 01/01/70 00:00 | |
yup | 01/01/70 00:00 | |
serial port 1 interrupt vector | 01/01/70 00:00 | |
okay | 01/01/70 00:00 | |
Still not OK | 01/01/70 00:00 | |
ISR reset | 01/01/70 00:00 | |
take rest | 01/01/70 00:00 | |
rest........ | 01/01/70 00:00 | |
STOP | 01/01/70 00:00 | |
just to be sure... | 01/01/70 00:00 | |
man int triggering | 01/01/70 00:00 | |
Craig, please remove this thread this is | 01/01/70 00:00 | |
Request | 01/01/70 00:00 | |
num | 01/01/70 00:00 | |
again | 01/01/70 00:00 | |
Thanks ALOT Jan !! | 01/01/70 00:00 | |
works, so now do the reading | 01/01/70 00:00 | |
serial port int | 01/01/70 00:00 | |
transmit | 01/01/70 00:00 | |
transmit | 01/01/70 00:00 | |
Oh dear | 01/01/70 00:00 | |
I dont give up. | 01/01/70 00:00 | |
er | 01/01/70 00:00 | |
brains? | 01/01/70 00:00 | |
Or lack thereof... | 01/01/70 00:00 | |
Persistance is a virtue | 01/01/70 00:00 | |
basics | 01/01/70 00:00 | |
updated | 01/01/70 00:00 | |
Solve i problem at a time | 01/01/70 00:00 | |
one more problem knocked down | 01/01/70 00:00 | |
PWM spoiled by Rx | 01/01/70 00:00 | |
lines![]() | 01/01/70 00:00 |