ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
11 июля
352730 Топик полностью
KT (07.09.2012 15:51, просмотров: 291) ответил amusin на У вас занято 46 КБ памяти программ - 31 под код и 15 - под константы.
Ну да, вот весь файл - > Несколько смущает странная арифметика: В программе объявлено три константных массива - FONT - размер 0x3B60 FONT1 - размер 0x64F0 BAR - размер 0x02F8 Итого - размер 0xA348 или 41800 байт константных данных. А в самом низу указывается что данных только 15216 байт, остальное - исполняемый код? Я что то не так понимаю? ############################################################################### # # # IAR ELF Linker V6.30.8.53653/W32 for ARM 07/Sep/2012 14:15:56 # # Copyright 2007-2012 IAR Systems AB. # # # # Output file = D:\STM32_project\OLED\Debug\Exe\c.out # # Map file = D:\STM32_project\OLED\Debug\List\c.map # # Command line = D:\STM32_project\OLED\Debug\Obj\main.o -o # # D:\STM32_project\OLED\Debug\Exe\c.out --redirect # # _Printf=_PrintfFull --redirect _Scanf=_ScanfFull --map # # D:\STM32_project\OLED\Debug\List\c.map --config # # "C:\Program Files (x86)\IAR Systems\Embedded Workbench # # 6.0\arm\config\linker\ST\stm32f103x8.icf" --semihosting # # --entry __iar_program_start --vfe # # # # # ############################################################################### ******************************************************************************* *** RUNTIME MODEL ATTRIBUTES *** CppFlavor = * __SystemLibrary = DLib ******************************************************************************* *** PLACEMENT SUMMARY *** "A1": place at 0x08000000 { ro section .intvec }; "P1": place in [from 0x08000000 to 0x0800ffff] { ro }; "P2": place in [from 0x20000000 to 0x20004fff] { rw, block CSTACK, block HEAP }; Section Kind Address Size Object ------- ---- ------- ---- ------ "A1": 0x40 .intvec ro code 0x08000000 0x40 vector_table_M.o [4] - 0x08000040 0x40 "P1": 0xb328 .text ro code 0x08000040 0x771c main.o [1] .rodata const 0x0800775c 0x3b60 main.o [1] .text ro code 0x0800b2bc 0x2c data_init3.o [4] .text ro code 0x0800b2e8 0x22 zero_init3.o [4] .text ro code 0x0800b30a 0x2 vector_table_M.o [4] .iar.init_table const 0x0800b30c 0x10 - Linker created - .text ro code 0x0800b31c 0x16 cmain.o [4] .text ro code 0x0800b332 0x4 low_level_init.o [3] .text ro code 0x0800b336 0x4 exit.o [3] .text ro code 0x0800b33c 0xa cexit.o [4] .text ro code 0x0800b348 0x14 exit.o [5] .text ro code 0x0800b35c 0xc cstartup_M.o [4] .rodata const 0x0800b368 0x0 bwt_init3c.o [4] - 0x0800b368 0xb328 "P2", part 1 of 2: 0x20 .bss zero 0x20000000 0x14 main.o [1] .bss zero 0x20000014 0x4 main.o [1] .bss zero 0x20000018 0x4 main.o [1] .bss zero 0x2000001c 0x1 main.o [1] - 0x2000001d 0x1d "P2", part 2 of 2: 0x800 CSTACK 0x20000020 0x800 <Block> CSTACK uninit 0x20000020 0x800 <Block tail> - 0x20000820 0x800 ******************************************************************************* *** INIT TABLE *** Address Size ------- ---- Zero (__iar_zero_init3) 1 destination range, total size 0x1d: 0x20000000 0x1d ******************************************************************************* *** MODULE SUMMARY *** Module ro code ro data rw data ------ ------- ------- ------- D:\STM32_project\OLED\Debug\Obj: [1] main.o 30 492 15 200 29 ------------------------------------------- Total: 30 492 15 200 29 command line: [2] ------------------------------------------- Total: dl7M_tln.a: [3] exit.o 4 low_level_init.o 4 ------------------------------------------- Total: 8 rt7M_tl.a: [4] bwt_init3c.o cexit.o 10 cmain.o 22 cstartup_M.o 12 data_init3.o 44 vector_table_M.o 66 zero_init3.o 34 ------------------------------------------- Total: 188 shb_l.a: [5] exit.o 20 ------------------------------------------- Total: 20 Gaps 4 Linker created 16 2 048 ----------------------------------------------- Grand Total: 30 712 15 216 2 077 ******************************************************************************* *** ENTRY LIST *** Entry Address Size Type Object ----- ------- ---- ---- ------ ?main 0x0800b31d Code Gb cmain.o [4] BAR 0x0800736c 0x2f8 Data Gb main.o [1] BusFault_Handler 0x0800b30b Code Wk vector_table_M.o [4] CSTACK$$Base 0x20000020 -- Gb - Linker created - CSTACK$$Limit 0x20000820 -- Gb - Linker created - DIG0 0x20000002 0x1 Data Gb main.o [1] DIG1 0x20000003 0x1 Data Gb main.o [1] DIG2 0x20000004 0x1 Data Gb main.o [1] DIG3 0x20000005 0x1 Data Gb main.o [1] DISPLAY_INIT 0x080003f3 0x63c Code Gb main.o [1] DebugMon_Handler 0x0800b30b Code Wk vector_table_M.o [4] Display_Clear 0x0800029b 0x158 Code Gb main.o [1] FONT 0x0800775c 0x3b60 Data Gb main.o [1] FONT1 0x08000d28 0x64f0 Data Gb main.o [1] GPIO_INIT 0x080001ff 0x9c Code Gb main.o [1] GPIO_Init 0x08000041 0xc4 Code Gb main.o [1] GPIO_InitStructure 0x20000014 0x4 Data Gb main.o [1] HSEStartUpStatus 0x2000001c 0x1 Data Gb main.o [1] HardFault_Handler 0x0800b30b Code Wk vector_table_M.o [4] MemManage_Handler 0x0800b30b Code Wk vector_table_M.o [4] NMI_Handler 0x0800b30b Code Wk vector_table_M.o [4] PUT_BAR 0x08007219 0x152 Code Gb main.o [1] PUT_DIGIT_D 0x08000b83 0x15a Code Gb main.o [1] PUT_DIGIT_S 0x08000a2f 0x154 Code Gb main.o [1] PUT_NUMBER 0x08007665 0xc8 Code Gb main.o [1] PendSV_Handler 0x0800b30b Code Wk vector_table_M.o [4] RCC_INIT 0x08000105 0xfa Code Gb main.o [1] Region$$Table$$Base 0x0800b30c -- Gb - Linker created - Region$$Table$$Limit 0x0800b31c -- Gb - Linker created - SVC_Handler 0x0800b30b Code Wk vector_table_M.o [4] SysTick_Handler 0x0800b30b Code Wk vector_table_M.o [4] UsageFault_Handler 0x0800b30b Code Wk vector_table_M.o [4] X 0x20000000 0x1 Data Gb main.o [1] Y 0x20000001 0x1 Data Gb main.o [1] __cmain 0x0800b31d Code Gb cmain.o [4] __exit 0x0800b349 0x14 Code Gb exit.o [5] __iar_SB 0x0800b368 Data Gb bwt_init3c.o [4] __iar_data_init3 0x0800b2bd 0x2c Code Gb data_init3.o [4] __iar_program_start 0x0800b35d Code Gb cstartup_M.o [4] __iar_zero_init3 0x0800b2e9 0x22 Code Gb zero_init3.o [4] __low_level_init 0x0800b333 0x4 Code Gb low_level_init.o [3] __vector_table 0x08000000 Data Gb vector_table_M.o [4] _call_main 0x0800b329 Code Gb cmain.o [4] _exit 0x0800b33d Code Gb cexit.o [4] _main 0x0800b32f Code Gb cmain.o [4] exit 0x0800b337 0x4 Code Gb exit.o [3] i 0x20000010 0x4 Data Gb main.o [1] index 0x2000000c 0x4 Data Gb main.o [1] main 0x0800772d 0x1e Code Gb main.o [1] num 0x20000018 0x4 Data Gb main.o [1] shift0 0x20000006 0x1 Data Gb main.o [1] shift1 0x20000007 0x1 Data Gb main.o [1] shift2 0x20000008 0x1 Data Gb main.o [1] shift3 0x20000009 0x1 Data Gb main.o [1] [1] = D:\STM32_project\OLED\Debug\Obj [2] = command line [3] = dl7M_tln.a [4] = rt7M_tl.a [5] = shb_l.a 30 712 bytes of readonly code memory 15 216 bytes of readonly data memory 2 077 bytes of readwrite data memory Errors: none Warnings: none