Thanks Norm and Igor. Between your ideas I got the thing working. I am working on a project with one master and a few slaves which = communicates with each other. The idea is a type of student evaluation system where = the lecturer asks questions in a class, and the students remotely log in = their ansers. This will be fed into a pc, and will calculate whether the = students understand what they are told, as well as telling who is in the class = or not. I am doing this for a B.Tech project. If you or anybody else has = any more ideas on the subject, please send them to me. I am using infra red = at the moment, but I think I will go rf with the final project because of problems like line of sight and range. Thanks again, Mias *=20 e-mail : vanvuum@vodacom.co.za -----Original Message----- From: Igor Pokorny [mailto:igorp@applet.cz]=20 Sent: Friday, July 13, 2001 11:13 PM To: Mias Van Vuuren Subject: RE: [PIC] : USART on 16F628 Hello: If no one answered your question before there are some thoughts. There = is a small mistake in 16f628 datasheet. In block diagram of RB1/RX/DN pin = should be instead "USART data output" probably something else - it's not very = clear explanation. 1 - RX is input and TX output.... so RB1 is configured as input and RB2 is configured to be output. 2 - USART is basically developed for handling RS232 protocol. To = connect two equipments to be able to communicate you should use a "null modem = cable" ie. to connect RX with opposite TX and vice versa. 3 - To avoid such situation you are talking about you can use so called a handshake. There are two methods: a - you use full duplex ie. both = sides are able to send and receive signals and when the receiver is not able = to accept data any more it sends a special character saying to sender - = wait a moment. Such signal is sent usually when a buffer at the side of = receiving is full about 60 per cent. When the buffer is empty or almost empty = there is another special byte sends from a receiver allowing to send another = data. b - there are two more wires between sender and receiver with opposite directions. When the sender is ready to send data it activates a wire = called RTS (request to send). The receiver activates a wire called CTS (Clear = to send). After this the transmitter sends data since CTS is activated. I don't know much about your project. If the communication is one way = only, use the other wire to aknowledge an ability to receive data instead. = Another method is to compute a speed of a transmition to avoid to loose some = bytes. Don't forget to use buffer where receiving bytes will be stored when = the interrupt happens. The larger the better. Regards Igor -----Original Message----- From: Mias Van Vuuren [mailto:Vanvuum@VODACOM.CO.ZA] Sent: 11. =E8ervence 2001 13:57 Subject: [PIC] : USART on 16F628 Hello everybody I am trying to get the usart running between two 16F628's, and need = some help. 1. how do I configure portb<2:1> i.e. as inputs or outputs. 2. How do I connect the two pics, i.e. portb1 to portb2 and vice versa, or portb1 to portb1, and portb2 to portb2. 3. if I enable continuous reception, how fast do I have to move the received info from the rcreg to somewhere else, and does that mean I = need to send a byte at the transmitter, then wait a while and send another? Thanks. Mias van Vuuren e-mail : vanvuum@vodacom.co.za -- http://www.piclist.com hint: The list server can filter out subtopics (like ads or off topics) for you. See http://www.piclist.com/#topics