RF is just way too cool not to use in your designs. But if youβre a newbie like me it is difficult to successfully build solid RF transmitters and receivers. When I started out I didnβt realize that the larger breadboard I was working off of was causing a lot of the signal deviance because the metal traces on the breadboard worked like small capacitors and changed my circuit dynamics.
So after much research I found the Reynolds Electronics RWS and TWS 434 RX/TX pair. I looked into a similar product by MING Microsystems and Radioshack but the Reynolds were superior in performance, cost and ease of use. So with that and two PIC 16F84βs I started working on my serial RF link from my control interface (Joystick) to my robot. You can find these parts at http://www.rentron.com/rf_remote_control.htm
I found that the TX/RX pair and the serial communication built into the PICBasic programming language for my PICβs worked very well together. I wasnβt sure how well the timing would work using Asynchronous Serial communication at 9600 baud, I expected some problems at this higher speed but in testing found very little error. The actual programming couldnβt be easier since it is written in Basic and uses premade serial communication routines. I simply read the position of the Potentiometer in the joystick using the PICBasic βPOTβ command and put the result in memory location βB0β. From there using the βSEROUTβ command I sent the contents of βB0β to pin 6 of the TWS 434 transmitter.
On the receiver end I use the βSERINβ command and read the incoming data from pin 3 on the RWS 434 and put the result in βB0β. The value in βB0β directly correlates to joystick position, above 150 is right, below 106 is left, and in between is center. By using these numbers I can define a deadzone.
For more detail: RF Modem Robotics Project using PIC16F84 microcontroller