| ??? 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 |



