Ah!
* ADC Driver Limitations *

This driver is based on the IIO (Industrial I/O subsystem), however this is
the first release of this driver and it has limited functionality:

   1. No HW trigger Support. Currently only supporting software trigger.
   2. Limited number of samples in continuous capture mode. (Only 1528
   samples per capture)
   3. Limited maximum sample rate in continuous mode: 8K samples / second.
   4. Simultaneous capture on multiple ADC channels is not supported.
   Currently only supports continuous capture on a single ADC input channel at
   a time.
   5. "Out of Range" not supported by ADC driver.

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




On Sat, Oct 3, 2015 at 6:06 PM, William Hermans <[email protected]> wrote:

> Rathin, on a side note, I did get the pru's working on the kernel Im using
> now which is:
>
> debian@beaglebone:~$ uname -a
> Linux beaglebone 4.1.9-bone-rt-r16 #1 Thu Oct 1 06:19:41 UTC 2015 armv7l
> GNU/Linux
>
> The pru example code seems to work fine too . . .
> debian@beaglebone:~/am335x_pru_package/pru_sw/example_apps/bin$ sudo
> ./PRU_memAcc_DDR_sharedRAM
>
> INFO: Starting PRU_memAcc_DDR_sharedRAM example.
>         INFO: Initializing example.
>         INFO: Executing example.
>         INFO: Waiting for HALT command.
>         INFO: PRU completed transfer.
> Example executed succesfully.
>
> But man, lot's of jumping through hoops to get to here. I had to piece
> together from all over the web, so you can bet once I'm ready I will make a
> blog post on it. If for no one else, for myself. I still want to write a
> simplified "hello world" example. Blinking USR0 using the PRU . . . After
> that, then onto using the on chip ADC.
>
>
>
> On Sat, Oct 3, 2015 at 5:49 PM, William Hermans <[email protected]> wrote:
>
>> *4) I tried with while(1) and it ran perfectly. Now I will try changing
>>> to continuous mode as well as the no of ADC in to the program and will
>>> report back to you..!!  *
>>>
>>> *Thanks for the kick start, It is of immense help and yes I have
>>> understood since the beginning that  Google is our BEST friend when working
>>> on something new...!! though my results are not as accurate as ur's but
>>> working on it.. :-)*
>>>
>>> *Once again thanks.. will post back my new code, soon.*
>>
>>
>> If you get continuous mode working I'd be interested in seeing the code.
>> Might even be able to optimize it some for you ;) But I know someone on
>> another forum who is interested in continuous mode. I told him that I am
>> more interested in getting the PRU's involved, but might get around to it
>> someday. I know compared to PRU + ADC it will be slow. *But* if you can get
>> continuous mode working from sysfs, you only need one open(), and close()
>> call for the lifetime of the application for each file path. Which is to
>> say that open(), and close() will no longer have an impact on the
>> application run speed. Then you only need worry about OS latency, and the
>> efficiency of your code . . .
>>
>> You know, a couple friends from different countries, and I have proven
>> that google results vary from country to country. So maybe your results are
>> skewed based on your locale some ? There is a way you can specify which
>> server google uses when you search, but I forget the details. Well, aside
>> from using a web proxy ;) Have fun !
>>
>> On Sat, Oct 3, 2015 at 1:43 PM, Rathin Dholakia <[email protected]
>> > wrote:
>>
>>> Dear TJF,
>>>
>>> Sorry to bug you with a silly question, I thought being a binary it must
>>> have some specific encoding rel. to library hence I asked it. I didnt knew
>>> it was lack of knowledge. I am sorry...!!
>>>
>>> I Have figured out the way to read binary (code pasted bellow for
>>> others;) but I have a doubt in it that I have lot of Zeros & negative
>>> readings as well
>>> Is it because of my decoding error or is it the samples themselves
>>> missing.
>>>
>>> Thanks a ton..!!
>>>
>>> #include<stdio.h>
>>> int main()
>>> {
>>>     FILE *fp = NULL;
>>>
>>>     short result[100];
>>>     int i;
>>>
>>>     fp=fopen("output.0", "w+");
>>>         rewind(fp);
>>>     if(fp != NULL)
>>>     {
>>>         fread(result, sizeof(short), 100 /*# of samples*/, fp);
>>>     }
>>>     else
>>>         return 1;
>>>
>>>     printf("Result\n");
>>>     for (i = 0; i < 100; i++)
>>>         printf("%d = %d\n", i, (int)result[i]);
>>>
>>>     fclose(fp);
>>>     return 0;
>>> }
>>>
>>>
>>>
>>> --
>>> 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.
>>>
>>
>>
>

-- 
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.

Reply via email to