Last update : 2005-05-19
PIC --> 16F84 IR Receiver
16F84 IR Receiver
Changes :
- 13/09/2003 : Added date to digital clock.
- 15/09/2003 : Fixed a bug in the 'goto line x' routine.
- 17/09/2003 : Replaced send-script with irtext.c
- 04/10/2003 : Changed irtext.c so that it can send characters > 127.
- 24/12/2003 : Only show the digital clock when the time is set correct.
1. What? :
With this Infra Red Receiver you can show text on a HD4478 LCD Display, whereby
the text comes from an Infra Red Transmitter that is connected to a PC.
In this Infra Red Receiver is also a digital clock present (time + date) that is
shown when there is no Infra Red Signal received for a while.
Adjusting the clock is also done with Infra Red. The digital clock will only be displayed
when the time/date is set, otherwhise the screen will be blanked.
The hard- en soft-ware for the transmitter can be found at
http://www.lirc.org/.
2. Schematic :
Below, You can download the schematic :
This schematic is made with geda-gschem
3. The real thing :
4. The PIC16F84 assembly program :
You can download the program
here .
5. Software PC :
The basic software for transmitting that I use is the
lirc-software.
5.1. lircd.conf :
Add
this to your /etc/lirc/lircd.conf :
5.2. Transmitting data :
With
lirc comes a program irsend or rc (depends on the distribution that is used).
This program can be used to transmit text. Some examples :
- irsend send_once lcd ascii84 ascii101 ascii115 ascii116 --> Transmit the text 'Test' to the lcd-display
- irsend send_once lcd ascii0 ascii0 --> Blank the lcd-display
- irsend send_once lcd ascii0 ascii1 --> goto line 1
- irsend send_once lcd ascii0 ascii2 --> goto line 2
- irsend send_once lcd ascii0 ascii3 --> goto line 3
- irsend send_once lcd ascii0 ascii4 --> goto line 4
- irsend send_once lcd ascii0 ascii5 ascii11 ascii10 ascii0 --> Set the clock to 11:10:00
- irsend send_once lcd ascii0 ascii6 ascii13 ascii9 ascii20 ascii3 --> Set the date to 13/09/2003
5.2. Transmitting text :
Because sending text with irsend/rc is cumbersome, I have written a little program in C
so that transmitting text is easier to do. You can find the source of this C-program
here (color html) or
here (plain text) .