Thx. I already found example you mention (glad to know it's yours) and used 
it as guideline how to use compare registers on IEP. Did reworked the 
example and now it's running fine. I suspect that issue in my initial 
example was with following piece of code

L1:
    LBBO    rT2, rIEPBase, IEP_COUNT, 4
    QBLT    L1, rT1, rT2

My expectation was that "quick branch" instructions does comparison of 
complete registers (all 32 bits), but in fact it compares only 8 bits (you 
can chose if it's B0,B1,B3 or B4). In my case I think it was working only 
rT1.b0 and rT2.b0. For sure that contributed to unexpected execution flow, 
maybe there was also something else. 

Although reworked example works just fine, will debug this one as I don't 
want to leave open ends :) Also will try debugger you mentioned, as writing 
apps blindly and debug them only with LED attached to GPIO is bit of pain :)

Thx
Ivan


On Wednesday, October 2, 2013 12:16:58 AM UTC+2, Charles Steinkuehler wrote:
>
>
> I don't immediately see anything obvious that is wrong with your code. 
>
> I have a known working example of using the IEP timers with the PRU, but 
> I'm using the overflow event rather than polling the count value: 
>
>
> https://github.com/cdsteinkuehler/linuxcnc/blob/MachineKit-ubc/configs/ARM/PRU-Debugger/pruexample.p
>  
>
>
> -- 
> Charles Steinkuehler 
> [email protected] <javascript:> 
>
>

-- 
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/groups/opt_out.

Reply via email to