We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello everyone!
I am using Keil uVision 5.28 with Compiler V6.12.
How to declare a constant structure in flash memory so that it is not initialized by programmer / debugger and functions from scatterloader?
I'm looking at document https://static.docs.arm.com/100748/0609/compiler_user_guide_100748_0609_00_en.pdf.
There is an example on page 120 for peripheral registers, but it does not quite suit me, since there can be many such structures, and I do not want to make many files for each structure.
Now I have limited the size of the flash memory in the scatter file and refer to the structure at an absolute address.Maybe there is some other, more correct solution?
It's fine -- ZI is really a synonym for .bss. See also section B3.34 in the Arm Compiler Reference Guide v6.14.