|
|
|
![]() |
iRX 2.2 Prototyping BoardThe iRX 2.2 board is a simple but malleable prototyping board for PIC based projects. It features the EEPROM programmable PIC16F84A, an RS232 port and infrared I/O. All of the subsequent projects presume that you have an iRX board -- this is how to make one (or 100). |
![]() |
Getting StartedTo create the PIC based projects described below, you will need a PIC C compiler, a PIC programmer and development environment, and one or more iRX boards. This section describes how to together all the pieces to compile and run a simple program on an iRX board. |
That *#$& RJ11 to DB9 ConverterWhich lines to hook to which for RS232 transmission. Assumes you are using part #046-0003 from Digikey. Thanks to Ben Resner for putting this together. |
|
|
A note on
the following code: |
The code in the next four sections was all written for the PIC16F84, using a 10 MHz clock. If you are using this code with the newest version of the iRX board, with a PIC16F84A and a 20 MHz clock, you must do the following:
|
| Project: Hello | The Hello Project is the cannonical "Hello, world." program, which introduces some of the features of the PIC microcontroller and the PCM C compiler functions that access those features. |
| Project: Temperature | The Temperature Sensor project shows
how you can make analog measurements (such as the resistance of a thermistor)
without an A/D converter.
The basic idea is that the PIC can measure the time it takes to charge a capacitor, from which you can compute the current flowing into the capacitor, from which you can deduce the value of a resistor. |
| Project: IrDA | The IrDA Project shows how to create an infrared serial link between two iRX boards using IrDA (Infrared Data Association) protocols. |
| Project: Sony Remote | The Sony Remote Project uses an
iRX board to translate between serial commands (e.g. sent and received
by your computer) and "Sony" style infrared remote control protocol. Suitably
modified, you can use this code to control your computer with your TV remote,
or alternatively to control your TV with your computer.
Here's the source code that makes this work. It's a good example of how you can use the RTCC (aka TMR0) to keep track of time. |