Hi John,
I think the busy signal is not generated after writing to offset = 0. Also in the UG-M10CONFIG the busy flag is not mentioned for writing to offset 0, unlike the offset 1 and 2 where it is explicilty described that it is generated.
So I think it makes no difference if I check the status of the busy flag or wait for the same number of clock cycles it takes to check the busy flag.
In my program I'm writing to offset 0 to trigger reconfiguration, then check the busy flag and after that I write to offset 2 to trigger the read of one of the registers.
Because of the busy flag is always zero the number of clock cycles between writing to offset 0 and writing to offset 2 is always the same.
The time between the two write operations (means the time where the write bit is set to zero) initally was 3 clock cycles (75 ns). As described before this worked for most of the devices, but not all.
When I added an additional cycle, to have 4 clock cycles (100 ns). This now workes for the devices that did not reconfigure before. I also tested it with a device that was working with the inital solution and removed one cycle. With 2 clock cycles (50 ns) this now did not reconfigure anymore, too. So it seems to me that 2 clock cycles are definitly too less, 3 work in most cases and 4 hopefully always...
Im just wondering now, if adding 4 idle cyles after writing to registor with offset 0 is the solution to the problem. Is there some technical explanation for this? Can a write to another register (like offset 2) interfere with the reconfiguration? In this case how long do I have to wait after writing to offset 0 before I start another write operation?
Does the same apply for reseting the watchdog timer (also a write to offset 0)?
Is it correct that it makes no sense to read the busy flag after writing to offset 0?
Best Regards
Tom