I am quite new to CortexM3, so I am not sure what is the best approach to achieve microseconds delay. What I did on ARM7 and some 8-bit processors, is "waste time loops" in assembler which do some NOPs and tweak it with oscilloscope for certain osc freq. But with enabling PLL on CortexM3 I am wondering if I could achieve same with timers ? If I set PLL to get 120Mhz, will my timer work at that freq or at base freq of 20Mhz as osc ?
Thanks.
The SysTick counter is 24-bit and counts backward as I recall. Check if your part implements the optional DWT_CYCCNT register, it's 32-bit wide, and clocks at processor speed. At 120 MHz that would wrap just shy of 36 seconds.
infocenter.arm.com/.../index.jsp
embeddedb.blogspot.com/.../how-to-count-cycles-on-arm-cortex-m.html