我正在使用IAR 7.80開發STM32 mC。 我需要在Flash中將特定的內存塊表示爲不同大小的變量。 例如從位置0x0800B00開始我有以下數據: 4個字節,它們是一個浮點數,一個大小爲4的字符數組,然後是一個uint32_t的4個字節數組。 目前我指定的每個變量的特定位置,使得對於上面的例子我寫:在閃存中定義一塊內存作爲IAR中的變量
_Pragma("location=0x0800B000") const float first_var = 5.0;
_Pragma("location=0x0800B004") const char[4] second_var = {1,2,3,4};
_Pragma("location=0x0800B008") const uint32_t third_var = 1000;
在現實中我有超過100個這樣的變量和添加/移除的變量是在這個發展階段頻繁,因此,每次我移除一個變量時,我需要重新排列所有變量的位置。 有沒有更好的方法來表示這些變量? 注意:我需要能夠將內存塊解析並在PC應用程序中進行解析,因此,我需要每個變量都佔用它的大小,而不是更多!