Or use a gpio pin that generates an interrupt, mask interrupts do your data retrieval re enable interrupts.
you are asking for this kind of an issue when polling. On 8/2/2016 3:36 PM, 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] > <mailto:[email protected]>> 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] > <mailto:[email protected]>. > 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] > <mailto:[email protected]>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/beagleboard/CALHSORpCjghcxUpi05Wxx8ak-SF22tsLQk5WfUSQaJrsB-FJ_Q%40mail.gmail.com > <https://groups.google.com/d/msgid/beagleboard/CALHSORpCjghcxUpi05Wxx8ak-SF22tsLQk5WfUSQaJrsB-FJ_Q%40mail.gmail.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/276e93fe-e0fc-70b0-fa8a-98283c4a1730%40gmail.com. For more options, visit https://groups.google.com/d/optout.
