Messages in this thread | | | Date | Wed, 8 Oct 2008 09:06:30 -0400 | From | "Jon Smirl" <> | Subject | Re: Toggling GPIO at 38Khz |
| |
On Wed, Oct 8, 2008 at 8:01 AM, Bill Gatliff <bgat@billgatliff.com> wrote: > Jon Smirl wrote: > >> >> Are there other techniques for generating pulse trains in the 36-56Khz >> range on a simple GPIO pin? >> > > Yes. > > Use the GPIO pin to enable the output of an external circuit. Or, hope that the > GPIO pin in question is multiplexed with a timer/counter or PWM peripheral. > > But somehow, I don't think either answer is what you were looking for. :)
The existing LIRC driver for a serial port is here: http://lirc.cvs.sourceforge.net/viewvc/lirc/lirc/drivers/lirc_serial/lirc_serial.c?view=markup
An example of serial based hardware is here: http://iguanaworks.net/product2.psp
These are external boards people buy to use with MythTV. They are most commonly used on the x86, but the NSLU2 has been modified to use them too.
The hardware can't be changed, people have bought thousands of these devices.
Many people cut up a serial cable and solder it themselves... http://www.lirc.org/transmitters.html
The problems with these devices are obvious, I use a USB one for my own system. It has a PIC chip in it with PWM out.
> > 36 KHz bit-banging is a reach for any processor running Linux, methinks. Maybe > you could launch an FIQ (assuming ARM) and then do the bit-bang as a burst in > there, so that you would have more control over the timing. But that kind of > code isn't going to play well with the rest of the kernel... > > If the hardware design isn't set, you might want to consider using that GPIO > line as a quasi-SPI link to a small, AVR-type microcontroller that does the > bit-banging on your behalf. Long-term, that's going to be a more reliable and > flexible solution I think. > > > b.g. > -- > Bill Gatliff > bgat@billgatliff.com >
-- Jon Smirl jonsmirl@gmail.com
| |