2025-05-27 11:54 PM
Hello
I wrote a BootLoader program and an app program in flash,BootLoader program will Jump to app. current state is,BootLoader boot takes a longtime,and jump also takes a longtime, the length of time positively correlated with the size of global variables in SDRAM,for example,if a 1M array defined in SDRAM,it takes about 1s,if a 15M defined used in SDRAM,it takes about 10s,i use the Keil IDE,and AC6 compiler. i think,the longtime is the BSS set to 0 takes,so i wrote the sct file like this RW_SDRAM 0xC0000000 UNINIT 0X2000000
{
*(.SDRAM)
},the variables are defined like this uint16_t FrameBuffere[LCD_WIDTH*LCD_HEIGHT] __attribute__((section(".SDRAM"))); I want the variables in SDRAM not to be initialized,but it has no effect,Another article is very similar to my situation ,the solution is "Add the C compiler condition "--no_unaligned_access" to the APP",i I tried, it also has no effect,could you please help me,how to realize not init the SDRAM data.thanks a lot.
2025-05-28 6:13 AM
Mark the SDRAM section as NOLOAD.