From:  Rafael Vega <email.r...@gmail.com>
Reply-To:  <beagleboard@googlegroups.com>
Date:  Saturday, May 24, 2014 at 1:23 AM
To:  <beagleboard@googlegroups.com>
Subject:  [beagleboard] Reading analog inputs fast in beaglebone black

> 
> 
> I need to read all 7 analog pins in the BBB every 5 milliseconds. I'm doing so
> with the following C code:
> void main(){
>     char value_str[7];
>     long int value_int = 0;
> 
>     FILE* f0 = fopen("/sys/bus/iio/devices/iio:device0/in_voltage0_raw", "r");
> 
>     while(1){
>             fread(&value_str, 6, 6, f0);
>             value_int = strtol(value_str,NULL,0);
>             printf("0 %li\n", value_int);
>             fflush(stdout);
> 
>             usleep(5000);
>             rewind(f0);
>     }
> Hoever, the cpu usage goes up really high (20%). Is there any way to read the
> analog inputs differently so that it doesn't use as much CPU? Someone
> suggested "DMA" but I'm completely lost on that regard...
Here is some additional info on IIO that might be helpful:

http://processors.wiki.ti.com/index.php/AM335x_ADC_Driver%27s_Guide

Regards,
John
> Any help will be appreciated.
> -- 
> 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 beagleboard+unsubscr...@googlegroups.com.
> 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 beagleboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to