|
by Peter Gibbs
Start ý The
Objectives ý Circuit Operation ý Decoding
the URIC ý Short Program ý The
Multiplexer Design ý Software ý Sources
and PDF
DECODING THE UIRC
Most infrared remotes use a 40-kHz modulated
signal with pulse length coded data, encoded differently by each manufacturer.
Researching the Internet and Circuit Cellarýs archives revealed
that there is no single standard, although some methods are widely
used. As I mentioned earlier, I used a 3-in-1 universal remote control.
It was used in the TV mode, and after experimentation, I determined
that the remote uses a 12-bit code known as the RECS-80 code.
To decode the transmissions, the Sharp
GP1U52X infrared receiver module first removed the 40-kHz carrier,
and then filtered and amplified the digital signal. The TTL-compatible
output was fed directly into an input bit of the Stamp (bit 7) for
software analysis.
The Sharp module takes a short time to
lock onto the signal, so a long leader pulse that satisfies this lock-on
delay precedes transmissions. This is common on most remote controls.
Data is encoded using a method that distinguishes
logic 1 from logic 0 by the length of a low pulse that follows each
fixed duration high pulse (see Figure 1).
|
|
| Figure 1ýNotice how the low-pulse
width of a logic 0 is distinctly shorter than that for a logic
1. |
I reasoned that measuring pulse widths
from logic 0 pulses only yields a binary string pattern unique for
each key on the UIRC. The Pulsin command of the Stamp measures the
duration of a pulse and returns an integer value between 0 and 255
to an 8-bit variable and, hence, could measure the pulse widths.
PREVIOUS
NEXT
Circuit Cellar provides up-to-date information for engineers. Visit
www.circuitcellar.com for
more information and additional articles.
For subscription information, call (860) 875-2199, subscribe@circuitcellar.com
or subscribe online.
ýCircuit Cellar, the Magazine for Computer Applications. Posted with
permission. |