Thanks for the suggestions. I don't understand /dev/mem/ + mmap(). How does this work?
Writing a kernal driver sounds like the great idea but is probably very difficult. On thing I should clarify. The loop that is polling and grabbing the data keeps up with no problem. It is SPI. The problem is when Linux gets buys with something it just "goes away" for multiple milliseconds or more and data is lost. If I want to experiment with the PRU, which debian image should I use? Thanks, Kirk On Tuesday, August 2, 2016 at 3:36:38 PM UTC-7, William Hermans wrote: > > Yes, I have 2-3 suggestions where the first suggestion may not work, but > are worth attempting. > > > - Upgrade to an RT kernel. > - Use /dev/mem/ + mmap() > - Bit bang via a PRU > - Or write a kernel driver that does all this from kernelspace, but > writes data to a file userspace hass access to. > > > > On Tue, Aug 2, 2016 at 3:17 PM, Kirk <[email protected] <javascript:>> > wrote: > >> All, >> >> I'm working on a Beaglebone Black project using a MEMS accelerometer >> chip, the ADXL312. >> >> The accelerometer has a pin which goes active each time a new data sample >> is available to be read. >> It runs at 3200 Hz. (about 1/3 of a ms per sample) >> >> The pin is connected to a GPIO input and I've written code to monitor >> this pin and grab the data each time. >> The sampling normally runs for several seconds continuously. >> >> The problem is, every once in a while Linux gets busy and apparently >> interrupts my code and I miss samples. >> (an overrun bit lets me know this is happening) >> >> >> I'm looking for ideas on how to improve this so data samples are not >> missed. >> >> Any ideas? >> >> Kirk >> >> -- >> For more options, visit http://beagleboard.org/discuss >> --- >> You received this message because you are subscribed to the Google Groups >> "BeagleBoard" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/beagleboard/564cb216-36a0-4528-874c-f89053d61876%40googlegroups.com >> >> <https://groups.google.com/d/msgid/beagleboard/564cb216-36a0-4528-874c-f89053d61876%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> For more options, visit https://groups.google.com/d/optout. >> > > -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/e15c18e8-6d07-4c09-96f2-e29480b67784%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
