I have a MicroZED board (Zynq 7000 processing system). The project I'm working on uses the LWIP stack to manage the ethernet interface. My project also uses the xscu timer to periodically transmit specific ethernet packets.
However, the timer period varies. When working properly, it has a period of 250 ms (quarter of a second). However, when I power on (not reset) the board, the period is frequently much longer than that. To return the period to correct value, I have to power cycle the board and hope that it corrects itself. If it doesn't correct itself, I have to keep power cycling the board.
I have not changed any of the autogenerated code in platform_zynq.c (which contains the code that controls the timer).
Any ideas?