Hi Lukas,
Thank you for your help and interest into this problem.
This is the first solution that I tried after reading the datasheet.
Tried it again today just for confirming my problem was still there.
The specific behavior is as follows:
PGM =1
...
*(unsigned int *)0x00800000 = 0xAABBCCDD;
- interlock write not done -> only address latching
*(unsigned int *)0x00800004 = 0x11223344;
- this value gets written into latched address (0x00800000)
- address 0x00800004 is untouched
Watched the behavior using disassembly and the operations are executed as expected so I exclude the compiler making any optimizations.
Thank again for your reply.