Thank you for the link Graham -- I think that library will be very useful as a guide, and I'll try using it as my "point of entry" for a few weeks and see what progress I can make in parallel with exploring the other docs that Joshua has pointed me to. I note the author of the library relies a lot on mmap, which suits me -- although I think I can understand the arguments for NOT using it from a software professional's perspective.
It will be a while before I'm ready to tackle the PRU -- and my 'scope is only useful up to 50MHz or so anyway :-) I don't have any need to toggle anything at 200MHz -- but the thought is pretty amazing. Thanks again. Curt On Tuesday, November 4, 2014 9:37:39 AM UTC-6, Graham wrote: > > As a quick speed comparison on the BeagleBone Black. > If you program a GPIO line to just toggle up and down in a loop . > > In Python, using the file system I/O, the line will toggle up and down at > about 6 kHz. > > If you program in C, under Debian, using a tight loop to toggle the line > up and down > on memory mapped I/O, the line will toggle up and down at about 2.2 MHz. > Almost a 3 orders of magnitude improvement. > > I have read, that in assembler on the PRU, you can get it to toggle at 200 > MHz, another > two orders of magnitude. > > So, if you are doing something where response time in the milliseconds is > good enough > then Python is great. If you are teaching kids to program, then Python > seems great. > > If you are looking for response times in the microseconds, then > you need to be closer to the metal with something like C. > > If you are looking for an example of a C I/O library for BBB GPIO, > and some off the peripherals, including the ADC, then look at: > > https://github.com/VegetableAvenger/BBBIOlib > > --- Graham > > > > -- 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.
