Le vendredi 11 septembre 2015 02:10:24 UTC-3, William Hermans a écrit : > > Carlos, I forgot to mention before also that you seem to have a flaw in > your code some where. I mentioned clearing your data variables already, but > there is potentially more there too is you're getting duplicate time > stamps, and data. The first impression I get from this is that > > > - a) you're not clearing your data variables between reads / writes on > the ARM side. And . . . > - b) You have no locking mechanism between the PRU, and ARM to tell > the ARM side program it is ok to read the data. > > > Hello Willian, first of all, thank you again for your suggestions and clarifications. I am convinced now that it will work better (and with simpler code) if I implement some locks and keep reading a flag bit to know if it is time to read/write the memory. As far as I can tell, I can do it in a non blocking way on the PRU side. On the ARM side, It can be possible to spawn a new thread specialized in checking this, so the arm program can do other things without having the main thread blocked. There will be nothing to do in the control task before having a new sample to process, but on the supervisory task I can fill in some buffers and send some data to a web server running on the beaglebone... so anyone can plug in a eth cable, open the web browser and sort of watch the "live" results or choose to download every data after the experiment is over. Ah, no, I have no lock mechanism aside from the interrupt system, which is not working as I expected on the ARM code.
Carlos Novaes -- 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]. For more options, visit https://groups.google.com/d/optout.
