Microchip makes a line of cheap little embedded processors which they call PICs. PICs are kind of the bottom of the bucket of embedded processors, which is really an advantage. For about $2 you can get an 8-pin PIC that can barely compute in any meaningful fashion...perfect for embedding into projects in which you would otherwise not expect to find a processor. That said, so far I've been using the PIC18F1320, which is a relatively advanced PIC. For example, its instruction set makes it convenient to keep a stack!
But the point is that a PIC needs no external logic, no oscillator circuit, no RAM.
I like to fly radio control airplanes (when I have the time and all my ducks are lined up), and I have a simple 4-channel radio. I noticed that it has a buddy box connector, which is to allow you to slave one radio from another. I talked to my dad about this and he explained the protocol used on this connector, and it is indeed very simple. Finally I built a model where I really wanted differential, and another where having greater control over elevon mixing would please me. So I decided to upgrade to a fancy expensive computer radio!
So I built this little PIC TX box, which hooks up to the
buddy connector. In normal operation, the radio transmits the 4
channels representing the stick positions.
When buddy mode is triggered, it outputs the
4 channels as mixed by this PIC TX. If you have interest in building
one of these yourself, or looking at my source code, email me!
First, here is a picture of it in its closed box, so you can see it
is durable and can be thrown in with a big pile of radio equipment to
take to the flying field. The box came from a motor called the MAGNUM
Now, here it is with the cover off.
At the top are 5 buttons that are like "soft-keys," the corresponding function of these buttons is displayed along the top of the screen. At the upper-right is the ICSP (in-circuit serial programmer) connector for upgrading the firmware. At the upper-left you can also see the contrast adjustment trim pot. To the left of that is all of the components for this. A 7805, power supply filter capacitors, and some resistors and a transistor for interfacing with the buddy connector. The PIC itself is under the LCD.
Here it is connected to the radio:
And here is a close-up of the screen, while it is connected to the
Sorry for my poor quality camera. Along the top you can see the soft buttons select 4 mixing controls: In: scaling and centering applied first, Exp: exponential, Mix: cross-channel mixing (or even remapping), Dif: differential, -->: more options. Along the bottom is a neat display. "In" shows 4 bar graphs for the stick positions (you can see that stick 3 is all the way down, that is throttle). "Out" shows the output channel positions sent to the aircraft (no effects are configured so it is the same as In).
I wanted a thermal logger so I could better understand the effects of various changes I make to the airflow and other aspects of house heating. With this unit, I could build a thermostat as well.
Here it is:
Along the top, it is two buttons ("select" and "next"...I mounted the display upside down, so the text is upside down), then a 5-bit shift register I added as a hack when I found out the LCD's 4-bit control mode didn't work (I had to run it in 8-bit mode, so I had to come up with 4 more I/O pins in a crunch). Then there is the 24x1 LCD, which was very cheap. Below that is an IC socket with a 1024kbit serial flash EEPROM and some pull-up/down resistors and a capacitor for the thermal sensor. Along the bottom is the PIC18F1320, then a 7805 with filter capacitors, then an ICSP connector. The tan cable terminates in the thermistor. The black and red cable terminates in that wall wart.
See the test pattern on the LCD? ". . . . . ." Very clever!
The bottom side:
Note the liberal use of hot melt glue for physical assembly and to keep the solder joints from getting fubared. Also note the hackish addition of a daughter board for the 5-bit shift register! The picture is not very good, but the IC sockets are all wirewrap for super convenience.