RS232 is +12V and -12V, where -12V corresponds to "1" and
+12V corresponds to "0". In 5 volt logic, +5V corresponds
to "1" and 0V corresponds to "0". Most people use a chip
such as the Maxim MAX232 to convert between RS-232 signal
levels and regular 5V logic signal levels.
When RS232 is being used to send asynchronous serial data,
the line idles at logic "1" (i.e. -12V).
There is much written about RS-232 in the wikipedia article:
But valid sigal levels start at around 3V (as the Wikipedia article points
out) - it is quite possible to transmit and receive RS232 with a PIC - I
have a servo controller on a 16F84 that has a simple serial interface.
I have yet to find a serial device it won't work with.
(and yes, negative swings are caught by the built-in diodes on the ports)
What you say is correct, but if you claiming to adhere to
RS232, your transmitters need to start with +/- 12V. Less
than +/- 12V at the transmitter puts you into "RS232 compatible"
A common deviation from the standard was to drive the
signals at a reduced voltage: the standard requires
the transmitter to use +12V and -12V, but requires the
receiver to distinguish voltages as low as +3V and -3V.
Some manufacturers therefore built transmitters that
supplied +5V and -5V and labeled them as "RS-232 compatible."
Your practice of using the built-in diodes on the parts to
clip negative voltages is not recommended. The spec. sheet
for PIC's specifies a voltage range of -.3V to Vdd+.3V.
-12V is way below the specified voltage range. You are
welcome to continue the practice, but other people who
want to operate their parts within published specifications
are encouraged use alternative circuits.
If the MAX232 is too expensive, there is clever alternative
circuit that I first saw implemented by the Basic Stamp II.
The following schematic:
implements the circuit. It is pretty clever in that it
uses the host device to provide the negative voltage. It is
only three transisters (Q1-Q3) and some resistors (R2-R9).
N15 is the DB9B connector. If you do not need the DTR signal,
one of the transisters (Q1) and 4 resistor (R1-R4) can be
ARM competes with MicroChip and Zilog .
But all those who own PIC and Zilog are
hooked because of the software .
They can't switch to ARM ( 10 times more
power and abilities , at same cost )
Because of their software .
ARM burns less power . Its speed*power
product is mch higher . Thus slow its clock
and accomplish EXACTLY same task , at
much lower power .
At 20 microamps , ARM does same
task as PIC at 1 mil amp .
ARM has a 8KB loader .
I have lots of work to do , at first its all
software , then hook hardware to
STR912FW44 or STR710FZ2
Wholesale is about $8 ...
I will hook a tiny square Lit-Ion battery
and make my own state machine and
crude key switches , and pop this in my pocket
and develope my software , on the way to the
There is no faster and lower cost method .
PIC and Zilog and Rabbit will cost you much more
and have too many excuses ...
I dont sell , i am a hobbiest , i have 12 NDS Lites
and 6 EVB's ( i rip the Headers and CPU's ) ,
10 fast BW CCD cameras and RF bridges and homemade "PDA" to DIY ,
i will DIY ,
i dont need to be detoured from my goals with :
PIC , Linux , C/C++ , "DevTools" ,
nor compilers , nor assemblers
, nor other broken promises .
I dont sell , so when i get some low level
s/w DIY's , i'll give it free , but only for ARM .
Everyone is doin it wrong , today ..
Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here.
All logos and trade names are the property of their respective owners.