Ramsey Electronics ICI16 Assembly And Instruction Manual page 6

16 channel ir/rf remote interface
Table of Contents

Advertisement

Typically a remote control will send data in a format consisting of time slices.
To send a zero, the IR LED will be off for one time slice, and then toggled at a
rate of 38kHz for the second time slice. To send a one, the IR remote will use
three time slices. Off for two time slices, and on for one. This makes things
easy on the receiver side, because we just have to look from the edge of the
first on-to-off transition to the middle of the second time slice (1 1/2 time slices
from the start) to determine the bit that was sent.
It's important to note, however that most remote controls send a unique first
code that can be identified for each and every button as well as each and
every remote control. Some remotes will send a full data stream over and over
as long as you hold the button down, up to 48 bits per data stream. Other re-
motes will only send this full data stream once for the first depression, and
then a very short repeat code usually of only one bit, to save on batteries.
The ICI16 recognizes the full codes, and discards the short repeat codes
unless you are holding a button in position. If we didn't do this, we couldn't tell
one button from another! You will find that with some remotes, you need to
press the button twice to train the ICI16 to remember a certain button. This
means the remote you are using is using repeat codes. Other remotes just
require you to press and hold the button, so these are the ones that send the
same code over and over.
One other variance is the data rate from the remote. Generally most remotes
send at a rate of 2400 Hz time slices, but others send at only 1200 Hz time
slices. This presents a problem on slower remotes since the sample period
will always lie in a high or low portion of the subsequent data, meaning we will
receive nothing but ones or zeros. There is a speed switch you can flip to al-
low the ICI16 to work with these remotes. If an incorrect speed remote control
is detected, the microcontroller ignores the code. Then you can switch the
jumper over to the other speed and try again.
When you train the ICI16, the microcontroller looks at the data stream and
rejects those codes it sees as useless or unverified. The ICI16 looks at the
data from the remote sensor, makes sure it is not a repeat code, checks that it
is not the wrong speed, and then compares it to a previous send before saving
the new value in the Flash memory of the controller. That is why you have to
press the button twice on some remotes; so you can get the same code for
verification before saving.
After the ICI16 locks on to the code it outputs it at J1 as a 4-bit number. The
mode switch selects between two different methods of outputting data, and in
fact only affects the "VALID" line. With the switch in the up position (1) the
valid line will be held low (0V) for the entire depression of the remote control
codes being received. The ICI16 could receive the code 200 times in succes-
sion, but the line goes low at the end of the first code, and back high after the
last code plus a little delay.
ICI16• 6

Advertisement

Table of Contents
loading

Table of Contents