Hi,
At this time I'm trying to determine how fast the CortexM4 can / will handle GPIO reads/writes.
A very simple IO-TOGGLE running on Bare-Metal (native) Cortex-M4.. shows me that it takes up-to +400ns to toggle an GPIO pin. ( a high low / low high sequence ( square wave) takes +800ns ).
I see similar 'speeds' for reading ( iso writing) an GPIO pin !
Is there any possibility to improve ( speed this up) ?
From the reference manual I see that the peripheral clock is running at 24MHz, so I would expect this to be faster ?
Worst case scenario ? Can I increase the peripheral clock speed , without breaking either Linux or FreeRTOS.
Thanks,
Noel
The GPIO module switching timings you observe are the realistic ones since these numbers include some software overhead, GPIO inter-module transfer timings etc.
You can try to increase the IPG_CLK_ROOT frequency on your own risk, however, it may cause the whole system to hang up.
Have a great day,
Artur