Hey,

I'm trying to match the below modification in my version of libpruio, but 
while compiling I run into the following

ld: pruio.o: relocation R_ARM_THM_MOVW_ABS_NC against `a local symbol' can 
not be used when making a shared object; recompile with -fPIC

and I'm not sure how to get past it. I -think- that I have the freebasic 
compiler running correctly. Any advice would be welcome.

Thanks,
Michael Todd


On Thursday, November 6, 2014 10:36:04 AM UTC-8, TJF wrote:
>
> Hello Nils,
>
> thanks for the code. I think about including it in the libpruio examples 
> folder, but your main loop is endless and the user cannot abort the 
> program. (Shouldn't the file get closed?) Perhaps I can adapt it a bit.
>
> Regarding the ADC speed I made some further testing and it seems that I 
> mis-interpreted the TRM. The ADC subsystem can sample at least at 200 kS/s. 
> This speed also works for multiple channels. Find an example of four 
> channels at 44.1 kHz in this post 
> <http://beagleboard.org/Community/Forums?place=msg%2Fbeagleboard%2F3AFiCNtxGis%2FH7q76xdk8ZQJ>.
>  
> An overall sampling rate of 200 kHz was also possible (four channels).
>
> So the limiting in the current libpruio-0.2 is too much on the safe site. 
> If you don't want to wait for the next version, you can adapt the code by 
> yourself (FreeBASIC compiler required). Replace in file pruio_adc.bas in 
> function PruIo.configure(...) the lines
>
>       d *= (Conf->ADC_CLKDIV + 1) * 417 '417 ≈ 1000000 / 2400 (= 1 GHz / 
> 2.4 MHz)
>       d += 30 '                             PRU cycles for restart [GHz]
>       IF Tmr <= d THEN     .Errr = @"sample rate too big" : RETURN .Errr
>
> by the following code
>
>       d = (d * (Conf->ADC_CLKDIV + 1) * 1000) \ 24
>       IF Tmr <= d ORELSE Tmr < 5000 THEN _
>                            .Errr = @"sample rate too big" : RETURN .Errr
>
> You may play a bit with the absolute value 5000. On my BBB the timing is 
> OK up to a frequency of 240 kHz (4165). But this may vary from board to 
> board.
>

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