hi to all, i am new in keil and embedded systems, i am working with emwin graphic library and as you know this is big(in viewpoint of micro flash usage) library. size of hex file that keil create for my programme is 744KB while my CPU flash size is 520KB(i use LPC1788) and it surprised me because i thought that hex file will exactly programme to my MCU. now any one know where is the point and what is real size of my programme?? and also there is any way for me to know my programme use how much of other resources like static ram, heap.
thanks for attention
The .HEX will typically be about 2.5x larger than the binary data it describes.
You should review the .MAP, it will break down the sizes of various sections the linker created.
hi pier, thanks for your response at end of my project.map file i see these details :
Total RO Size (Code + RO Data) 270376 ( 264.04kB) Total RW Size (RW Data + ZI Data) 9984 ( 9.75kB) Total ROM Size (Code + RO Data + RW Data) 270772 ( 264.43kB)
i think that RO line describe amount of used flash of my MCU, i do not have any idea about other lines, can you describe for me about tow other lines??
It's the Total ROM size you need to look at. The value of many initialised variables is stored in the ROM image along with the code.