Let's Make Robots!

Serial communication problem

 I am trying to interface my arm9 based single board comp to the PICAXE 28X1 (starter kit board). The idea is to interface the single board computer running Linux to my PICAXE over serial and try to send commands to it over the serial line. I wrote code for my PICAXE that can listen on the serial line and transmit the same characters back. The arm board recives characters sent by the PICAXE but for some reason characters sent by the arm board are not recieved by the PICAXE.

I have tried both the programming serial port - serrxd/sertxd combination and the general i/o pins - serin/serout combination. In both cases the characters sent by PICAXE are visible at the arm9 minicom terminal but the reverse always fails. The output (serial Tx) is run through a 330 Ohms resistor on output pin 0.

I have observed that if i short the V and one of the input pins the serin is able to read some garbage character from the input pin. The program is pretty simple

using programming serial port

 ptr = 1 `Reset scratchpad pointer to 1
 `Read just 1 byte command to scatchpad address 1
 serrxd @ptr
 wait 1
 sertxd (@ptr)

using the general i/o pins

serin 7, N4800, b1
serout 0, N4800, (b1)

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
...and that's just RS-232 serial. Anyone want to talk about RS-422, or I2C, or USB, or any of the other multitude of serial hardware?
thanks a lot for the information, it really makes things much clearer for me. There is no level converter on the PICAXE board but i am not sure about the arm9 one. It could have a level converter, next thing i guess i need to do is to measure the signal voltage levels and see how i can covert them.
Ok i checked the arm9 board schematics and looks like it has a level converter - MAX3221 is one of them right? would by-passing the level converter and connecting the boards at TTL level work?
ops so many inaccuracies, sorry! :(