Hi Thomas, On Sun, Sep 24, 2017 at 7:34 AM, TJF <[email protected]> wrote: > Hi Arend, thanks for sharing your project! > > Am Samstag, 23. September 2017 10:42:45 UTC+2 schrieb Arend Lammertink: >> >> If it's a real interrupt, the arm gets like 128 samples (block_size) a >> time and thus gets interrupted 128 times less, assuming the IIO driver >> uses adc interrupts. >> ... >> In this case, the voltage over the capacitor is used to switch the >> charge and discharge control mosfets on/off, which I am currently >> doing with the arm . I might move that to the pru as well, which would >> improve reaction time and thus accuracy of the measurement cycle. > > > How can you improve reaction time, when you get then samples in blocks of > 128? In worst case (when your triggering value is at the beginning of the > block) you'll add further latency. > > For fast reaction time you have to evaluate the samples one-by-one, and in > this case the maximum sampling rate is in the range of 200 to 250 kS/s. DMA > transfer in blocks is useful for measuring tasks, but not for closed loop > controlls. > >
The PRU polls the fifo's of the adc and fetches any samples as soon as they become available. So, by moving the mosfet switch on/off code *to* *the* *PRU*, one can indeed evaluate the samples one by one, provided the PRU is fast enough to: a) keep up with the adc WHILE b) doing some additional processing whenever a sample becomes available. Also, with the PRU one can directly write to the GPIO registers and thus bypass the sysfs interface, reducing further latency. In other words: when comparing this PRU fifo access technique to DMA (block) access, one obtains the *possibility* to implement closed loop controls *on* *the* *PRU*. Regards, Arend. -- 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/CAOYv6OO9uv7UT%3DQq9uL1KeDT9j-S06t2Q5_HF7pNekUcx1WfGQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
