Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.
the stream that forms the raw data (0's and 1's) modulates the amplitude of a carrier of 38 KHz (the exact frequency is not important unless one likes to use one of the standard low cost IR receiver). It is rather a digital modulation; for example when the data signal is high, pulses of 38 KHz are transmitted, when low no pulse is sent.
The IR receiver detects the envelop of the carrier (high and low) and send it to its data pin (obviously the carrier frequency is filtered/removed from the data output). New IR receivers look as BD135 for example with a small IR eye and each has 3 pins (data, Vcc, ground).
The highest frequency of the data stream is usually below 2KHz. A higher frequency may also work but its bit error rate will likely increase.
The more it deviates from 38KHz (assuming the RX IR receiver is made for this frequency since there are other standards lately), the less the working distance will be.
A deviation of ±0.5 KHz works well.
Let me explain this in other words.
The IR receiver has an internal bandpass filter at the carrier frequency.
Its bandwidth may change from one type to another but in general it is ±2 KHz.
So if the highest frequency of the modulating signal (on/off) is also 2KHz, by shifting the carrier 0.5 KHz, some of the received power is rejected by the band-pass filter, this can be compensated by decreasing the distance between TX and RX.
But if the modulating signal doesn't exceed 1KHz then a deviation of 1 KHz won't affect the output of the filter and the transmission sensitivity won't be affected.
Hope this helps.
I designed IR transmitter and receiver circuits using PIC 16f877a, I achieved 38kHz carrier and my message is 1.2kHz.. The transmitter side is perfect.. But in the receiving side, I'm getting only 'momentary output'. The output doesn't stay stable. Can anyone say what would the problem..???
It would help to have a schematic for the Tx and Rx as well as your code. However, absent that, I suspect the problem may be in waking up the receiver, getting the pulse widths correct at the receiver, or recognizing beginning and end of true transmissions. That was solved for IR controls using Manchester coding, which looks at the transitions, rather than the pulse widths. You will also see about adding data to recognize the transmissions.
There is a group here by bigdogguru on Embedded Wireless Networks. Scroll to the Manchester coding post. One of the tutorials will explain it. Here are direct links to the group and to that section.
I recommend, in particular, the second post with the link to a tutorial.