diff --git a/Code/app/inc/app_led.h b/Code/app/inc/app_led.h index 6a5ca4f..10b8fe1 100644 --- a/Code/app/inc/app_led.h +++ b/Code/app/inc/app_led.h @@ -1,8 +1,11 @@ #ifndef __APP_LED_H__ #define __APP_LED_H__ -void app_led_marquee(void); -void app_led_change_style_disable(void); +void app_led_init(void); + +// void app_led_marquee(void); + +// void app_led_change_style_disable(void); #endif diff --git a/Code/app/src/app_led.c b/Code/app/src/app_led.c index f1b33ce..b770cc6 100644 --- a/Code/app/src/app_led.c +++ b/Code/app/src/app_led.c @@ -12,24 +12,72 @@ *************************************************************************************/ #include "app_led.h" #include "mw_led.h" +#include "mw_soft_timer.h" #include "stdint.h" #include "stdio.h" -#include "mw_soft_timer.h" +// #include "mw_soft_timer.h" -#include "bsp.h" +// #include "bsp.h" +#define LED_RUN_MODE_INDICATOR (LED1) -void app_led_marquee(void) +// #define LED_RUNMODE_IDLE_BLINK_PERIOD_MS (500u) +// #define LED_RUNMODE_RUNNING_BLINK_PERIOD_MS (500u) +/* led的灯状态 */ +typedef enum { - // static uint8_t tmp_state = 0; - // static uint32_t tmp_tick = 0; + led_mode_idle = 0, + led_mode_running, + led_mode_fault, - // if(get_systick_ms() - tmp_tick > 500) - // { - // tmp_tick = get_systick_ms(); - bsp_LedToggle(LED1); - // } + led_mode_num +}app_led_mode_enum; + + + + +static app_led_mode_enum app_led_mode; +static mw_led_t led_runMode_indicator; + + + +void app_led_indicator_idleMode(void) +{ + +} + + +void app_led1_blink_process(void) +{ + // 通过闪烁的频率 对外表示当前的模式 + switch(app_led_mode) + { + case led_mode_idle: + app_led_indicator_idleMode(); + break; + + } +} + + +// void app_led_marquee(void) +// { +// // static uint8_t tmp_state = 0; +// // static uint32_t tmp_tick = 0; + +// // if(get_systick_ms() - tmp_tick > 500) +// // { +// // tmp_tick = get_systick_ms(); +// bsp_LedToggle(LED1); +// // } + +// } + +void app_led_init(void) +{ + // 注册LED工作状态指示器 + led_runMode_indicator = mw_get_led_obj(LED_RUN_MODE_INDICATOR); } diff --git a/Code/app/src/main.c b/Code/app/src/main.c index 9dc03ad..32568b3 100644 --- a/Code/app/src/main.c +++ b/Code/app/src/main.c @@ -31,6 +31,7 @@ *************************************************************************************/ void bsp_init(void) { + bsp_timer_init(); // bsp_InitTimer(); // bsp_usart_1_init(115200); // bsp_Init(); @@ -58,14 +59,18 @@ void middleware_init(void) *************************************************************************************/ int main(void) { + mw_led_t led1; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); - // bsp_init(); - + bsp_init(); middleware_init(); - + led1 = mw_get_led_obj(LED1); while (1) { + bsp_DelayMS(500); + led1.on(); + bsp_DelayMS(500); + led1.off(); // bsp_pwm_test_loop(); } } diff --git a/Code/bsp/bsp.c b/Code/bsp/bsp.c index 3eeed05..759ab80 100644 --- a/Code/bsp/bsp.c +++ b/Code/bsp/bsp.c @@ -86,7 +86,7 @@ void bsp_RunPer1ms(void) else { ubCounter = 0x00; - bsp_LedToggle(LED1); + // bsp_LedToggle(LED1); } } diff --git a/Code/bsp/inc/bsp_timer.h b/Code/bsp/inc/bsp_timer.h index e29cc89..d9bc3d2 100644 --- a/Code/bsp/inc/bsp_timer.h +++ b/Code/bsp/inc/bsp_timer.h @@ -14,12 +14,12 @@ #ifndef __BSP_TIMER_H #define __BSP_TIMER_H -#include "stdint.h" +#include /* 在此定义若干个软件定时器全局变量 注意,必须增加__IO 即 volatile,因为这个变量在中断和主程序中同时被访问,有可能造成编译器错误优化。 */ -#define TMR_COUNT 1 /* 软件定时器的个数 (定时器ID范围 0 - 3) */ +#define TMR_COUNT 4 /* 软件定时器的个数 (定时器ID范围 0 - 3) */ /* 定时器结构体,成员变量必须是 volatile, 否则C编译器优化时可能有问题 */ typedef enum @@ -38,7 +38,7 @@ typedef struct }SOFT_TMR; /* 提供给其他C文件调用的函数 */ -void bsp_InitTimer(void); +// void bsp_InitTimer(void); void bsp_DelayMS(uint32_t n); void bsp_DelayUS(uint32_t n); void bsp_StartTimer(uint8_t _id, uint32_t _period); @@ -47,7 +47,7 @@ void bsp_StopTimer(uint8_t _id); uint8_t bsp_CheckTimer(uint8_t _id); int32_t bsp_GetRunTime(void); -void bsp_InitHardTimer(void); +void bsp_timer_init(void); void bsp_StartHardTimer(uint8_t _CC, uint32_t _uiTimeOut, void * _pCallBack); diff --git a/Code/bsp/src/bsp_led.c b/Code/bsp/src/bsp_led.c new file mode 100644 index 0000000..f34b413 --- /dev/null +++ b/Code/bsp/src/bsp_led.c @@ -0,0 +1,161 @@ +#include "bsp_led.h" +#include "stm32f10x_gpio.h" +#include "stm32f10x_rcc.h" +#include "stm32f10x.h" +#include "stdint.h" +#include "public_diy.h" + +/* led define */ + /* + STM32F103C8 LED口线分配: + LED1 : PC13 (低电平点亮,高电平熄灭) + LED2 : + LED3 : + LED4 : + */ +/* 按键口对应的RCC时钟 */ +// #define RCC_ALL_LED (RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOB) +#define RCC_GPIO_LED1 RCC_APB2Periph_GPIOC +#define GPIO_PORT_LED1 GPIOC +#define GPIO_PIN_LED1 GPIO_Pin_13 + +#define RCC_GPIO_LED2 RCC_APB2Periph_GPIOB +#define GPIO_PORT_LED2 GPIOB +#define GPIO_PIN_LED2 GPIO_Pin_9 + +/************************************************************************************* + * @brief 开启led + * @param[in/out] led_no【参数注释】 + * + * @warning 【不可重入,阻塞等警告】 + * @note 【重大修改】 + *************************************************************************************/ +void bsp_led_on(uint8_t led_no) +{ + if (led_no == (LED1)) + { + // STM32F103C8T6开发板 1是亮,0是灭 + // GPIO_PORT_LED1->BRR = GPIO_PIN_LED1; + GPIO_PORT_LED1->BSRR |= GPIO_PIN_LED1; + } + if (led_no == (LED2)) + { + // STM32F103C8T6开发板 1是亮,0是灭 + GPIO_PORT_LED2->BSRR |= GPIO_PIN_LED2; + } +} +/************************************************************************************* + * @brief 关闭Led + * @param[in/out] _no 【参数注释】 + * + * @warning 【不可重入,阻塞等警告】 + * @note 【重大修改】 + *************************************************************************************/ +void bsp_led_off(uint8_t led_no) +{ + if(led_no == LED1) + { + // STM32F103C8T6开发板 1是亮,0是灭 + GPIO_PORT_LED1->BRR = GPIO_PIN_LED1; + } + else if(led_no == LED2) + { + GPIO_PORT_LED2->BRR = GPIO_PIN_LED2; + } + else + { + ; + } + +} +/************************************************************************************* + * @brief led状态切换 + * @param[in/out] led_no【参数注释】 + * + * @warning 【不可重入,阻塞等警告】 + * @note 【重大修改】 + *************************************************************************************/ +void bsp_led_toggle(uint8_t led_no) +{ + if (led_no == LED1) + { + GPIO_PORT_LED1->ODR ^= GPIO_PIN_LED1; + } + else if (led_no == LED2) + { + GPIO_PORT_LED2->ODR ^= GPIO_PIN_LED2; + } + else + { + ; + } +} +/************************************************************************************* + * @brief 获取led当前的电平状态 + * @return uint8_t 【返回值注释】 + * + * @warning 【不可重入,阻塞等警告】 + * @note 【重大修改】 + *************************************************************************************/ +uint8_t bsp_get_led_ttlState(led_type_enum led_no) +{ + uint8_t retVal = 0; + if(led_no == (LED1)) + { + // STM32F103C8T6开发板 1是亮,0是灭 + // GPIO_PORT_LED1->BRR = GPIO_PIN_LED1; + retVal = GPIO_PORT_LED1->ODR & GPIO_PIN_LED1; + } + else if(led_no == (LED2)) + { + // STM32F103C8T6开发板 1是亮,0是灭 + retVal = GPIO_PORT_LED2->ODR & GPIO_PIN_LED2; + } + return retVal; +} + + +/************************************************************************************* + * @brief 初始化Led + * + * @warning 【不可重入,阻塞等警告】 + * @note 【重大修改】 + *************************************************************************************/ +void bsp_led1_init(void) +{ + GPIO_InitTypeDef GPIO_InitStructure; + /* 打开GPIO时钟 */ + RCC_APB2PeriphClockCmd(RCC_GPIO_LED1, ENABLE); + + /* + 配置所有的LED指示灯GPIO为推挽输出模式 + 由于将GPIO设置为输出时,GPIO输出寄存器的值缺省是0,因此会驱动LED点亮. + 这是我不希望的,因此在改变GPIO为输出前,先关闭LED指示灯 + */ + bsp_led_off(LED1); + + /* LED 1*/ + GPIO_InitStructure.GPIO_Pin = GPIO_PIN_LED1; + GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; /* 设为 输出推挽模式 */ + GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; /* IO口最大速度 */ + GPIO_Init(GPIO_PORT_LED1, &GPIO_InitStructure); +} + +void bsp_led2_init(void) +{ + GPIO_InitTypeDef GPIO_InitStructure; + /* 打开GPIO时钟 */ + RCC_APB2PeriphClockCmd(RCC_GPIO_LED2, ENABLE); + + /* + 配置所有的LED指示灯GPIO为推挽输出模式 + 由于将GPIO设置为输出时,GPIO输出寄存器的值缺省是0,因此会驱动LED点亮. + 这是我不希望的,因此在改变GPIO为输出前,先关闭LED指示灯 + */ + bsp_led_off(LED2); + /* LED 2*/ + GPIO_InitStructure.GPIO_Pin = GPIO_PIN_LED2; + GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; /* 设为 输出推挽模式 */ + GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; /* IO口最大速度 */ + GPIO_Init(GPIO_PORT_LED2, &GPIO_InitStructure); +} diff --git a/Code/bsp/src/bsp_timer-old.c b/Code/bsp/src/bsp_timer-old.c deleted file mode 100644 index 987ce8b..0000000 --- a/Code/bsp/src/bsp_timer-old.c +++ /dev/null @@ -1,59 +0,0 @@ -#include "bsp_timer.h" -#include "stm32f10x_tim.h" -#include "stm32f10x_rcc.h" -#include "misc.h" -#include "stm32f10x.h" - -#define BSP_TIMER_USER_SYSTICK_TYPE (TIM2) -#define BSP_TIMER_USER_SYSTICK_RCC (RCC_APB1Periph_TIM2) -#define BSP_TIMER_USER_SYSTICK_IRQN (TIM2_IRQn) -#define BSP_TINER_USER_SYSTICK_PRESCALER (72 - 1) -#define BSP_TINER_USER_SYSTICK_PERIOD (1000u) - - -/************************************************************************************* - * @brief 定时器初始化 - * - * @warning 【不可重入,阻塞等警告】 - * @note 【重大修改】 - *************************************************************************************/ -static void bsp_timer_2_init(void) -{ - TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; - NVIC_InitTypeDef NVIC_InitStructure; - - /* 1. 初始化时钟 */ - RCC_APB1PeriphClockCmd(BSP_TIMER_USER_SYSTICK_RCC, ENABLE); - /* 2. 初始化定时器参数,设置自动重装值,分频系数,计数方式等 */ - TIM_TimeBaseStructure.TIM_Period = BSP_TINER_USER_SYSTICK_PERIOD; - TIM_TimeBaseStructure.TIM_Prescaler =BSP_TINER_USER_SYSTICK_PRESCALER; - TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; - TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; - TIM_TimeBaseInit(BSP_TIMER_USER_SYSTICK_TYPE, &TIM_TimeBaseStructure); - /* 3. 设置 TIM3_DIER 允许更新中断 */ - TIM_ITConfig(BSP_TIMER_USER_SYSTICK_TYPE, TIM_IT_Update, ENABLE); - /* 4. TIM3 中断优先级设置。 */ - NVIC_InitStructure.NVIC_IRQChannel = BSP_TIMER_USER_SYSTICK_IRQN; //TIM3 中断 - NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; //先占优先级 0 级 - NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3; //从优先级 3 级 - NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //IRQ 通道被使能 - NVIC_Init(&NVIC_InitStructure); //初始化 NVIC 寄存器 - /* 5. 使能定时器2 */ - TIM_Cmd(BSP_TIMER_USER_SYSTICK_TYPE, ENABLE); -} - -// /* 6. 编写中断服务函数 */ -// void bsp_timer_user_systick_isr_process(void) //TIM3 中断 -// { -// if (TIM_GetITStatus(BSP_TIMER_USER_SYSTICK_TYPE, TIM_IT_Update) != RESET) -// { -// // 硬件置了1,需要软件来清0 -// TIM_ClearITPendingBit(BSP_TIMER_USER_SYSTICK_TYPE, TIM_IT_Update); -// /* add your code here */ - -// } -// } -void bsp_timer_init(void) -{ - bsp_timer_2_init(); -} diff --git a/Code/bsp/src/bsp_timer.c b/Code/bsp/src/bsp_timer.c index 6c654dd..3826514 100644 --- a/Code/bsp/src/bsp_timer.c +++ b/Code/bsp/src/bsp_timer.c @@ -77,9 +77,10 @@ static void (*s_TIM_CallBack4)(void); */ extern void bsp_RunPer1ms(void); extern void bsp_RunPer10ms(void); + void SysTick_ISR(void) { - static uint8_t s_count = 0; +// static uint8_t s_count = 0; uint8_t i; /* 每隔1ms进来1次 (仅用于 bsp_DelayMS) */ @@ -98,20 +99,20 @@ void SysTick_ISR(void) } /* 全局运行时间每1ms增1 */ - g_iRunTime++; - if (g_iRunTime == 0x7FFFFFFF) /* 这个变量是 int32_t 类型,最大数为 0x7FFFFFFF */ - { - g_iRunTime = 0; - } + // g_iRunTime++; + // if (g_iRunTime == 0x7FFFFFFF) /* 这个变量是 int32_t 类型,最大数为 0x7FFFFFFF */ + // { + // g_iRunTime = 0; + // } - bsp_RunPer1ms(); /* 每隔1ms调用一次此函数,此函数在 bsp.c */ + // bsp_RunPer1ms(); /* 每隔1ms调用一次此函数,此函数在 bsp.c */ - if (++s_count >= 10) - { - s_count = 0; + // if (++s_count >= 10) + // { + // s_count = 0; - bsp_RunPer10ms(); /* 每隔10ms调用一次此函数,此函数在 bsp.c */ - } + // bsp_RunPer10ms(); /* 每隔10ms调用一次此函数,此函数在 bsp.c */ + // } } /* @@ -168,7 +169,7 @@ void bsp_DelayMS(uint32_t n) while (1) { - bsp_Idle(); /* CPU空闲执行的操作, 见 bsp.c 和 bsp.h 文件 */ + // bsp_Idle(); /* CPU空闲执行的操作, 见 bsp.c 和 bsp.h 文件 */ /* 等待延迟时间到 @@ -360,18 +361,7 @@ int32_t bsp_GetRunTime(void) return runtime; } -/* -********************************************************************************************************* -* 函 数 名: SysTick_Handler -* 功能说明: 系统嘀嗒定时器中断服务程序。启动文件中引用了该函数。 -* 形 参: 无 -* 返 回 值: 无 -********************************************************************************************************* -*/ -void SysTick_Handler(void) -{ - SysTick_ISR(); -} + /************************************************************************************* * @brief 配置 TIM2,用于us级别硬件定时。自由运行,永不停止. @@ -652,7 +642,7 @@ void bsp_StartHardTimer(uint8_t _CC, uint32_t _uiTimeOut, void * _pCallBack) * 返 回 值: 无 ********************************************************************************************************* */ -void bsp_InitTimer(void) +void bsp_timer_init(void) { uint8_t i; @@ -679,11 +669,11 @@ void bsp_InitTimer(void) */ SysTick_Config(SystemCoreClock / 1000); /* 开启硬件定时中断 */ - bsp_InitHardTimer(); - /* 初始化外部输入定时器 */ - bsp_InitExternInputTimer(); - /* 初始化 pwm 输出比较 */ - bsp_pwm_init(); + // bsp_InitHardTimer(); + // /* 初始化外部输入定时器 */ + // bsp_InitExternInputTimer(); + // /* 初始化 pwm 输出比较 */ + // bsp_pwm_init(); } /************************************************************************************* @@ -699,7 +689,7 @@ void TIM2_IRQHandler(void) { TIM_ClearITPendingBit(TIM_EXTERN_INPUT, TIM_IT_Update); /* add your code here. */ - bsp_LedToggle(LED1); + // bsp_LedToggle(LED1); } } @@ -716,7 +706,7 @@ void TIM3_IRQHandler(void) { TIM_ClearITPendingBit(TIM_HARD, TIM_IT_Update); /* add your code here. */ - bsp_LedToggle(LED2); + // bsp_LedToggle(LED2); } @@ -757,5 +747,17 @@ void TIM3_IRQHandler(void) } } +/* +********************************************************************************************************* +* 函 数 名: SysTick_Handler +* 功能说明: 系统嘀嗒定时器中断服务程序。启动文件中引用了该函数。 +* 形 参: 无 +* 返 回 值: 无 +********************************************************************************************************* +*/ +void SysTick_Handler(void) +{ + SysTick_ISR(); +} /***************************** 安富莱电子 www.armfly.com (END OF FILE) *********************************/ diff --git a/Code/middleware/Led/mw_led.h b/Code/middleware/Led/mw_led.h index abcc0e9..59c6efc 100644 --- a/Code/middleware/Led/mw_led.h +++ b/Code/middleware/Led/mw_led.h @@ -2,6 +2,7 @@ #define __MW_LED_H__ #include "bsp_led.h" +#include "bsp_timer.h" typedef struct { diff --git a/Code/middleware/internal/inc/mw_soft_timer.h b/Code/middleware/internal/inc/mw_soft_timer.h index 1754cce..5fcd03c 100644 --- a/Code/middleware/internal/inc/mw_soft_timer.h +++ b/Code/middleware/internal/inc/mw_soft_timer.h @@ -3,8 +3,14 @@ #include "stdint.h" -uint32_t get_systick_ms(void); +// uint32_t get_systick_ms(void); -void mw_soft_timer_user_systick_update(void); +// void mw_soft_timer_user_systick_update(void); +void mw_softTimer_led_indicator_config(uint32_t period); +/** + * 函数定义: 获取LED工作状态指示灯的软件定时器是否超时。当读取为1的时候,自动清0 + * + */ +uint8_t mw_softTimer_get_led_indicator_timeUp_flag(void); #endif diff --git a/Code/middleware/internal/src/mw_soft_timer.c b/Code/middleware/internal/src/mw_soft_timer.c index a75a95f..706e1e0 100644 --- a/Code/middleware/internal/src/mw_soft_timer.c +++ b/Code/middleware/internal/src/mw_soft_timer.c @@ -1,7 +1,8 @@ #include "mw_soft_timer.h" #include "bsp_timer.h" - +// LED工作状态指示灯 使用的软件定时器编号 +#define LED_INDICATOR_SOFTTIMER_NO (0u) // 用户使用的systick时间 volatile static uint32_t systick_ms = 0; @@ -15,5 +16,20 @@ void mw_soft_timer_user_systick_update(void) ++systick_ms; } +/** + * 配置LED工作状态指示灯的软件定时器周期 单位 ms + * +*/ +void mw_softTimer_led_indicator_config(uint32_t period) +{ + bsp_StartTimer(LED_INDICATOR_SOFTTIMER_NO, period); +} - +/** + * 函数定义: 获取LED工作状态指示灯的软件定时器是否超时。当读取为1的时候,自动清0 + * + */ +uint8_t mw_softTimer_get_led_indicator_timeUp_flag(void) +{ + return bsp_CheckTimer(LED_INDICATOR_SOFTTIMER_NO); +} \ No newline at end of file diff --git a/Project/Output/TianyunV1.hex b/Project/Output/TianyunV1.hex index b96f1d8..ac74e1c 100644 --- a/Project/Output/TianyunV1.hex +++ b/Project/Output/TianyunV1.hex @@ -1,117 +1,173 @@ :020000040800F2 -:10000000880600206D0100087501000877010008CE -:10001000790100087B0100087D0100080000000054 -:100020000000000000000000000000007F01000848 -:10003000810100080000000083010008850100081C -:100040008701000887010008870100088701000870 -:100050008701000887010008870100088701000860 -:100060008701000887010008870100088701000850 -:100070008701000887010008870100088701000840 -:100080008701000887010008870100088701000830 -:100090008701000887010008870100088701000820 -:1000A0008701000887010008870100088701000810 -:1000B0008701000887010008870100088701000800 -:1000C00087010008870100088701000887010008F0 -:1000D00087010008B90400088701000887010008AB -:1000E00087010008870100088701000800F002F876 -:1000F00000F02CF80AA090E8000C82448344AAF196 -:100100000107DA4501D100F021F8AFF2090EBAE893 +:10000000C80600208901000891010008930100083A +:100010009501000897010008990100080000000000 +:100020000000000000000000000000009B0100082C +:100030009D010008000000009F010008DD04000889 +:10004000A3010008A3010008A3010008A301000800 +:10005000A3010008A3010008A3010008A3010008F0 +:10006000A3010008A3010008A3010008A3010008E0 +:10007000A3010008A3010008A3010008A3010008D0 +:10008000A3010008A3010008A3010008A3010008C0 +:10009000A3010008A3010008A3010008A3010008B0 +:1000A000A3010008A3010008A3010008A3010008A0 +:1000B00089050008A1050008A3010008A3010008A4 +:1000C000A3010008A3010008A3010008A301000880 +:1000D000A301000891060008A3010008A30100087D +:1000E000A3010008A3010008A301000800F002F822 +:1000F00000F03AF80AA090E8000C82448344AAF188 +:100100000107DA4501D100F02FF8AFF2090EBAE885 :100110000F0013F0010F18BFFB1A43F0010318473B -:10012000F005000000060000002300240025002642 -:10013000103A28BF78C1FBD8520728BF30C148BF4A -:100140000B6070471FB51FBD10B510BD00F031F832 -:100150001146FFF7F7FF00F073FA00F04FF803B411 -:10016000FFF7F2FF03BC00F057F800000948804792 -:1001700009480047FEE7FEE7FEE7FEE7FEE7FEE789 -:10018000FEE7FEE7FEE7FEE704480549054A064BA1 -:100190007047000059040008ED00000888000020A6 -:1001A00088060020880200208802002070477047DF -:1001B0007047754600F02CF8AE4605006946534678 -:1001C00020F00700854618B020B5FFF7DDFFBDE839 -:1001D00020404FF000064FF000074FF000084FF0AE -:1001E000000B21F00701AC46ACE8C009ACE8C0093F -:1001F000ACE8C009ACE8C0098D46704710B50446AC -:10020000AFF300802046BDE81040FFF7A8BF000014 -:10021000004870472800002001491820ABBEFEE7C7 -:100220002600020070472DE9F04102460025002615 -:10023000002000230024002791F803C00CF00F05D4 -:1002400091F803C00CF0100CBCF1000F03D091F832 -:1002500002C04CEA050591F800C0BCF1000F31D096 -:10026000146800202BE04FF0010C0CFA00F3B1F8F9 -:1002700000C00CEA03069E4220D183004FF00F0C11 -:100280000CFA03F7BC4305FA03FC4CEA040491F8AA -:1002900003C0BCF1280F06D14FF0010C0CFA00FC92 -:1002A000C2F814C00AE091F803C0BCF1480F05D1B0 -:1002B0004FF0010C0CFA00FCC2F810C0401C0828DA -:1002C000D1D31460B1F800C0BCF1FF0F34DD546825 -:1002D00000202EE000F1080C4FF0010808FA0CF3A2 -:1002E000B1F800C00CEA03069E4221D183004FF012 -:1002F0000F0C0CFA03F7BC4305FA03FC4CEA0404A8 -:1003000091F803C0BCF1280F05D100F1080C08FAE0 -:100310000CF8C2F8148091F803C0BCF1480F07D163 -:1003200000F1080C4FF0010808FA0CF8C2F8108030 -:10033000401C0828CED35460BDE8F0810249014337 -:10034000024A1160704700000000FA050CED00E061 -:1003500029B1064A92690243044B9A6104E0034AB8 -:1003600092698243014B9A6170470000001002407D -:1003700010B500F001F810BD0CB500200190009000 -:100380003348006840F480303149086000BF30488D -:10039000006800F4003000900198401C0190009823 -:1003A00018B90198B0F5A06FF1D12948006800F4A0 -:1003B000003010B10120009001E000200090009872 -:1003C000012843D12348006840F01000214908600B -:1003D0000846006820F0070008600846006840F002 -:1003E000020008601A484068194948600846406899 -:1003F00048600846406840F48060486008464068AD -:1004000020F47C1048600846406840F4E8104860DA -:100410000846006840F08070086000BF0C48006823 -:1004200000F000700028F9D00948406820F003006F -:10043000074948600846406840F00200486000BF35 -:100440000348406800F00C000828F9D10CBD0000FA -:10045000001002400020024010B51348006840F030 -:1004600001001149086008464068104908400E49DB -:100470004860084600680E4908400B490860084675 -:10048000006820F4802008600846406820F4FE00E0 -:1004900048604FF41F008860FFF76AFF4FF000606C -:1004A0000449086010BD0000001002400000FFF881 -:1004B000FFFFF6FE08ED00E010B540F226610C48A3 -:1004C00000F027F820B140F22661094800F012F848 -:1004D00040F22551064800F01CF840B140F2255189 -:1004E000034800F007F8024800F03DF8C4B210BD20 -:1004F0000038014010B50022002340F66A14A142E2 -:1005000000D100BF0A1201249440A3B2DC4304804E -:1005100010BD70B50246002400230025002040F6DF -:100520006A16B14200D100BFC1F3421501F01F03AA -:10053000012606FA03F3012D02D19689334006E025 -:10054000022D02D1168A334001E0968A33400C1204 -:10055000012606FA04F41688344013B10CB10120C8 -:1005600000E0002070BD01468888C0F30800704795 -:100570000146002009B9044AD268012902D1034A80 -:100580001268002070470000001001400C0C014070 -:1005900008B501211020FFF7DBFE002000F02CF849 -:1005A0004FF40050ADF8000010208DF80300032038 -:1005B0008DF8020069460248FFF735FE08BD0000CD -:1005C0000010014008B501210820FFF7C1FE0120FD -:1005D00000F012F84FF40070ADF8000010208DF814 -:1005E000030003208DF8020069460248FFF71BFE56 -:1005F00008BD0000000C014020B94FF40051044A2E -:10060000516104E0012802D14102024A11607047A1 -:1006100000100140140C014028B90749096941F450 -:100620000051054A1161012805D10449096841F4C6 -:100630000071024A1160704700100140100C014027 -:100640004FF4A060FFF77AFE00F002F800BFFEE76B -:1006500010B500F025F810BD10B500240020FFF7FC -:1006600087FF0446204610BD10B500240120FFF787 -:100670007FFF0446204610BD10B50020FFF7BCFFE9 -:1006800010BD10B50020FFF7C7FF10BD10B5012049 -:10069000FFF7B2FF10BD10B50120FFF7BDFF10BD81 -:1006A00010B5002011490870114848601148886051 -:1006B0001148C860114808610120087510490B48AD -:1006C00081611049C16110490162104941620024F1 -:1006D00008E004EB8401054A02EB81014868804789 -:1006E000601CC4B2022CF4DB10BD0000000000202E -:1006F00091050008830600087906000859060008DD -:10070000C5050008970600088D0600086906000860 -:1007100020070008000000208806000028010008CB +:100120002809000048090000103A24BF78C878C1A7 +:10013000FAD8520724BF30C830C144BF04680C60ED +:10014000704700000023002400250026103A28BF35 +:1001500078C1FBD8520728BF30C148BF0B60704739 +:100160001FB51FBD10B510BD00F063F81146FFF7B5 +:10017000F7FF00F0D5FB00F081F803B4FFF7F2FFC2 +:1001800003BC00F08BF8000009488047094800478D +:10019000FEE7FEE7FEE7FEE7FEE7FEE7FEE7FEE737 +:1001A000FEE7FEE704480549054A064B7047000094 +:1001B00029050008ED000008C8000020C80600203E +:1001C000C8020020C802002010B5203AC0F00B8001 +:1001D000B1E81850203AA0E81850B1E81850A0E84B +:1001E0001850BFF4F5AF5FEA027C24BFB1E81850A5 +:1001F000A0E8185044BF18C918C0BDE810405FEA15 +:10020000827C24BF51F8043B40F8043B08BF704790 +:10021000D20728BF31F8023B48BF11F8012B28BF95 +:1002200020F8023B48BF00F8012B70477047704729 +:100230007047754600F02CF8AE46050069465346F7 +:1002400020F00700854618B020B5FFF7ABFFBDE8EA +:1002500020404FF000064FF000074FF000084FF02D +:10026000000B21F00701AC46ACE8C009ACE8C009BE +:10027000ACE8C009ACE8C0098D46704710B504462B +:10028000AFF300802046BDE81040FFF776BF0000C6 +:1002900000487047640000207047000001491820A2 +:1002A000ABBEFEE7260002002DE9F0410246002524 +:1002B0000026002000230024002791F803C00CF042 +:1002C0000F0591F803C00CF0100CBCF1000F03D027 +:1002D00091F802C04CEA050591F800C0BCF1000F8E +:1002E00031D0146800202BE04FF0010C0CFA00F321 +:1002F000B1F800C00CEA03069E4220D183004FF003 +:100300000F0C0CFA03F7BC4305FA03FC4CEA040497 +:1003100091F803C0BCF1280F06D14FF0010C0CFA84 +:1003200000FCC2F814C00AE091F803C0BCF1480F09 +:1003300005D14FF0010C0CFA00FCC2F810C0401CB3 +:100340000828D1D31460B1F800C0BCF1FF0F34DD30 +:10035000546800202EE000F1080C4FF0010808FA64 +:100360000CF3B1F800C00CEA03069E4221D18300D1 +:100370004FF00F0C0CFA03F7BC4305FA03FC4CEAF0 +:10038000040491F803C0BCF1280F05D100F1080C5A +:1003900008FA0CF8C2F8148091F803C0BCF1480FB9 +:1003A00007D100F1080C4FF0010808FA0CF8C2F868 +:1003B0001080401C0828CED35460BDE8F0810000B6 +:1003C00002490143024A1160704700000000FA052B +:1003D0000CED00E029B1064A92690243044B9A6190 +:1003E00004E0034A92698243014B9A61704700001E +:1003F0000010024010B500F001F810BD0CB500204F +:10040000019000903348006840F480303149086022 +:1004100000BF3048006800F4003000900198401C94 +:100420000190009818B90198B0F5A06FF1D1294852 +:10043000006800F4003010B10120009001E00020BD +:1004400000900098012843D12348006840F0100034 +:10045000214908600846006820F007000860084647 +:10046000006840F0020008601A4840681949486076 +:100470000846406848600846406840F4806048602C +:100480000846406820F47C1048600846406840F404 +:10049000E81048600846006840F08070086000BFBF +:1004A0000C48006800F000700028F9D00948406846 +:1004B00020F00300074948600846406840F0020009 +:1004C000486000BF0348406800F00C000828F9D1DC +:1004D0000CBD0000001002400020024010B500F0EA +:1004E00001F810BD10B50D48006840B10B48006818 +:1004F000401E0A49086010B901200949087000240B +:1005000008E004EB4401074A02EB810000F040F9E7 +:10051000601CC4B2012CF4DB10BD00000000002000 +:10052000040000205800002010B51348006840F077 +:1005300001001149086008464068104908400E490A +:100540004860084600680E4908400B4908600846A4 +:10055000006820F4802008600846406820F4FE000F +:1005600048604FF41F008860FFF744FF4FF00060C1 +:100570000449086010BD0000001002400000FFF8B0 +:10058000FFFFF6FE08ED00E010B50121880700F03E +:1005900064F818B10121880700F05CF810BD000074 +:1005A00010B50121264800F058F818B1012124485F +:1005B00000F050F80221224800F04FF858B1022113 +:1005C0001F4800F047F8002202211D4800F056F8AD +:1005D0001C48006880470421194800F03EF858B1D3 +:1005E0000421174800F036F800220421144800F0D6 +:1005F00045F81548006880470821114800F02DF89B +:1006000058B108210E4800F025F8002208210C48B6 +:1006100000F034F80D48006880471021084800F0C9 +:100620001CF858B11021064800F014F800221021DF +:10063000034800F023F806480068804710BD00001A +:10064000000400400C0000201000002014000020D6 +:1006500018000020CA430282704730B502460020CD +:1006600000230024158A05EA0103958905EA01049F +:1006700013B10CB1012000E0002030BD1AB1838914 +:100680000B43838102E083898B43838170470000A1 +:1006900010B540F226610C4800F027F820B140F276 +:1006A0002661094800F012F840F22551064800F092 +:1006B0001CF840B140F22551034800F007F8024809 +:1006C00000F03DF8C4B210BD0038014010B5002262 +:1006D000002340F66A14A14200D100BF0A1201248F +:1006E0009440A3B2DC43048010BD70B502460024E0 +:1006F00000230025002040F66A16B14200D100BF59 +:10070000C1F3421501F01F03012606FA03F3012D80 +:1007100002D19689334006E0022D02D1168A334079 +:1007200001E0968A33400C12012606FA04F416887A +:10073000344013B10CB1012000E0002070BD01462F +:100740008888C0F30800704780F310887047000065 +:1007500010B5044604B910BD012C00D102240120BB +:10076000FFF7F2FF08480460002008490870FFF70F +:10077000EBFF04E005480078012800D100E0F9E72C +:1007800000BF00BFE7E700000000002004000020D9 +:10079000416851B14168491E416031B90121417040 +:1007A0000178012901D1816841607047014600202C +:1007B00011B9044AD26804E0012902D1024A126840 +:1007C00000207047001001400C0C014010B500F0F3 +:1007D00059F810BD08B501211020FFF7FBFD0020DE +:1007E00000F02CF84FF40050ADF8000010208DF808 +:1007F000030003208DF8020069460248FFF754FD0C +:1008000008BD00000010014008B501210820FFF7D5 +:10081000E1FD012000F012F84FF40070ADF8000087 +:1008200010208DF8030003208DF80200694602486D +:10083000FFF73AFD08BD0000000C014020B94FF45D +:100840000051044A516104E0012802D14102024AE8 +:100850001160704700100140140C014028B907498D +:10086000096941F40051054A1161012805D1044983 +:10087000096841F40071024A11607047001001409C +:10088000100C014070B5002016E0002100EB400282 +:100890001F4B03EB8202516000EB400203EB82022C +:1008A000916000EB400203EB8202517000EB4002CA +:1008B00003F82210411CC8B20128E6DB154909687B +:1008C0004FF47A73B1FBF3F2B2F1807F00D31DE0F5 +:1008D00022F07F41491E4FF0E023596159170F2341 +:1008E000002907DA1C07260E0B4C01F00F052D1FFF +:1008F000665503E01C07250E084C655400BF002117 +:100900004FF0E02399610721196100BF70BD00001D +:10091000580000201C00002018ED00E000E400E07A +:100920008AB04FF4A060FFF74BFDFFF74FFF00F0D8 +:1009300017F80021684600F027F81422694605A838 +:10094000FFF742FC0BE04FF4FA70FFF701FF079846 +:1009500080474FF4FA70FFF7FBFE08988047F2E7F4 +:1009600010B500F039F810BD10B500240020FFF7D5 +:100970001DFF0446204610BD10B500240120FFF7DE +:1009800015FF0446204610BD70B505460C46022CE6 +:1009900001DB00BFFEE704EB8400044A02EB8001A8 +:1009A00014222846FFF710FC70BD00003000002024 +:1009B00010B50020FFF742FF10BD10B50020FFF773 +:1009C0004DFF10BD10B50120FFF738FF10BD10B569 +:1009D0000120FFF743FF10BD10B50020114908703A +:1009E00011484860114888601148C8601148086182 +:1009F0000120087510490B4881611049C1611049F7 +:100A0000016210494162002408E004EB8401054AB8 +:100A100002EB810148688047601CC4B2022CF4DB01 +:100A200010BD000030000020D5070008BB090008F9 +:100A3000B10900086909000809080008CF09000881 +:100A4000C509000879090008680A000800000020AC +:100A50003000000028010008980A0008300000203B +:100A6000980600004401000800000000000000009B +:100A70000000000000000000000000000000000076 +:100A80000000000000A24A04000000000000000076 +:080A9000010203040607080936 :04000005080000ED02 :00000001FF diff --git a/Project/Output/TianyunV1.map b/Project/Output/TianyunV1.map index 62351ef..542c17f 100644 --- a/Project/Output/TianyunV1.map +++ b/Project/Output/TianyunV1.map @@ -4,8 +4,13 @@ Component: ARM Compiler 5.06 update 7 (build 960) Tool: armlink [4d3601] Section Cross References + main.o(i.bsp_init) refers to bsp_timer.o(i.bsp_timer_init) for bsp_timer_init main.o(i.main) refers to misc.o(i.NVIC_PriorityGroupConfig) for NVIC_PriorityGroupConfig + main.o(i.main) refers to main.o(i.bsp_init) for bsp_init main.o(i.main) refers to main.o(i.middleware_init) for middleware_init + main.o(i.main) refers to mw_led.o(i.mw_get_led_obj) for mw_get_led_obj + main.o(i.main) refers to rt_memcpy_w.o(.text) for __aeabi_memcpy4 + main.o(i.main) refers to bsp_timer.o(i.bsp_DelayMS) for bsp_DelayMS main.o(i.middleware_init) refers to mw_led.o(i.mw_led_drv_init) for mw_led_drv_init mw_led.o(i.mw_get_led1_state) refers to bsp_led.o(i.bsp_get_led_ttlState) for bsp_get_led_ttlState mw_led.o(i.mw_get_led2_state) refers to bsp_led.o(i.bsp_get_led_ttlState) for bsp_get_led_ttlState @@ -30,6 +35,84 @@ Section Cross References bsp_led.o(i.bsp_led2_init) refers to stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd) for RCC_APB2PeriphClockCmd bsp_led.o(i.bsp_led2_init) refers to bsp_led.o(i.bsp_led_off) for bsp_led_off bsp_led.o(i.bsp_led2_init) refers to stm32f10x_gpio.o(i.GPIO_Init) for GPIO_Init + bsp_timer.o(i.SysTick_Handler) refers to bsp_timer.o(i.SysTick_ISR) for SysTick_ISR + bsp_timer.o(i.SysTick_ISR) refers to bsp_timer.o(i.bsp_SoftTimerDec) for bsp_SoftTimerDec + bsp_timer.o(i.SysTick_ISR) refers to bsp_timer.o(.data) for s_uiDelayCount + bsp_timer.o(i.SysTick_ISR) refers to bsp_timer.o(.bss) for s_tTmr + bsp_timer.o(i.TIM2_IRQHandler) refers to stm32f10x_tim.o(i.TIM_GetITStatus) for TIM_GetITStatus + bsp_timer.o(i.TIM2_IRQHandler) refers to stm32f10x_tim.o(i.TIM_ClearITPendingBit) for TIM_ClearITPendingBit + bsp_timer.o(i.TIM3_IRQHandler) refers to stm32f10x_tim.o(i.TIM_GetITStatus) for TIM_GetITStatus + bsp_timer.o(i.TIM3_IRQHandler) refers to stm32f10x_tim.o(i.TIM_ClearITPendingBit) for TIM_ClearITPendingBit + bsp_timer.o(i.TIM3_IRQHandler) refers to stm32f10x_tim.o(i.TIM_ITConfig) for TIM_ITConfig + bsp_timer.o(i.TIM3_IRQHandler) refers to bsp_timer.o(.data) for s_TIM_CallBack1 + bsp_timer.o(i.bsp_CheckTimer) refers to bsp_timer.o(.bss) for s_tTmr + bsp_timer.o(i.bsp_DelayMS) refers to bsp_timer.o(i.__set_PRIMASK) for __set_PRIMASK + bsp_timer.o(i.bsp_DelayMS) refers to bsp_timer.o(.data) for s_uiDelayCount + bsp_timer.o(i.bsp_DelayUS) refers to system_stm32f10x.o(.data) for SystemCoreClock + bsp_timer.o(i.bsp_GetRunTime) refers to bsp_timer.o(i.__set_PRIMASK) for __set_PRIMASK + bsp_timer.o(i.bsp_GetRunTime) refers to bsp_timer.o(.data) for g_iRunTime + bsp_timer.o(i.bsp_InitExternInputTimer) refers to stm32f10x_rcc.o(i.RCC_APB1PeriphClockCmd) for RCC_APB1PeriphClockCmd + bsp_timer.o(i.bsp_InitExternInputTimer) refers to stm32f10x_tim.o(i.TIM_ETRClockMode2Config) for TIM_ETRClockMode2Config + bsp_timer.o(i.bsp_InitExternInputTimer) refers to stm32f10x_gpio.o(i.GPIO_Init) for GPIO_Init + bsp_timer.o(i.bsp_InitExternInputTimer) refers to stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd) for RCC_APB2PeriphClockCmd + bsp_timer.o(i.bsp_InitExternInputTimer) refers to stm32f10x_tim.o(i.TIM_TimeBaseInit) for TIM_TimeBaseInit + bsp_timer.o(i.bsp_InitExternInputTimer) refers to stm32f10x_tim.o(i.TIM_ITConfig) for TIM_ITConfig + bsp_timer.o(i.bsp_InitExternInputTimer) refers to stm32f10x_tim.o(i.TIM_ARRPreloadConfig) for TIM_ARRPreloadConfig + bsp_timer.o(i.bsp_InitExternInputTimer) refers to misc.o(i.NVIC_Init) for NVIC_Init + bsp_timer.o(i.bsp_InitExternInputTimer) refers to stm32f10x_tim.o(i.TIM_Cmd) for TIM_Cmd + bsp_timer.o(i.bsp_InitHardTimer) refers to stm32f10x_rcc.o(i.RCC_APB1PeriphClockCmd) for RCC_APB1PeriphClockCmd + bsp_timer.o(i.bsp_InitHardTimer) refers to stm32f10x_tim.o(i.TIM_InternalClockConfig) for TIM_InternalClockConfig + bsp_timer.o(i.bsp_InitHardTimer) refers to stm32f10x_tim.o(i.TIM_TimeBaseInit) for TIM_TimeBaseInit + bsp_timer.o(i.bsp_InitHardTimer) refers to stm32f10x_tim.o(i.TIM_ClearITPendingBit) for TIM_ClearITPendingBit + bsp_timer.o(i.bsp_InitHardTimer) refers to stm32f10x_tim.o(i.TIM_ITConfig) for TIM_ITConfig + bsp_timer.o(i.bsp_InitHardTimer) refers to stm32f10x_tim.o(i.TIM_ARRPreloadConfig) for TIM_ARRPreloadConfig + bsp_timer.o(i.bsp_InitHardTimer) refers to misc.o(i.NVIC_Init) for NVIC_Init + bsp_timer.o(i.bsp_InitHardTimer) refers to stm32f10x_tim.o(i.TIM_Cmd) for TIM_Cmd + bsp_timer.o(i.bsp_InitHardTimer) refers to system_stm32f10x.o(.data) for SystemCoreClock + bsp_timer.o(i.bsp_StartAutoTimer) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + bsp_timer.o(i.bsp_StartAutoTimer) refers to _printf_s.o(.ARM.Collect$$_printf_percent$$00000014) for _printf_s + bsp_timer.o(i.bsp_StartAutoTimer) refers to _printf_str.o(.text) for _printf_str + bsp_timer.o(i.bsp_StartAutoTimer) refers to noretval__2printf.o(.text) for __2printf + bsp_timer.o(i.bsp_StartAutoTimer) refers to bsp_timer.o(i.__set_PRIMASK) for __set_PRIMASK + bsp_timer.o(i.bsp_StartAutoTimer) refers to bsp_timer.o(.constdata) for __FUNCTION__ + bsp_timer.o(i.bsp_StartAutoTimer) refers to bsp_timer.o(.bss) for s_tTmr + bsp_timer.o(i.bsp_StartHardTimer) refers to stm32f10x_tim.o(i.TIM_GetCounter) for TIM_GetCounter + bsp_timer.o(i.bsp_StartHardTimer) refers to stm32f10x_tim.o(i.TIM_SetCompare1) for TIM_SetCompare1 + bsp_timer.o(i.bsp_StartHardTimer) refers to stm32f10x_tim.o(i.TIM_ClearITPendingBit) for TIM_ClearITPendingBit + bsp_timer.o(i.bsp_StartHardTimer) refers to stm32f10x_tim.o(i.TIM_ITConfig) for TIM_ITConfig + bsp_timer.o(i.bsp_StartHardTimer) refers to stm32f10x_tim.o(i.TIM_SetCompare2) for TIM_SetCompare2 + bsp_timer.o(i.bsp_StartHardTimer) refers to stm32f10x_tim.o(i.TIM_SetCompare3) for TIM_SetCompare3 + bsp_timer.o(i.bsp_StartHardTimer) refers to stm32f10x_tim.o(i.TIM_SetCompare4) for TIM_SetCompare4 + bsp_timer.o(i.bsp_StartHardTimer) refers to bsp_timer.o(.data) for s_TIM_CallBack1 + bsp_timer.o(i.bsp_StartTimer) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + bsp_timer.o(i.bsp_StartTimer) refers to _printf_s.o(.ARM.Collect$$_printf_percent$$00000014) for _printf_s + bsp_timer.o(i.bsp_StartTimer) refers to _printf_str.o(.text) for _printf_str + bsp_timer.o(i.bsp_StartTimer) refers to noretval__2printf.o(.text) for __2printf + bsp_timer.o(i.bsp_StartTimer) refers to bsp_timer.o(i.__set_PRIMASK) for __set_PRIMASK + bsp_timer.o(i.bsp_StartTimer) refers to bsp_timer.o(.constdata) for __FUNCTION__ + bsp_timer.o(i.bsp_StartTimer) refers to bsp_timer.o(.bss) for s_tTmr + bsp_timer.o(i.bsp_StopTimer) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + bsp_timer.o(i.bsp_StopTimer) refers to _printf_s.o(.ARM.Collect$$_printf_percent$$00000014) for _printf_s + bsp_timer.o(i.bsp_StopTimer) refers to _printf_str.o(.text) for _printf_str + bsp_timer.o(i.bsp_StopTimer) refers to noretval__2printf.o(.text) for __2printf + bsp_timer.o(i.bsp_StopTimer) refers to bsp_timer.o(i.__set_PRIMASK) for __set_PRIMASK + bsp_timer.o(i.bsp_StopTimer) refers to bsp_timer.o(.constdata) for __FUNCTION__ + bsp_timer.o(i.bsp_StopTimer) refers to bsp_timer.o(.bss) for s_tTmr + bsp_timer.o(i.bsp_change_pwm) refers to stm32f10x_tim.o(i.TIM_SetCompare1) for TIM_SetCompare1 + bsp_timer.o(i.bsp_pwm_init) refers to stm32f10x_rcc.o(i.RCC_APB1PeriphClockCmd) for RCC_APB1PeriphClockCmd + bsp_timer.o(i.bsp_pwm_init) refers to stm32f10x_tim.o(i.TIM_InternalClockConfig) for TIM_InternalClockConfig + bsp_timer.o(i.bsp_pwm_init) refers to stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd) for RCC_APB2PeriphClockCmd + bsp_timer.o(i.bsp_pwm_init) refers to stm32f10x_gpio.o(i.GPIO_StructInit) for GPIO_StructInit + bsp_timer.o(i.bsp_pwm_init) refers to stm32f10x_gpio.o(i.GPIO_Init) for GPIO_Init + bsp_timer.o(i.bsp_pwm_init) refers to stm32f10x_tim.o(i.TIM_TimeBaseInit) for TIM_TimeBaseInit + bsp_timer.o(i.bsp_pwm_init) refers to stm32f10x_tim.o(i.TIM_OCStructInit) for TIM_OCStructInit + bsp_timer.o(i.bsp_pwm_init) refers to stm32f10x_tim.o(i.TIM_OC1Init) for TIM_OC1Init + bsp_timer.o(i.bsp_pwm_init) refers to stm32f10x_tim.o(i.TIM_ARRPreloadConfig) for TIM_ARRPreloadConfig + bsp_timer.o(i.bsp_pwm_init) refers to stm32f10x_tim.o(i.TIM_Cmd) for TIM_Cmd + bsp_timer.o(i.bsp_pwm_test_loop) refers to bsp_timer.o(i.bsp_change_pwm) for bsp_change_pwm + bsp_timer.o(i.bsp_pwm_test_loop) refers to bsp_timer.o(i.bsp_DelayMS) for bsp_DelayMS + bsp_timer.o(i.bsp_timer_init) refers to bsp_timer.o(.bss) for s_tTmr + bsp_timer.o(i.bsp_timer_init) refers to system_stm32f10x.o(.data) for SystemCoreClock system_stm32f10x.o(i.SetSysClock) refers to system_stm32f10x.o(i.SetSysClockTo72) for SetSysClockTo72 system_stm32f10x.o(i.SystemCoreClockUpdate) refers to system_stm32f10x.o(.data) for SystemCoreClock system_stm32f10x.o(i.SystemInit) refers to system_stm32f10x.o(i.SetSysClock) for SetSysClock @@ -38,6 +121,9 @@ Section Cross References startup_stm32f10x_md.o(RESET) refers (Special) to heapauxi.o(.text) for __use_two_region_memory startup_stm32f10x_md.o(RESET) refers to startup_stm32f10x_md.o(STACK) for __initial_sp startup_stm32f10x_md.o(RESET) refers to startup_stm32f10x_md.o(.text) for Reset_Handler + startup_stm32f10x_md.o(RESET) refers to bsp_timer.o(i.SysTick_Handler) for SysTick_Handler + startup_stm32f10x_md.o(RESET) refers to bsp_timer.o(i.TIM2_IRQHandler) for TIM2_IRQHandler + startup_stm32f10x_md.o(RESET) refers to bsp_timer.o(i.TIM3_IRQHandler) for TIM3_IRQHandler startup_stm32f10x_md.o(RESET) refers to interrupt_handler.o(i.USART1_IRQHandler) for USART1_IRQHandler startup_stm32f10x_md.o(.text) refers (Special) to heapauxi.o(.text) for __use_two_region_memory startup_stm32f10x_md.o(.text) refers to system_stm32f10x.o(i.SystemInit) for SystemInit @@ -106,6 +192,29 @@ Section Cross References interrupt_handler.o(i.USART1_IRQHandler) refers to stm32f10x_usart.o(i.USART_GetITStatus) for USART_GetITStatus interrupt_handler.o(i.USART1_IRQHandler) refers to stm32f10x_usart.o(i.USART_ClearITPendingBit) for USART_ClearITPendingBit interrupt_handler.o(i.USART1_IRQHandler) refers to stm32f10x_usart.o(i.USART_ReceiveData) for USART_ReceiveData + __2printf.o(.text) refers to _printf_char_file.o(.text) for _printf_char_file + __2printf.o(.text) refers to stdio_streams.o(.bss) for __stdout + noretval__2printf.o(.text) refers to _printf_char_file.o(.text) for _printf_char_file + noretval__2printf.o(.text) refers to stdio_streams.o(.bss) for __stdout + __printf.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + _printf_str.o(.text) refers (Special) to _printf_char.o(.text) for _printf_cs_common + __printf_flags.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + __printf_flags.o(.text) refers to __printf_flags.o(.constdata) for .constdata + __printf_ss.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + __printf_flags_ss.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + __printf_flags_ss.o(.text) refers to __printf_flags_ss.o(.constdata) for .constdata + __printf_wp.o(.text) refers to __printf_wp.o(i._is_digit) for _is_digit + __printf_wp.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + __printf_flags_wp.o(.text) refers to __printf_wp.o(i._is_digit) for _is_digit + __printf_flags_wp.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + __printf_flags_wp.o(.text) refers to __printf_flags_wp.o(.constdata) for .constdata + __printf_ss_wp.o(.text) refers to __printf_wp.o(i._is_digit) for _is_digit + __printf_ss_wp.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + __printf_flags_ss_wp.o(.text) refers to __printf_wp.o(i._is_digit) for _is_digit + __printf_flags_ss_wp.o(.text) refers to _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) for _printf_percent + __printf_flags_ss_wp.o(.text) refers to __printf_flags_ss_wp.o(.constdata) for .constdata + _printf_s.o(.ARM.Collect$$_printf_percent$$00000014) refers (Weak) to _printf_char.o(.text) for _printf_string + _printf_percent.o(.ARM.Collect$$_printf_percent$$00000000) refers (Special) to _printf_percent_end.o(.ARM.Collect$$_printf_percent$$00000017) for _printf_percent_end __main.o(!!!main) refers to __rtentry.o(.ARM.Collect$$rtentry$$00000000) for __rt_entry __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) for __rt_entry_li __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) for __rt_entry_main @@ -113,6 +222,16 @@ Section Cross References __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$00000009) for __rt_entry_postsh_1 __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$00000002) for __rt_entry_presh_1 __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry4.o(.ARM.Collect$$rtentry$$00000004) for __rt_entry_sh + _printf_char.o(.text) refers (Weak) to _printf_str.o(.text) for _printf_str + _printf_char_file.o(.text) refers to _printf_char_common.o(.text) for _printf_char_common + _printf_char_file.o(.text) refers to ferror.o(.text) for ferror + _printf_char_file.o(.text) refers to fputc.o(i.fputc) for fputc + stdio_streams.o(.bss) refers (Special) to initio.o(.text) for _initio + stdio_streams.o(.bss) refers (Special) to initio.o(.text) for _initio + stdio_streams.o(.bss) refers (Special) to initio.o(.text) for _initio + stdio_streams.o(.data) refers (Special) to initio.o(.text) for _initio + stdio_streams.o(.data) refers (Special) to initio.o(.text) for _initio + stdio_streams.o(.data) refers (Special) to initio.o(.text) for _initio __rtentry2.o(.ARM.Collect$$rtentry$$00000008) refers to boardinit2.o(.text) for _platform_post_stackheap_init __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) refers to libinit.o(.ARM.Collect$$libinit$$00000000) for __rt_lib_init __rtentry2.o(.ARM.Collect$$rtentry$$0000000B) refers to boardinit3.o(.text) for _platform_post_lib_init @@ -125,9 +244,135 @@ Section Cross References __rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) for .ARM.Collect$$rtentry$$0000000D __rtentry4.o(.ARM.Collect$$rtentry$$00000004) refers to sys_stackheap_outer.o(.text) for __user_setup_stackheap __rtentry4.o(.ARM.exidx) refers to __rtentry4.o(.ARM.Collect$$rtentry$$00000004) for .ARM.Collect$$rtentry$$00000004 + _printf_char_common.o(.text) refers to __printf.o(.text) for __printf + fputc.o(i.fputc) refers to flsbuf.o(.text) for __flsbuf_byte + initio.o(.text) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000024) for __rt_lib_init_stdio_2 + initio.o(.text) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000005) for __rt_lib_shutdown_stdio_2 + initio.o(.text) refers to rt_memclr_w.o(.text) for __aeabi_memclr4 + initio.o(.text) refers to fopen.o(.text) for freopen + initio.o(.text) refers to defsig_rtred_outer.o(.text) for __rt_SIGRTRED + initio.o(.text) refers to setvbuf.o(.text) for setvbuf + initio.o(.text) refers to fclose.o(.text) for _fclose_internal + initio.o(.text) refers to h1_free.o(.text) for free + initio.o(.text) refers to stdio_streams.o(.bss) for __stdin + initio.o(.text) refers to stdio_streams.o(.bss) for __stdout + initio.o(.text) refers to stdio_streams.o(.bss) for __stderr + initio.o(.text) refers to stdio_streams.o(.data) for __aeabi_stdin + initio.o(.text) refers to stdio_streams.o(.data) for __aeabi_stdout + initio.o(.text) refers to stdio_streams.o(.data) for __aeabi_stderr + initio.o(.text) refers to sys_io.o(.constdata) for __stdin_name + initio.o(.text) refers to sys_io.o(.constdata) for __stdout_name + initio.o(.text) refers to sys_io.o(.constdata) for __stderr_name + initio_locked.o(.text) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000024) for __rt_lib_init_stdio_2 + initio_locked.o(.text) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000005) for __rt_lib_shutdown_stdio_2 + initio_locked.o(.text) refers to rt_memclr_w.o(.text) for __aeabi_memclr4 + initio_locked.o(.text) refers to fopen.o(.text) for freopen + initio_locked.o(.text) refers to defsig_rtred_outer.o(.text) for __rt_SIGRTRED + initio_locked.o(.text) refers to setvbuf.o(.text) for setvbuf + initio_locked.o(.text) refers to fclose.o(.text) for _fclose_internal + initio_locked.o(.text) refers to h1_free.o(.text) for free + initio_locked.o(.text) refers to stdio_streams.o(.bss) for __stdin + initio_locked.o(.text) refers to stdio_streams.o(.bss) for __stdout + initio_locked.o(.text) refers to stdio_streams.o(.bss) for __stderr + initio_locked.o(.text) refers to stdio_streams.o(.data) for __aeabi_stdin + initio_locked.o(.text) refers to stdio_streams.o(.data) for __aeabi_stdout + initio_locked.o(.text) refers to stdio_streams.o(.data) for __aeabi_stderr + initio_locked.o(.text) refers to streamlock.o(.data) for _stream_list_lock + initio_locked.o(.text) refers to sys_io.o(.constdata) for __stdin_name + initio_locked.o(.text) refers to sys_io.o(.constdata) for __stdout_name + initio_locked.o(.text) refers to sys_io.o(.constdata) for __stderr_name + sys_io.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting + sys_io.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function + sys_io.o(.text) refers to strlen.o(.text) for strlen + sys_io.o(.constdata) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting + sys_io.o(.constdata) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function + sys_io.o(.constdata) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting + sys_io.o(.constdata) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function + sys_io.o(.constdata) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting + sys_io.o(.constdata) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function sys_stackheap_outer.o(.text) refers to libspace.o(.text) for __user_perproc_libspace sys_stackheap_outer.o(.text) refers to startup_stm32f10x_md.o(.text) for __user_initial_stackheap + free.o(.text) refers (Special) to hguard.o(.text) for __heap$guard + free.o(.text) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + free.o(.text) refers to heapstubs.o(.text) for __Heap_Free + h1_free.o(.text) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + h1_free_mt.o(.text) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + heap2.o(i._FDIterate) refers to heap2.o(.conststring) for .conststring + heap2.o(i.___Heap_ProvideMemory$realtime) refers to fdtree.o(i._FDTree_Delete) for _FDTree_Delete + heap2.o(i.___Heap_ProvideMemory$realtime) refers to fdtree.o(i._FDTree_Insert) for _FDTree_Insert + heap2.o(i.___Heap_Stats$realtime) refers to heap2.o(i._Heap2_StatsIterate) for _Heap2_StatsIterate + heap2.o(i.___Heap_Valid$realtime) refers to heap2.o(i._FDIterate) for _FDIterate + heap2.o(i.___Heap_Valid$realtime) refers to heap2.o(.conststring) for .conststring + heap2.o(i._free$realtime) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + heap2.o(i._free$realtime) refers to fdtree.o(i._FDTree_Delete) for _FDTree_Delete + heap2.o(i._free$realtime) refers to fdtree.o(i._FDTree_Insert) for _FDTree_Insert + heap2.o(i._malloc$realtime) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + heap2.o(i._malloc$realtime) refers to fdtree.o(i._FDTree_FindFirst) for _FDTree_FindFirst + heap2.o(i._malloc$realtime) refers to init_alloc.o(.text) for __Heap_Full + heap2.o(i._malloc$realtime) refers to fdtree.o(i._FDTree_RemoveNode) for _FDTree_RemoveNode + heap2.o(i._malloc$realtime) refers to fdtree.o(i._FDTree_Insert) for _FDTree_Insert + heap2.o(i._posix_memalign$realtime) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + heap2.o(i._posix_memalign$realtime) refers to fdtree.o(i._FDTree_FindFirst) for _FDTree_FindFirst + heap2.o(i._posix_memalign$realtime) refers to init_alloc.o(.text) for __Heap_Full + heap2.o(i._posix_memalign$realtime) refers to fdtree.o(i._FDTree_RemoveNode) for _FDTree_RemoveNode + heap2.o(i._posix_memalign$realtime) refers to fdtree.o(i._FDTree_Insert) for _FDTree_Insert + heap2.o(i._realloc$realtime) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + heap2.o(i._realloc$realtime) refers to fdtree.o(i._FDTree_Insert) for _FDTree_Insert + heap2.o(i._realloc$realtime) refers to h1_free.o(.text) for free + heap2.o(i._realloc$realtime) refers to h1_alloc.o(.text) for malloc + heap2.o(i._realloc$realtime) refers to fdtree.o(i._FDTree_Delete) for _FDTree_Delete + heap2.o(i._realloc$realtime) refers to rt_memcpy_w.o(.text) for __aeabi_memcpy4 + heap2mt.o(i._FDIterate) refers to heap2mt.o(.conststring) for .conststring + heap2mt.o(i.___Heap_Initialize$realtime$concurrent) refers to mutex_dummy.o(.text) for _mutex_initialize + heap2mt.o(i.___Heap_ProvideMemory$realtime$concurrent) refers to fdtree.o(i._FDTree_Delete) for _FDTree_Delete + heap2mt.o(i.___Heap_ProvideMemory$realtime$concurrent) refers to fdtree.o(i._FDTree_Insert) for _FDTree_Insert + heap2mt.o(i.___Heap_Stats$realtime$concurrent) refers to heap2mt.o(i._Heap2_StatsIterate) for _Heap2_StatsIterate + heap2mt.o(i.___Heap_Valid$realtime$concurrent) refers to heap2mt.o(i._FDIterate) for _FDIterate + heap2mt.o(i.___Heap_Valid$realtime$concurrent) refers to heap2mt.o(.conststring) for .conststring + heap2mt.o(i._free$realtime$concurrent) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + heap2mt.o(i._free$realtime$concurrent) refers to fdtree.o(i._FDTree_Delete) for _FDTree_Delete + heap2mt.o(i._free$realtime$concurrent) refers to fdtree.o(i._FDTree_Insert) for _FDTree_Insert + heap2mt.o(i._malloc$realtime$concurrent) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + heap2mt.o(i._malloc$realtime$concurrent) refers to fdtree.o(i._FDTree_FindFirst) for _FDTree_FindFirst + heap2mt.o(i._malloc$realtime$concurrent) refers to init_alloc.o(.text) for __Heap_Full + heap2mt.o(i._malloc$realtime$concurrent) refers to fdtree.o(i._FDTree_RemoveNode) for _FDTree_RemoveNode + heap2mt.o(i._malloc$realtime$concurrent) refers to fdtree.o(i._FDTree_Insert) for _FDTree_Insert + heap2mt.o(i._posix_memalign$realtime$concurrent) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + heap2mt.o(i._posix_memalign$realtime$concurrent) refers to fdtree.o(i._FDTree_FindFirst) for _FDTree_FindFirst + heap2mt.o(i._posix_memalign$realtime$concurrent) refers to init_alloc.o(.text) for __Heap_Full + heap2mt.o(i._posix_memalign$realtime$concurrent) refers to fdtree.o(i._FDTree_RemoveNode) for _FDTree_RemoveNode + heap2mt.o(i._posix_memalign$realtime$concurrent) refers to fdtree.o(i._FDTree_Insert) for _FDTree_Insert + heap2mt.o(i._realloc$realtime$concurrent) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + heap2mt.o(i._realloc$realtime$concurrent) refers to fdtree.o(i._FDTree_Insert) for _FDTree_Insert + heap2mt.o(i._realloc$realtime$concurrent) refers to h1_free.o(.text) for free + heap2mt.o(i._realloc$realtime$concurrent) refers to h1_alloc.o(.text) for malloc + heap2mt.o(i._realloc$realtime$concurrent) refers to fdtree.o(i._FDTree_Delete) for _FDTree_Delete + heap2mt.o(i._realloc$realtime$concurrent) refers to rt_memcpy_w.o(.text) for __aeabi_memcpy4 + flsbuf.o(.text) refers to stdio.o(.text) for _deferredlazyseek + flsbuf.o(.text) refers to sys_io.o(.text) for _sys_flen + flsbuf.o(.text) refers to h1_alloc.o(.text) for malloc + streamlock.o(.data) refers (Special) to initio.o(.text) for _initio + fopen.o(.text) refers to fclose.o(.text) for _fclose_internal + fopen.o(.text) refers to sys_io.o(.text) for _sys_open + fopen.o(.text) refers to fseek.o(.text) for _fseek + fopen.o(.text) refers to h1_alloc.o(.text) for malloc + fopen.o(.text) refers to rt_memclr_w.o(.text) for __aeabi_memclr4 + fopen.o(.text) refers to stdio_streams.o(.bss) for __stdin + fclose.o(.text) refers to stdio.o(.text) for _fflush + fclose.o(.text) refers to sys_io.o(.text) for _sys_close + fclose.o(.text) refers to h1_free.o(.text) for free + fclose.o(.text) refers to rt_memclr_w.o(.text) for __aeabi_memclr4 + fopen_locked.o(.text) refers to fclose.o(.text) for _fclose_internal + fopen_locked.o(.text) refers to sys_io.o(.text) for _sys_open + fopen_locked.o(.text) refers to fseek.o(.text) for _fseek + fopen_locked.o(.text) refers to h1_alloc.o(.text) for malloc + fopen_locked.o(.text) refers to rt_memclr_w.o(.text) for __aeabi_memclr4 + fopen_locked.o(.text) refers to streamlock.o(.data) for _stream_list_lock + fopen_locked.o(.text) refers to stdio_streams.o(.bss) for __stdin exit.o(.text) refers to rtexit.o(.ARM.Collect$$rtexit$$00000000) for __rt_exit + defsig_rtred_outer.o(.text) refers to defsig_rtred_inner.o(.text) for __rt_SIGRTRED_inner + defsig_rtred_outer.o(.text) refers to defsig_exit.o(.text) for __sig_exit + defsig_rtred_formal.o(.text) refers to rt_raise.o(.text) for __rt_raise libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000002E) for __rt_lib_init_alloca_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000002C) for __rt_lib_init_argv_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001B) for __rt_lib_init_atexit_1 @@ -149,6 +394,18 @@ Section Cross References libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001D) for __rt_lib_init_signal_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000025) for __rt_lib_init_stdio_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000000C) for __rt_lib_init_user_alloc_1 + libinit2.o(.ARM.Collect$$libinit$$00000005) refers (Weak) to init_alloc.o(.text) for _init_alloc + libinit2.o(.ARM.Collect$$libinit$$00000010) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F + libinit2.o(.ARM.Collect$$libinit$$00000012) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F + libinit2.o(.ARM.Collect$$libinit$$00000014) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F + libinit2.o(.ARM.Collect$$libinit$$00000016) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F + libinit2.o(.ARM.Collect$$libinit$$00000018) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F + libinit2.o(.ARM.Collect$$libinit$$00000024) refers (Weak) to initio.o(.text) for _initio + libinit2.o(.ARM.Collect$$libinit$$00000026) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer + libinit2.o(.ARM.Collect$$libinit$$00000027) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer + libshutdown2.o(.ARM.Collect$$libshutdown$$00000005) refers (Weak) to initio.o(.text) for _terminateio + libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) refers (Weak) to term_alloc.o(.text) for _terminate_alloc + flsbuf_fwide.o(.text) refers to flsbuf.o(.text) for __flsbuf libspace.o(.text) refers to libspace.o(.bss) for __libspace_start rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for __rt_exit_exit rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for __rt_exit_ls @@ -157,24 +414,92 @@ Section Cross References rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for __rt_exit_ls rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000002) for __rt_exit_prels_1 rtexit.o(.ARM.exidx) refers to rtexit.o(.ARM.Collect$$rtexit$$00000000) for .ARM.Collect$$rtexit$$00000000 - libinit2.o(.ARM.Collect$$libinit$$00000010) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F - libinit2.o(.ARM.Collect$$libinit$$00000012) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F - libinit2.o(.ARM.Collect$$libinit$$00000014) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F - libinit2.o(.ARM.Collect$$libinit$$00000016) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F - libinit2.o(.ARM.Collect$$libinit$$00000018) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F - libinit2.o(.ARM.Collect$$libinit$$00000026) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer - libinit2.o(.ARM.Collect$$libinit$$00000027) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer + rt_raise.o(.text) refers to __raise.o(.text) for __raise + rt_raise.o(.text) refers to sys_exit.o(.text) for _sys_exit + rt_heap_descriptor.o(.text) refers to rt_heap_descriptor.o(.bss) for __rt_heap_descriptor_data + rt_heap_descriptor_intlibspace.o(.text) refers to libspace.o(.bss) for __libspace_start + init_alloc.o(.text) refers (Special) to hguard.o(.text) for __heap$guard + init_alloc.o(.text) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000005) for __rt_lib_init_heap_2 + init_alloc.o(.text) refers (Special) to maybetermalloc1.o(.emb_text) for _maybe_terminate_alloc + init_alloc.o(.text) refers to h1_extend.o(.text) for __Heap_ProvideMemory + init_alloc.o(.text) refers to defsig_rtmem_outer.o(.text) for __rt_SIGRTMEM + init_alloc.o(.text) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + init_alloc.o(.text) refers to h1_init.o(.text) for __Heap_Initialize + malloc.o(.text) refers (Special) to hguard.o(.text) for __heap$guard + malloc.o(.text) refers (Special) to init_alloc.o(.text) for _init_alloc + malloc.o(.text) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + malloc.o(.text) refers to heapstubs.o(.text) for __Heap_Alloc + h1_alloc.o(.text) refers (Special) to h1_init.o(.text) for __Heap_Initialize + h1_alloc.o(.text) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + h1_alloc.o(.text) refers to init_alloc.o(.text) for __Heap_Full + h1_alloc_mt.o(.text) refers (Special) to h1_init.o(.text) for __Heap_Initialize + h1_alloc_mt.o(.text) refers to init_alloc.o(.text) for __Heap_Full + h1_alloc_mt.o(.text) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + _printf_char_file_locked.o(.text) refers to _printf_char_common.o(.text) for _printf_char_common + _printf_char_file_locked.o(.text) refers to fputc.o(i._fputc$unlocked) for _fputc$unlocked + fseek.o(.text) refers to sys_io.o(.text) for _sys_istty + fseek.o(.text) refers to ftell.o(.text) for _ftell_internal + fseek.o(.text) refers to stdio.o(.text) for _seterr + stdio.o(.text) refers to sys_io.o(.text) for _sys_seek + fwritefast.o(.text) refers to stdio.o(.text) for _writebuf + fwritefast.o(.text) refers to flsbuf.o(.text) for __flsbuf_byte + fwritefast.o(.text) refers to rt_memcpy_v6.o(.text) for __aeabi_memcpy + fwritefast_locked.o(.text) refers to stdio.o(.text) for _writebuf + fwritefast_locked.o(.text) refers to flsbuf.o(.text) for __flsbuf_byte + fwritefast_locked.o(.text) refers to rt_memcpy_v6.o(.text) for __aeabi_memcpy + defsig_exit.o(.text) refers to sys_exit.o(.text) for _sys_exit + defsig_rtred_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display + assert_stdio.o(.text) refers to fputs.o(.text) for fputs + assert_stdio.o(.text) refers to fflush.o(.text) for fflush + assert_stdio.o(.text) refers to stdio_streams.o(.bss) for __stderr + argv_veneer.o(.emb_text) refers to no_argv.o(.text) for __ARM_get_argv + sys_exit.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting + sys_exit.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function rtexit2.o(.ARM.Collect$$rtexit$$00000003) refers to libshutdown.o(.ARM.Collect$$libshutdown$$00000000) for __rt_lib_shutdown rtexit2.o(.ARM.Collect$$rtexit$$00000004) refers to sys_exit.o(.text) for _sys_exit rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000001) for .ARM.Collect$$rtexit$$00000001 rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for .ARM.Collect$$rtexit$$00000003 rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for .ARM.Collect$$rtexit$$00000004 - argv_veneer.o(.emb_text) refers to no_argv.o(.text) for __ARM_get_argv - sys_exit.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting - sys_exit.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function + maybetermalloc2.o(.emb_text) refers (Special) to term_alloc.o(.text) for _terminate_alloc + h1_extend.o(.text) refers to h1_free.o(.text) for free + h1_init_mt.o(.text) refers to mutex_dummy.o(.text) for _mutex_initialize + h1_extend_mt.o(.text) refers to h1_free_mt.o(.text) for _free_internal + fflush.o(.text) refers to stdio.o(.text) for _fflush + fflush.o(.text) refers to fseek.o(.text) for _fseek + fflush.o(.text) refers to stdio_streams.o(.bss) for __stdin + fputs.o(.text) refers to fputc.o(i.fputc) for fputc + ftell.o(.text) refers to rt_errno_addr_intlibspace.o(.text) for __aeabi_errno_addr + fflush_locked.o(.text) refers to stdio.o(.text) for _fflush + fflush_locked.o(.text) refers to fseek.o(.text) for _fseek + fflush_locked.o(.text) refers to fflush.o(.text) for _do_fflush + fflush_locked.o(.text) refers to streamlock.o(.data) for _stream_list_lock + fflush_locked.o(.text) refers to stdio_streams.o(.bss) for __stdin + __raise.o(.text) refers to defsig.o(CL$$defsig) for __default_signal_handler + defsig_general.o(.text) refers to sys_wrch.o(.text) for _ttywrch + defsig_rtmem_outer.o(.text) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner + defsig_rtmem_outer.o(.text) refers to defsig_exit.o(.text) for __sig_exit + defsig_rtmem_formal.o(.text) refers to rt_raise.o(.text) for __rt_raise + rt_memcpy_v6.o(.text) refers to rt_memcpy_w.o(.text) for __aeabi_memcpy4 + heapauxa.o(.text) refers to heapauxa.o(.data) for .data + _get_argv.o(.text) refers (Special) to hrguard.o(.text) for __heap_region$guard + _get_argv.o(.text) refers to h1_alloc.o(.text) for malloc + _get_argv.o(.text) refers to defsig_rtmem_outer.o(.text) for __rt_SIGRTMEM + _get_argv.o(.text) refers to sys_command.o(.text) for _sys_command_string _get_argv_nomalloc.o(.text) refers (Special) to hrguard.o(.text) for __heap_region$guard _get_argv_nomalloc.o(.text) refers to defsig_rtmem_outer.o(.text) for __rt_SIGRTMEM _get_argv_nomalloc.o(.text) refers to sys_command.o(.text) for _sys_command_string + sys_wrch.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting + sys_wrch.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function + sys_command.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting + sys_command.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function + rt_errno_addr.o(.text) refers to rt_errno_addr.o(.bss) for __aeabi_errno_addr_data + rt_errno_addr_intlibspace.o(.text) refers to libspace.o(.bss) for __libspace_start + term_alloc.o(.text) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000010) for __rt_lib_shutdown_heap_2 + term_alloc.o(.text) refers to rt_heap_descriptor_intlibspace.o(.text) for __rt_heap_descriptor + term_alloc.o(.text) refers to h1_final.o(.text) for __Heap_Finalize + defsig_rtmem_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display + defsig.o(CL$$defsig) refers to defsig_rtred_inner.o(.text) for __rt_SIGRTRED_inner + defsig.o(CL$$defsig) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) for __rt_lib_shutdown_cpp_1 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) for __rt_lib_shutdown_fini_1 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000009) for __rt_lib_shutdown_fp_trap_1 @@ -183,23 +508,8 @@ Section Cross References libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) for __rt_lib_shutdown_signal_1 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000006) for __rt_lib_shutdown_stdio_1 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E) for __rt_lib_shutdown_user_alloc_1 - sys_command.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting - sys_command.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function - defsig_rtmem_outer.o(.text) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner - defsig_rtmem_outer.o(.text) refers to defsig_exit.o(.text) for __sig_exit - defsig_rtmem_formal.o(.text) refers to rt_raise.o(.text) for __rt_raise - rt_raise.o(.text) refers to __raise.o(.text) for __raise - rt_raise.o(.text) refers to sys_exit.o(.text) for _sys_exit - defsig_exit.o(.text) refers to sys_exit.o(.text) for _sys_exit - defsig_rtmem_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display - __raise.o(.text) refers to defsig.o(CL$$defsig) for __default_signal_handler - defsig_general.o(.text) refers to sys_wrch.o(.text) for _ttywrch - sys_wrch.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting - sys_wrch.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function - defsig.o(CL$$defsig) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner defsig_abrt_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display defsig_fpe_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display - defsig_rtred_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display defsig_stak_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display defsig_pvfn_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display defsig_cppl_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display @@ -211,12 +521,22 @@ Section Cross References Removing Unused input sections from the image. - Removing main.o(i.bsp_init), (2 bytes). - Removing mw_led.o(i.mw_get_led_obj), (40 bytes). Removing bsp_led.o(i.bsp_led_toggle), (44 bytes). + Removing bsp_timer.o(i.bsp_CheckTimer), (52 bytes). + Removing bsp_timer.o(i.bsp_DelayUS), (84 bytes). + Removing bsp_timer.o(i.bsp_GetRunTime), (28 bytes). + Removing bsp_timer.o(i.bsp_InitExternInputTimer), (180 bytes). + Removing bsp_timer.o(i.bsp_InitHardTimer), (140 bytes). + Removing bsp_timer.o(i.bsp_StartAutoTimer), (152 bytes). + Removing bsp_timer.o(i.bsp_StartHardTimer), (200 bytes). + Removing bsp_timer.o(i.bsp_StartTimer), (148 bytes). + Removing bsp_timer.o(i.bsp_StopTimer), (136 bytes). + Removing bsp_timer.o(i.bsp_change_pwm), (20 bytes). + Removing bsp_timer.o(i.bsp_pwm_init), (156 bytes). + Removing bsp_timer.o(i.bsp_pwm_test_loop), (54 bytes). + Removing bsp_timer.o(.constdata), (48 bytes). Removing core_cm3.o(.emb_text), (32 bytes). Removing system_stm32f10x.o(i.SystemCoreClockUpdate), (164 bytes). - Removing system_stm32f10x.o(.data), (20 bytes). Removing misc.o(i.NVIC_Init), (112 bytes). Removing misc.o(i.NVIC_SetVectorTable), (20 bytes). Removing misc.o(i.NVIC_SystemLPConfig), (32 bytes). @@ -570,7 +890,6 @@ Removing Unused input sections from the image. Removing stm32f10x_tim.o(i.TIM_CCxCmd), (30 bytes). Removing stm32f10x_tim.o(i.TIM_CCxNCmd), (30 bytes). Removing stm32f10x_tim.o(i.TIM_ClearFlag), (6 bytes). - Removing stm32f10x_tim.o(i.TIM_ClearITPendingBit), (6 bytes). Removing stm32f10x_tim.o(i.TIM_ClearOC1Ref), (18 bytes). Removing stm32f10x_tim.o(i.TIM_ClearOC2Ref), (24 bytes). Removing stm32f10x_tim.o(i.TIM_ClearOC3Ref), (18 bytes). @@ -596,11 +915,9 @@ Removing Unused input sections from the image. Removing stm32f10x_tim.o(i.TIM_GetCapture4), (8 bytes). Removing stm32f10x_tim.o(i.TIM_GetCounter), (6 bytes). Removing stm32f10x_tim.o(i.TIM_GetFlagStatus), (18 bytes). - Removing stm32f10x_tim.o(i.TIM_GetITStatus), (34 bytes). Removing stm32f10x_tim.o(i.TIM_GetPrescaler), (6 bytes). Removing stm32f10x_tim.o(i.TIM_ICInit), (172 bytes). Removing stm32f10x_tim.o(i.TIM_ICStructInit), (18 bytes). - Removing stm32f10x_tim.o(i.TIM_ITConfig), (18 bytes). Removing stm32f10x_tim.o(i.TIM_ITRxExternalClockConfig), (24 bytes). Removing stm32f10x_tim.o(i.TIM_InternalClockConfig), (12 bytes). Removing stm32f10x_tim.o(i.TIM_OC1FastConfig), (18 bytes). @@ -685,7 +1002,7 @@ Removing Unused input sections from the image. Removing stm32f10x_wwdg.o(i.WWDG_SetPrescaler), (24 bytes). Removing stm32f10x_wwdg.o(i.WWDG_SetWindowValue), (40 bytes). -473 unused section(s) (total 19040 bytes) removed from the image. +480 unused section(s) (total 20318 bytes) removed from the image. ============================================================================== @@ -695,56 +1012,138 @@ Image Symbol Table Symbol Name Value Ov Type Size Object(Section) - ../clib/angel/boardlib.s 0x00000000 Number 0 boardshut.o ABSOLUTE ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit1.o ABSOLUTE + ../clib/angel/boardlib.s 0x00000000 Number 0 boardshut.o ABSOLUTE ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit2.o ABSOLUTE ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit3.o ABSOLUTE + ../clib/angel/handlers.s 0x00000000 Number 0 __scatter_copy.o ABSOLUTE ../clib/angel/handlers.s 0x00000000 Number 0 __scatter_zi.o ABSOLUTE + ../clib/angel/kernel.s 0x00000000 Number 0 rtexit2.o ABSOLUTE + ../clib/angel/kernel.s 0x00000000 Number 0 rtexit.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry4.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry2.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry.o ABSOLUTE - ../clib/angel/kernel.s 0x00000000 Number 0 rtexit.o ABSOLUTE - ../clib/angel/kernel.s 0x00000000 Number 0 rtexit2.o ABSOLUTE + ../clib/angel/rt.s 0x00000000 Number 0 rt_heap_descriptor_intlibspace.o ABSOLUTE + ../clib/angel/rt.s 0x00000000 Number 0 rt_heap_descriptor.o ABSOLUTE ../clib/angel/rt.s 0x00000000 Number 0 rt_raise.o ABSOLUTE + ../clib/angel/rt.s 0x00000000 Number 0 rt_errno_addr_intlibspace.o ABSOLUTE + ../clib/angel/rt.s 0x00000000 Number 0 rt_errno_addr.o ABSOLUTE ../clib/angel/scatter.s 0x00000000 Number 0 __scatter.o ABSOLUTE ../clib/angel/startup.s 0x00000000 Number 0 __main.o ABSOLUTE + ../clib/angel/sys.s 0x00000000 Number 0 mutex_dummy.o ABSOLUTE ../clib/angel/sys.s 0x00000000 Number 0 sys_stackheap_outer.o ABSOLUTE + ../clib/angel/sys.s 0x00000000 Number 0 libspace.o ABSOLUTE ../clib/angel/sys.s 0x00000000 Number 0 indicate_semi.o ABSOLUTE ../clib/angel/sys.s 0x00000000 Number 0 use_no_semi.o ABSOLUTE - ../clib/angel/sys.s 0x00000000 Number 0 libspace.o ABSOLUTE - ../clib/angel/sysapp.c 0x00000000 Number 0 sys_command.o ABSOLUTE + ../clib/angel/sysapp.c 0x00000000 Number 0 sys_io.o ABSOLUTE ../clib/angel/sysapp.c 0x00000000 Number 0 sys_exit.o ABSOLUTE + ../clib/angel/sysapp.c 0x00000000 Number 0 sys_command.o ABSOLUTE ../clib/angel/sysapp.c 0x00000000 Number 0 sys_wrch.o ABSOLUTE + ../clib/armsys.c 0x00000000 Number 0 _get_argv_nomalloc.o ABSOLUTE + ../clib/armsys.c 0x00000000 Number 0 _get_argv.o ABSOLUTE + ../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE ../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE ../clib/armsys.c 0x00000000 Number 0 no_argv.o ABSOLUTE - ../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE - ../clib/armsys.c 0x00000000 Number 0 _get_argv_nomalloc.o ABSOLUTE + ../clib/assert.c 0x00000000 Number 0 assert_stdio.o ABSOLUTE + ../clib/heap1.c 0x00000000 Number 0 h1_final_mt.o ABSOLUTE + ../clib/heap1.c 0x00000000 Number 0 h1_alloc.o ABSOLUTE + ../clib/heap1.c 0x00000000 Number 0 h1_free_mt.o ABSOLUTE + ../clib/heap1.c 0x00000000 Number 0 h1_free.o ABSOLUTE + ../clib/heap1.c 0x00000000 Number 0 h1_extend_mt.o ABSOLUTE + ../clib/heap1.c 0x00000000 Number 0 h1_init_mt.o ABSOLUTE + ../clib/heap1.c 0x00000000 Number 0 h1_extend.o ABSOLUTE + ../clib/heap1.c 0x00000000 Number 0 h1_init.o ABSOLUTE + ../clib/heap1.c 0x00000000 Number 0 h1_alloc_mt.o ABSOLUTE + ../clib/heap1.c 0x00000000 Number 0 h1_final.o ABSOLUTE + ../clib/heap2.c 0x00000000 Number 0 heap2.o ABSOLUTE + ../clib/heap2.c 0x00000000 Number 0 heap2mt.o ABSOLUTE + ../clib/heap2.c 0x00000000 Number 0 fdtree.o ABSOLUTE + ../clib/heapalloc.c 0x00000000 Number 0 maybetermalloc2.o ABSOLUTE + ../clib/heapalloc.c 0x00000000 Number 0 maybetermalloc1.o ABSOLUTE + ../clib/heapalloc.c 0x00000000 Number 0 maybetermalloc1.o ABSOLUTE + ../clib/heapalloc.c 0x00000000 Number 0 hguard.o ABSOLUTE ../clib/heapalloc.c 0x00000000 Number 0 hrguard.o ABSOLUTE + ../clib/heapalloc.c 0x00000000 Number 0 init_alloc.o ABSOLUTE + ../clib/heapalloc.c 0x00000000 Number 0 term_alloc.o ABSOLUTE + ../clib/heapalloc.c 0x00000000 Number 0 free.o ABSOLUTE + ../clib/heapalloc.c 0x00000000 Number 0 malloc.o ABSOLUTE + ../clib/heapalloc.c 0x00000000 Number 0 heapstubs.o ABSOLUTE + ../clib/heapalloc.c 0x00000000 Number 0 maybetermalloc2.o ABSOLUTE ../clib/heapaux.c 0x00000000 Number 0 heapauxi.o ABSOLUTE - ../clib/libinit.s 0x00000000 Number 0 libshutdown.o ABSOLUTE + ../clib/heapaux.c 0x00000000 Number 0 heapauxa.o ABSOLUTE ../clib/libinit.s 0x00000000 Number 0 libinit.o ABSOLUTE + ../clib/libinit.s 0x00000000 Number 0 libshutdown.o ABSOLUTE ../clib/libinit.s 0x00000000 Number 0 libinit2.o ABSOLUTE ../clib/libinit.s 0x00000000 Number 0 libshutdown2.o ABSOLUTE + ../clib/memcpset.s 0x00000000 Number 0 rt_memcpy_v6.o ABSOLUTE ../clib/memcpset.s 0x00000000 Number 0 rt_memcpy_w.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_cppl_inner.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_general.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_outer.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_inner.o ABSOLUTE + ../clib/memcpset.s 0x00000000 Number 0 rt_memclr_w.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_char.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_char_file.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_char_common.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __printf_nopercent.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_char_file_locked.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __printf_ss_wp.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __2printf.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 noretval__2printf.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __printf.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 _printf_str.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __printf_flags.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __printf_ss.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __printf_flags_ss.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __printf_wp.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __printf_flags_wp.o ABSOLUTE + ../clib/printf.c 0x00000000 Number 0 __printf_flags_ss_wp.o ABSOLUTE + ../clib/printf_percent.s 0x00000000 Number 0 _printf_percent_end.o ABSOLUTE + ../clib/printf_percent.s 0x00000000 Number 0 _printf_s.o ABSOLUTE + ../clib/printf_percent.s 0x00000000 Number 0 _printf_percent.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_other.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_segv_inner.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 defsig_cppl_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_pvfn_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_stak_inner.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 defsig_rtred_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_fpe_inner.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 __raise.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 defsig_rtred_formal.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 defsig_rtred_outer.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_abrt_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_exit.o ABSOLUTE - ../clib/signal.c 0x00000000 Number 0 __raise.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 defsig_rtred_inner.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_formal.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_outer.o ABSOLUTE + ../clib/signal.c 0x00000000 Number 0 defsig_general.o ABSOLUTE ../clib/signal.s 0x00000000 Number 0 defsig.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 initio_locked.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 setvbuf_locked.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fflush.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fopen_locked.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fclose.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fseek.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fwritefast.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fputs.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fwritefast_locked.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fflush_locked.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 stdio.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 streamlock.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fputs_locked.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 setvbuf.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 flsbuf.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fopen.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 stdio_streams.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 ftell.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 initio.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 ferror.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fputc.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 fputc_locked.o ABSOLUTE + ../clib/stdio.c 0x00000000 Number 0 ferror_locked.o ABSOLUTE ../clib/stdlib.c 0x00000000 Number 0 exit.o ABSOLUTE + ../clib/string.c 0x00000000 Number 0 strlen.o ABSOLUTE + ../clib/wchar.c 0x00000000 Number 0 flsbuf_fwide.o ABSOLUTE ../fplib/fpinit.s 0x00000000 Number 0 fpinit.o ABSOLUTE ..\Code\app\src\main.c 0x00000000 Number 0 main.o ABSOLUTE ..\Code\bsp\src\bsp_led.c 0x00000000 Number 0 bsp_led.o ABSOLUTE + ..\Code\bsp\src\bsp_timer.c 0x00000000 Number 0 bsp_timer.o ABSOLUTE ..\Code\isr\interrupt_handler.c 0x00000000 Number 0 interrupt_handler.o ABSOLUTE ..\Code\library\STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\CMSIS\CM3\CoreSupport\core_cm3.c 0x00000000 Number 0 core_cm3.o ABSOLUTE ..\Code\library\STM32F10x_StdPeriph_Lib_V3.6.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_md.s 0x00000000 Number 0 startup_stm32f10x_md.o ABSOLUTE @@ -778,102 +1177,129 @@ Image Symbol Table RESET 0x08000000 Section 236 startup_stm32f10x_md.o(RESET) !!!main 0x080000ec Section 8 __main.o(!!!main) !!!scatter 0x080000f4 Section 52 __scatter.o(!!!scatter) - !!handler_zi 0x08000128 Section 28 __scatter_zi.o(!!handler_zi) - .ARM.Collect$$libinit$$00000000 0x08000144 Section 2 libinit.o(.ARM.Collect$$libinit$$00000000) - .ARM.Collect$$libinit$$00000002 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000002) - .ARM.Collect$$libinit$$00000004 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000004) - .ARM.Collect$$libinit$$0000000A 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) - .ARM.Collect$$libinit$$0000000C 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) - .ARM.Collect$$libinit$$0000000E 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) - .ARM.Collect$$libinit$$00000011 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000011) - .ARM.Collect$$libinit$$00000013 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000013) - .ARM.Collect$$libinit$$00000015 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000015) - .ARM.Collect$$libinit$$00000017 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000017) - .ARM.Collect$$libinit$$00000019 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000019) - .ARM.Collect$$libinit$$0000001B 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) - .ARM.Collect$$libinit$$0000001D 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) - .ARM.Collect$$libinit$$0000001F 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) - .ARM.Collect$$libinit$$00000021 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000021) - .ARM.Collect$$libinit$$00000023 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000023) - .ARM.Collect$$libinit$$00000025 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000025) - .ARM.Collect$$libinit$$0000002C 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) - .ARM.Collect$$libinit$$0000002E 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) - .ARM.Collect$$libinit$$00000030 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000030) - .ARM.Collect$$libinit$$00000032 0x08000146 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000032) - .ARM.Collect$$libinit$$00000033 0x08000146 Section 2 libinit2.o(.ARM.Collect$$libinit$$00000033) - .ARM.Collect$$libshutdown$$00000000 0x08000148 Section 2 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) - .ARM.Collect$$libshutdown$$00000002 0x0800014a Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) - .ARM.Collect$$libshutdown$$00000004 0x0800014a Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) - .ARM.Collect$$libshutdown$$00000006 0x0800014a Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000006) - .ARM.Collect$$libshutdown$$00000009 0x0800014a Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000009) - .ARM.Collect$$libshutdown$$0000000C 0x0800014a Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) - .ARM.Collect$$libshutdown$$0000000E 0x0800014a Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E) - .ARM.Collect$$libshutdown$$00000011 0x0800014a Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000011) - .ARM.Collect$$libshutdown$$00000012 0x0800014a Section 2 libshutdown2.o(.ARM.Collect$$libshutdown$$00000012) - .ARM.Collect$$rtentry$$00000000 0x0800014c Section 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) - .ARM.Collect$$rtentry$$00000002 0x0800014c Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) - .ARM.Collect$$rtentry$$00000004 0x0800014c Section 6 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) - .ARM.Collect$$rtentry$$00000009 0x08000152 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) - .ARM.Collect$$rtentry$$0000000A 0x08000152 Section 4 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) - .ARM.Collect$$rtentry$$0000000C 0x08000156 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) - .ARM.Collect$$rtentry$$0000000D 0x08000156 Section 8 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) - .ARM.Collect$$rtexit$$00000000 0x0800015e Section 2 rtexit.o(.ARM.Collect$$rtexit$$00000000) - .ARM.Collect$$rtexit$$00000002 0x08000160 Section 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) - .ARM.Collect$$rtexit$$00000003 0x08000160 Section 4 rtexit2.o(.ARM.Collect$$rtexit$$00000003) - .ARM.Collect$$rtexit$$00000004 0x08000164 Section 6 rtexit2.o(.ARM.Collect$$rtexit$$00000004) - .text 0x0800016c Section 64 startup_stm32f10x_md.o(.text) - .text 0x080001ac Section 0 heapauxi.o(.text) - .text 0x080001b2 Section 74 sys_stackheap_outer.o(.text) - .text 0x080001fc Section 0 exit.o(.text) - .text 0x08000210 Section 8 libspace.o(.text) - .text 0x08000218 Section 0 sys_exit.o(.text) - .text 0x08000224 Section 2 use_no_semi.o(.text) - .text 0x08000226 Section 0 indicate_semi.o(.text) - i.GPIO_Init 0x08000226 Section 0 stm32f10x_gpio.o(i.GPIO_Init) - i.NVIC_PriorityGroupConfig 0x0800033c Section 0 misc.o(i.NVIC_PriorityGroupConfig) - i.RCC_APB2PeriphClockCmd 0x08000350 Section 0 stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd) - i.SetSysClock 0x08000370 Section 0 system_stm32f10x.o(i.SetSysClock) - SetSysClock 0x08000371 Thumb Code 8 system_stm32f10x.o(i.SetSysClock) - i.SetSysClockTo72 0x08000378 Section 0 system_stm32f10x.o(i.SetSysClockTo72) - SetSysClockTo72 0x08000379 Thumb Code 214 system_stm32f10x.o(i.SetSysClockTo72) - i.SystemInit 0x08000458 Section 0 system_stm32f10x.o(i.SystemInit) - i.USART1_IRQHandler 0x080004b8 Section 0 interrupt_handler.o(i.USART1_IRQHandler) - i.USART_ClearITPendingBit 0x080004f4 Section 0 stm32f10x_usart.o(i.USART_ClearITPendingBit) - i.USART_GetITStatus 0x08000512 Section 0 stm32f10x_usart.o(i.USART_GetITStatus) - i.USART_ReceiveData 0x08000566 Section 0 stm32f10x_usart.o(i.USART_ReceiveData) - i.bsp_get_led_ttlState 0x08000570 Section 0 bsp_led.o(i.bsp_get_led_ttlState) - i.bsp_led1_init 0x08000590 Section 0 bsp_led.o(i.bsp_led1_init) - i.bsp_led2_init 0x080005c4 Section 0 bsp_led.o(i.bsp_led2_init) - i.bsp_led_off 0x080005f8 Section 0 bsp_led.o(i.bsp_led_off) - i.bsp_led_on 0x08000618 Section 0 bsp_led.o(i.bsp_led_on) - i.main 0x08000640 Section 0 main.o(i.main) - i.middleware_init 0x08000650 Section 0 main.o(i.middleware_init) - i.mw_get_led1_state 0x08000658 Section 0 mw_led.o(i.mw_get_led1_state) - mw_get_led1_state 0x08000659 Thumb Code 16 mw_led.o(i.mw_get_led1_state) - i.mw_get_led2_state 0x08000668 Section 0 mw_led.o(i.mw_get_led2_state) - mw_get_led2_state 0x08000669 Thumb Code 16 mw_led.o(i.mw_get_led2_state) - i.mw_led1_off 0x08000678 Section 0 mw_led.o(i.mw_led1_off) - mw_led1_off 0x08000679 Thumb Code 10 mw_led.o(i.mw_led1_off) - i.mw_led1_on 0x08000682 Section 0 mw_led.o(i.mw_led1_on) - mw_led1_on 0x08000683 Thumb Code 10 mw_led.o(i.mw_led1_on) - i.mw_led2_off 0x0800068c Section 0 mw_led.o(i.mw_led2_off) - mw_led2_off 0x0800068d Thumb Code 10 mw_led.o(i.mw_led2_off) - i.mw_led2_on 0x08000696 Section 0 mw_led.o(i.mw_led2_on) - mw_led2_on 0x08000697 Thumb Code 10 mw_led.o(i.mw_led2_on) - i.mw_led_drv_init 0x080006a0 Section 0 mw_led.o(i.mw_led_drv_init) - .bss 0x20000000 Section 40 mw_led.o(.bss) - .bss 0x20000028 Section 96 libspace.o(.bss) - HEAP 0x20000088 Section 512 startup_stm32f10x_md.o(HEAP) - Heap_Mem 0x20000088 Data 512 startup_stm32f10x_md.o(HEAP) - STACK 0x20000288 Section 1024 startup_stm32f10x_md.o(STACK) - Stack_Mem 0x20000288 Data 1024 startup_stm32f10x_md.o(STACK) - __initial_sp 0x20000688 Data 0 startup_stm32f10x_md.o(STACK) + !!handler_copy 0x08000128 Section 26 __scatter_copy.o(!!handler_copy) + !!handler_zi 0x08000144 Section 28 __scatter_zi.o(!!handler_zi) + .ARM.Collect$$libinit$$00000000 0x08000160 Section 2 libinit.o(.ARM.Collect$$libinit$$00000000) + .ARM.Collect$$libinit$$00000002 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000002) + .ARM.Collect$$libinit$$00000004 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000004) + .ARM.Collect$$libinit$$0000000A 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) + .ARM.Collect$$libinit$$0000000C 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) + .ARM.Collect$$libinit$$0000000E 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) + .ARM.Collect$$libinit$$00000011 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000011) + .ARM.Collect$$libinit$$00000013 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000013) + .ARM.Collect$$libinit$$00000015 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000015) + .ARM.Collect$$libinit$$00000017 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000017) + .ARM.Collect$$libinit$$00000019 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000019) + .ARM.Collect$$libinit$$0000001B 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) + .ARM.Collect$$libinit$$0000001D 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) + .ARM.Collect$$libinit$$0000001F 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) + .ARM.Collect$$libinit$$00000021 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000021) + .ARM.Collect$$libinit$$00000023 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000023) + .ARM.Collect$$libinit$$00000025 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000025) + .ARM.Collect$$libinit$$0000002C 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) + .ARM.Collect$$libinit$$0000002E 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) + .ARM.Collect$$libinit$$00000030 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000030) + .ARM.Collect$$libinit$$00000032 0x08000162 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000032) + .ARM.Collect$$libinit$$00000033 0x08000162 Section 2 libinit2.o(.ARM.Collect$$libinit$$00000033) + .ARM.Collect$$libshutdown$$00000000 0x08000164 Section 2 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) + .ARM.Collect$$libshutdown$$00000002 0x08000166 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) + .ARM.Collect$$libshutdown$$00000004 0x08000166 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) + .ARM.Collect$$libshutdown$$00000006 0x08000166 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000006) + .ARM.Collect$$libshutdown$$00000009 0x08000166 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000009) + .ARM.Collect$$libshutdown$$0000000C 0x08000166 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) + .ARM.Collect$$libshutdown$$0000000E 0x08000166 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E) + .ARM.Collect$$libshutdown$$00000011 0x08000166 Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000011) + .ARM.Collect$$libshutdown$$00000012 0x08000166 Section 2 libshutdown2.o(.ARM.Collect$$libshutdown$$00000012) + .ARM.Collect$$rtentry$$00000000 0x08000168 Section 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) + .ARM.Collect$$rtentry$$00000002 0x08000168 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) + .ARM.Collect$$rtentry$$00000004 0x08000168 Section 6 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) + .ARM.Collect$$rtentry$$00000009 0x0800016e Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) + .ARM.Collect$$rtentry$$0000000A 0x0800016e Section 4 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) + .ARM.Collect$$rtentry$$0000000C 0x08000172 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) + .ARM.Collect$$rtentry$$0000000D 0x08000172 Section 8 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) + .ARM.Collect$$rtexit$$00000000 0x0800017a Section 2 rtexit.o(.ARM.Collect$$rtexit$$00000000) + .ARM.Collect$$rtexit$$00000002 0x0800017c Section 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) + .ARM.Collect$$rtexit$$00000003 0x0800017c Section 4 rtexit2.o(.ARM.Collect$$rtexit$$00000003) + .ARM.Collect$$rtexit$$00000004 0x08000180 Section 6 rtexit2.o(.ARM.Collect$$rtexit$$00000004) + .text 0x08000188 Section 64 startup_stm32f10x_md.o(.text) + .text 0x080001c8 Section 100 rt_memcpy_w.o(.text) + .text 0x0800022c Section 0 heapauxi.o(.text) + .text 0x08000232 Section 74 sys_stackheap_outer.o(.text) + .text 0x0800027c Section 0 exit.o(.text) + .text 0x08000290 Section 8 libspace.o(.text) + .text 0x08000298 Section 2 use_no_semi.o(.text) + .text 0x0800029a Section 0 indicate_semi.o(.text) + .text 0x0800029c Section 0 sys_exit.o(.text) + i.GPIO_Init 0x080002a8 Section 0 stm32f10x_gpio.o(i.GPIO_Init) + i.NVIC_PriorityGroupConfig 0x080003c0 Section 0 misc.o(i.NVIC_PriorityGroupConfig) + i.RCC_APB2PeriphClockCmd 0x080003d4 Section 0 stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd) + i.SetSysClock 0x080003f4 Section 0 system_stm32f10x.o(i.SetSysClock) + SetSysClock 0x080003f5 Thumb Code 8 system_stm32f10x.o(i.SetSysClock) + i.SetSysClockTo72 0x080003fc Section 0 system_stm32f10x.o(i.SetSysClockTo72) + SetSysClockTo72 0x080003fd Thumb Code 214 system_stm32f10x.o(i.SetSysClockTo72) + i.SysTick_Handler 0x080004dc Section 0 bsp_timer.o(i.SysTick_Handler) + i.SysTick_ISR 0x080004e4 Section 0 bsp_timer.o(i.SysTick_ISR) + i.SystemInit 0x08000528 Section 0 system_stm32f10x.o(i.SystemInit) + i.TIM2_IRQHandler 0x08000588 Section 0 bsp_timer.o(i.TIM2_IRQHandler) + i.TIM3_IRQHandler 0x080005a0 Section 0 bsp_timer.o(i.TIM3_IRQHandler) + i.TIM_ClearITPendingBit 0x08000654 Section 0 stm32f10x_tim.o(i.TIM_ClearITPendingBit) + i.TIM_GetITStatus 0x0800065a Section 0 stm32f10x_tim.o(i.TIM_GetITStatus) + i.TIM_ITConfig 0x0800067c Section 0 stm32f10x_tim.o(i.TIM_ITConfig) + i.USART1_IRQHandler 0x08000690 Section 0 interrupt_handler.o(i.USART1_IRQHandler) + i.USART_ClearITPendingBit 0x080006cc Section 0 stm32f10x_usart.o(i.USART_ClearITPendingBit) + i.USART_GetITStatus 0x080006ea Section 0 stm32f10x_usart.o(i.USART_GetITStatus) + i.USART_ReceiveData 0x0800073e Section 0 stm32f10x_usart.o(i.USART_ReceiveData) + i.__set_PRIMASK 0x08000748 Section 0 bsp_timer.o(i.__set_PRIMASK) + __set_PRIMASK 0x08000749 Thumb Code 6 bsp_timer.o(i.__set_PRIMASK) + i.bsp_DelayMS 0x08000750 Section 0 bsp_timer.o(i.bsp_DelayMS) + i.bsp_SoftTimerDec 0x08000790 Section 0 bsp_timer.o(i.bsp_SoftTimerDec) + bsp_SoftTimerDec 0x08000791 Thumb Code 28 bsp_timer.o(i.bsp_SoftTimerDec) + i.bsp_get_led_ttlState 0x080007ac Section 0 bsp_led.o(i.bsp_get_led_ttlState) + i.bsp_init 0x080007cc Section 0 main.o(i.bsp_init) + i.bsp_led1_init 0x080007d4 Section 0 bsp_led.o(i.bsp_led1_init) + i.bsp_led2_init 0x08000808 Section 0 bsp_led.o(i.bsp_led2_init) + i.bsp_led_off 0x0800083c Section 0 bsp_led.o(i.bsp_led_off) + i.bsp_led_on 0x0800085c Section 0 bsp_led.o(i.bsp_led_on) + i.bsp_timer_init 0x08000884 Section 0 bsp_timer.o(i.bsp_timer_init) + i.main 0x08000920 Section 0 main.o(i.main) + i.middleware_init 0x08000960 Section 0 main.o(i.middleware_init) + i.mw_get_led1_state 0x08000968 Section 0 mw_led.o(i.mw_get_led1_state) + mw_get_led1_state 0x08000969 Thumb Code 16 mw_led.o(i.mw_get_led1_state) + i.mw_get_led2_state 0x08000978 Section 0 mw_led.o(i.mw_get_led2_state) + mw_get_led2_state 0x08000979 Thumb Code 16 mw_led.o(i.mw_get_led2_state) + i.mw_get_led_obj 0x08000988 Section 0 mw_led.o(i.mw_get_led_obj) + i.mw_led1_off 0x080009b0 Section 0 mw_led.o(i.mw_led1_off) + mw_led1_off 0x080009b1 Thumb Code 10 mw_led.o(i.mw_led1_off) + i.mw_led1_on 0x080009ba Section 0 mw_led.o(i.mw_led1_on) + mw_led1_on 0x080009bb Thumb Code 10 mw_led.o(i.mw_led1_on) + i.mw_led2_off 0x080009c4 Section 0 mw_led.o(i.mw_led2_off) + mw_led2_off 0x080009c5 Thumb Code 10 mw_led.o(i.mw_led2_off) + i.mw_led2_on 0x080009ce Section 0 mw_led.o(i.mw_led2_on) + mw_led2_on 0x080009cf Thumb Code 10 mw_led.o(i.mw_led2_on) + i.mw_led_drv_init 0x080009d8 Section 0 mw_led.o(i.mw_led_drv_init) + .data 0x20000000 Section 28 bsp_timer.o(.data) + s_uiDelayCount 0x20000000 Data 4 bsp_timer.o(.data) + s_ucTimeOutFlag 0x20000004 Data 1 bsp_timer.o(.data) + s_TIM_CallBack1 0x2000000c Data 4 bsp_timer.o(.data) + s_TIM_CallBack2 0x20000010 Data 4 bsp_timer.o(.data) + s_TIM_CallBack3 0x20000014 Data 4 bsp_timer.o(.data) + s_TIM_CallBack4 0x20000018 Data 4 bsp_timer.o(.data) + .data 0x2000001c Section 20 system_stm32f10x.o(.data) + .bss 0x20000030 Section 40 mw_led.o(.bss) + .bss 0x20000058 Section 12 bsp_timer.o(.bss) + s_tTmr 0x20000058 Data 12 bsp_timer.o(.bss) + .bss 0x20000064 Section 96 libspace.o(.bss) + HEAP 0x200000c8 Section 512 startup_stm32f10x_md.o(HEAP) + Heap_Mem 0x200000c8 Data 512 startup_stm32f10x_md.o(HEAP) + STACK 0x200002c8 Section 1024 startup_stm32f10x_md.o(STACK) + Stack_Mem 0x200002c8 Data 1024 startup_stm32f10x_md.o(STACK) + __initial_sp 0x200006c8 Data 0 startup_stm32f10x_md.o(STACK) Global Symbols Symbol Name Value Ov Type Size Object(Section) - BuildAttributes$$THM_ISAv4$P$D$K$B$S$PE$A:L22UL41UL21$X:L11$S22US41US21$IEEE1$IW$USESV6$~STKCKD$USESV7$~SHL$OSPACE$ROPI$EBA8$UX$STANDARDLIB$REQ8$PRES8$EABIv2 0x00000000 Number 0 anon$$obj.o ABSOLUTE + BuildAttributes$$THM_ISAv4$P$D$K$B$S$PE$A:L22UL41UL21$X:L11$S22US41US21$IEEE1$IW$USESV6$~STKCKD$USESV7$~SHL$OTIME$ROPI$EBA8$UX$STANDARDLIB$REQ8$PRES8$EABIv2 0x00000000 Number 0 anon$$obj.o ABSOLUTE __ARM_use_no_argv 0x00000000 Number 0 main.o ABSOLUTE __ARM_exceptions_init - Undefined Weak Reference __alloca_initialize - Undefined Weak Reference @@ -883,6 +1309,7 @@ Image Symbol Table __cxa_finalize - Undefined Weak Reference __rt_locale - Undefined Weak Reference __sigvec_lookup - Undefined Weak Reference + __user_heap_extent - Undefined Weak Reference _atexit_init - Undefined Weak Reference _call_atexit_fns - Undefined Weak Reference _clock_init - Undefined Weak Reference @@ -895,15 +1322,15 @@ Image Symbol Table _get_lc_time - Undefined Weak Reference _getenv_init - Undefined Weak Reference _handle_redirection - Undefined Weak Reference - _init_alloc - Undefined Weak Reference - _init_user_alloc - Undefined Weak Reference - _initio - Undefined Weak Reference + _mutex_acquire - Undefined Weak Reference + _mutex_free - Undefined Weak Reference + _mutex_release - Undefined Weak Reference + _printf_mbtowc - Undefined Weak Reference + _printf_post_padding - Undefined Weak Reference + _printf_pre_padding - Undefined Weak Reference _rand_init - Undefined Weak Reference _signal_finish - Undefined Weak Reference _signal_init - Undefined Weak Reference - _terminate_alloc - Undefined Weak Reference - _terminate_user_alloc - Undefined Weak Reference - _terminateio - Undefined Weak Reference __Vectors_Size 0x000000ec Number 0 startup_stm32f10x_md.o ABSOLUTE __Vectors 0x08000000 Data 4 startup_stm32f10x_md.o(RESET) __Vectors_End 0x080000ec Data 0 startup_stm32f10x_md.o(RESET) @@ -912,135 +1339,151 @@ Image Symbol Table __scatterload_rt2 0x080000f5 Thumb Code 44 __scatter.o(!!!scatter) __scatterload_rt2_thumb_only 0x080000f5 Thumb Code 0 __scatter.o(!!!scatter) __scatterload_null 0x08000103 Thumb Code 0 __scatter.o(!!!scatter) - __scatterload_zeroinit 0x08000129 Thumb Code 28 __scatter_zi.o(!!handler_zi) - __rt_lib_init 0x08000145 Thumb Code 0 libinit.o(.ARM.Collect$$libinit$$00000000) - __rt_lib_init_alloca_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) - __rt_lib_init_argv_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) - __rt_lib_init_atexit_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) - __rt_lib_init_clock_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000021) - __rt_lib_init_cpp_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000032) - __rt_lib_init_exceptions_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000030) - __rt_lib_init_fp_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000002) - __rt_lib_init_fp_trap_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) - __rt_lib_init_getenv_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000023) - __rt_lib_init_heap_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) - __rt_lib_init_lc_collate_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000011) - __rt_lib_init_lc_ctype_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000013) - __rt_lib_init_lc_monetary_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000015) - __rt_lib_init_lc_numeric_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000017) - __rt_lib_init_lc_time_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000019) - __rt_lib_init_preinit_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000004) - __rt_lib_init_rand_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) - __rt_lib_init_return 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000033) - __rt_lib_init_signal_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) - __rt_lib_init_stdio_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000025) - __rt_lib_init_user_alloc_1 0x08000147 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) - __rt_lib_shutdown 0x08000149 Thumb Code 0 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) - __rt_lib_shutdown_cpp_1 0x0800014b Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) - __rt_lib_shutdown_fini_1 0x0800014b Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) - __rt_lib_shutdown_fp_trap_1 0x0800014b Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000009) - __rt_lib_shutdown_heap_1 0x0800014b Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000011) - __rt_lib_shutdown_return 0x0800014b Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000012) - __rt_lib_shutdown_signal_1 0x0800014b Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) - __rt_lib_shutdown_stdio_1 0x0800014b Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000006) - __rt_lib_shutdown_user_alloc_1 0x0800014b Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E) - __rt_entry 0x0800014d Thumb Code 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) - __rt_entry_presh_1 0x0800014d Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) - __rt_entry_sh 0x0800014d Thumb Code 0 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) - __rt_entry_li 0x08000153 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) - __rt_entry_postsh_1 0x08000153 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) - __rt_entry_main 0x08000157 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) - __rt_entry_postli_1 0x08000157 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) - __rt_exit 0x0800015f Thumb Code 0 rtexit.o(.ARM.Collect$$rtexit$$00000000) - __rt_exit_ls 0x08000161 Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000003) - __rt_exit_prels_1 0x08000161 Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) - __rt_exit_exit 0x08000165 Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000004) - Reset_Handler 0x0800016d Thumb Code 8 startup_stm32f10x_md.o(.text) - NMI_Handler 0x08000175 Thumb Code 2 startup_stm32f10x_md.o(.text) - HardFault_Handler 0x08000177 Thumb Code 2 startup_stm32f10x_md.o(.text) - MemManage_Handler 0x08000179 Thumb Code 2 startup_stm32f10x_md.o(.text) - BusFault_Handler 0x0800017b Thumb Code 2 startup_stm32f10x_md.o(.text) - UsageFault_Handler 0x0800017d Thumb Code 2 startup_stm32f10x_md.o(.text) - SVC_Handler 0x0800017f Thumb Code 2 startup_stm32f10x_md.o(.text) - DebugMon_Handler 0x08000181 Thumb Code 2 startup_stm32f10x_md.o(.text) - PendSV_Handler 0x08000183 Thumb Code 2 startup_stm32f10x_md.o(.text) - SysTick_Handler 0x08000185 Thumb Code 2 startup_stm32f10x_md.o(.text) - ADC1_2_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - CAN1_RX1_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - CAN1_SCE_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - DMA1_Channel1_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - DMA1_Channel2_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - DMA1_Channel3_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - DMA1_Channel4_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - DMA1_Channel5_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - DMA1_Channel6_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - DMA1_Channel7_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - EXTI0_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - EXTI15_10_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - EXTI1_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - EXTI2_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - EXTI3_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - EXTI4_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - EXTI9_5_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - FLASH_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - I2C1_ER_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - I2C1_EV_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - I2C2_ER_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - I2C2_EV_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - PVD_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - RCC_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - RTCAlarm_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - RTC_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - SPI1_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - SPI2_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - TAMPER_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - TIM1_BRK_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - TIM1_CC_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - TIM1_TRG_COM_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - TIM1_UP_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - TIM2_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - TIM3_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - TIM4_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - USART2_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - USART3_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - USBWakeUp_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - USB_HP_CAN1_TX_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - USB_LP_CAN1_RX0_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - WWDG_IRQHandler 0x08000187 Thumb Code 0 startup_stm32f10x_md.o(.text) - __user_initial_stackheap 0x08000189 Thumb Code 0 startup_stm32f10x_md.o(.text) - __use_two_region_memory 0x080001ad Thumb Code 2 heapauxi.o(.text) - __rt_heap_escrow$2region 0x080001af Thumb Code 2 heapauxi.o(.text) - __rt_heap_expand$2region 0x080001b1 Thumb Code 2 heapauxi.o(.text) - __user_setup_stackheap 0x080001b3 Thumb Code 74 sys_stackheap_outer.o(.text) - exit 0x080001fd Thumb Code 18 exit.o(.text) - __user_libspace 0x08000211 Thumb Code 8 libspace.o(.text) - __user_perproc_libspace 0x08000211 Thumb Code 0 libspace.o(.text) - __user_perthread_libspace 0x08000211 Thumb Code 0 libspace.o(.text) - _sys_exit 0x08000219 Thumb Code 8 sys_exit.o(.text) - __I$use$semihosting 0x08000225 Thumb Code 0 use_no_semi.o(.text) - __use_no_semihosting_swi 0x08000225 Thumb Code 2 use_no_semi.o(.text) - GPIO_Init 0x08000227 Thumb Code 278 stm32f10x_gpio.o(i.GPIO_Init) - __semihosting_library_function 0x08000227 Thumb Code 0 indicate_semi.o(.text) - NVIC_PriorityGroupConfig 0x0800033d Thumb Code 10 misc.o(i.NVIC_PriorityGroupConfig) - RCC_APB2PeriphClockCmd 0x08000351 Thumb Code 26 stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd) - SystemInit 0x08000459 Thumb Code 78 system_stm32f10x.o(i.SystemInit) - USART1_IRQHandler 0x080004b9 Thumb Code 56 interrupt_handler.o(i.USART1_IRQHandler) - USART_ClearITPendingBit 0x080004f5 Thumb Code 30 stm32f10x_usart.o(i.USART_ClearITPendingBit) - USART_GetITStatus 0x08000513 Thumb Code 84 stm32f10x_usart.o(i.USART_GetITStatus) - USART_ReceiveData 0x08000567 Thumb Code 10 stm32f10x_usart.o(i.USART_ReceiveData) - bsp_get_led_ttlState 0x08000571 Thumb Code 22 bsp_led.o(i.bsp_get_led_ttlState) - bsp_led1_init 0x08000591 Thumb Code 46 bsp_led.o(i.bsp_led1_init) - bsp_led2_init 0x080005c5 Thumb Code 46 bsp_led.o(i.bsp_led2_init) - bsp_led_off 0x080005f9 Thumb Code 24 bsp_led.o(i.bsp_led_off) - bsp_led_on 0x08000619 Thumb Code 32 bsp_led.o(i.bsp_led_on) - main 0x08000641 Thumb Code 16 main.o(i.main) - middleware_init 0x08000651 Thumb Code 8 main.o(i.middleware_init) - mw_led_drv_init 0x080006a1 Thumb Code 74 mw_led.o(i.mw_led_drv_init) - Region$$Table$$Base 0x08000710 Number 0 anon$$obj.o(Region$$Table) - Region$$Table$$Limit 0x08000720 Number 0 anon$$obj.o(Region$$Table) - led_drv_buf 0x20000000 Data 40 mw_led.o(.bss) - __libspace_start 0x20000028 Data 96 libspace.o(.bss) - __temporary_stack_top$libspace 0x20000088 Data 0 libspace.o(.bss) + __scatterload_copy 0x08000129 Thumb Code 26 __scatter_copy.o(!!handler_copy) + __scatterload_zeroinit 0x08000145 Thumb Code 28 __scatter_zi.o(!!handler_zi) + __rt_lib_init 0x08000161 Thumb Code 0 libinit.o(.ARM.Collect$$libinit$$00000000) + __rt_lib_init_alloca_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) + __rt_lib_init_argv_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) + __rt_lib_init_atexit_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) + __rt_lib_init_clock_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000021) + __rt_lib_init_cpp_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000032) + __rt_lib_init_exceptions_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000030) + __rt_lib_init_fp_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000002) + __rt_lib_init_fp_trap_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) + __rt_lib_init_getenv_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000023) + __rt_lib_init_heap_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) + __rt_lib_init_lc_collate_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000011) + __rt_lib_init_lc_ctype_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000013) + __rt_lib_init_lc_monetary_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000015) + __rt_lib_init_lc_numeric_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000017) + __rt_lib_init_lc_time_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000019) + __rt_lib_init_preinit_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000004) + __rt_lib_init_rand_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) + __rt_lib_init_return 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000033) + __rt_lib_init_signal_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) + __rt_lib_init_stdio_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000025) + __rt_lib_init_user_alloc_1 0x08000163 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) + __rt_lib_shutdown 0x08000165 Thumb Code 0 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) + __rt_lib_shutdown_cpp_1 0x08000167 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000004) + __rt_lib_shutdown_fini_1 0x08000167 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000002) + __rt_lib_shutdown_fp_trap_1 0x08000167 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000009) + __rt_lib_shutdown_heap_1 0x08000167 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000011) + __rt_lib_shutdown_return 0x08000167 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000012) + __rt_lib_shutdown_signal_1 0x08000167 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000C) + __rt_lib_shutdown_stdio_1 0x08000167 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000006) + __rt_lib_shutdown_user_alloc_1 0x08000167 Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E) + __rt_entry 0x08000169 Thumb Code 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) + __rt_entry_presh_1 0x08000169 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) + __rt_entry_sh 0x08000169 Thumb Code 0 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) + __rt_entry_li 0x0800016f Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) + __rt_entry_postsh_1 0x0800016f Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) + __rt_entry_main 0x08000173 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) + __rt_entry_postli_1 0x08000173 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) + __rt_exit 0x0800017b Thumb Code 0 rtexit.o(.ARM.Collect$$rtexit$$00000000) + __rt_exit_ls 0x0800017d Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000003) + __rt_exit_prels_1 0x0800017d Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) + __rt_exit_exit 0x08000181 Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000004) + Reset_Handler 0x08000189 Thumb Code 8 startup_stm32f10x_md.o(.text) + NMI_Handler 0x08000191 Thumb Code 2 startup_stm32f10x_md.o(.text) + HardFault_Handler 0x08000193 Thumb Code 2 startup_stm32f10x_md.o(.text) + MemManage_Handler 0x08000195 Thumb Code 2 startup_stm32f10x_md.o(.text) + BusFault_Handler 0x08000197 Thumb Code 2 startup_stm32f10x_md.o(.text) + UsageFault_Handler 0x08000199 Thumb Code 2 startup_stm32f10x_md.o(.text) + SVC_Handler 0x0800019b Thumb Code 2 startup_stm32f10x_md.o(.text) + DebugMon_Handler 0x0800019d Thumb Code 2 startup_stm32f10x_md.o(.text) + PendSV_Handler 0x0800019f Thumb Code 2 startup_stm32f10x_md.o(.text) + ADC1_2_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + CAN1_RX1_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + CAN1_SCE_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + DMA1_Channel1_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + DMA1_Channel2_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + DMA1_Channel3_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + DMA1_Channel4_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + DMA1_Channel5_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + DMA1_Channel6_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + DMA1_Channel7_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + EXTI0_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + EXTI15_10_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + EXTI1_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + EXTI2_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + EXTI3_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + EXTI4_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + EXTI9_5_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + FLASH_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + I2C1_ER_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + I2C1_EV_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + I2C2_ER_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + I2C2_EV_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + PVD_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + RCC_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + RTCAlarm_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + RTC_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + SPI1_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + SPI2_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + TAMPER_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + TIM1_BRK_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + TIM1_CC_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + TIM1_TRG_COM_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + TIM1_UP_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + TIM4_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + USART2_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + USART3_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + USBWakeUp_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + USB_HP_CAN1_TX_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + USB_LP_CAN1_RX0_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + WWDG_IRQHandler 0x080001a3 Thumb Code 0 startup_stm32f10x_md.o(.text) + __user_initial_stackheap 0x080001a5 Thumb Code 0 startup_stm32f10x_md.o(.text) + __aeabi_memcpy4 0x080001c9 Thumb Code 0 rt_memcpy_w.o(.text) + __aeabi_memcpy8 0x080001c9 Thumb Code 0 rt_memcpy_w.o(.text) + __rt_memcpy_w 0x080001c9 Thumb Code 100 rt_memcpy_w.o(.text) + _memcpy_lastbytes_aligned 0x08000211 Thumb Code 0 rt_memcpy_w.o(.text) + __use_two_region_memory 0x0800022d Thumb Code 2 heapauxi.o(.text) + __rt_heap_escrow 0x0800022f Thumb Code 2 heapauxi.o(.text) + __rt_heap_expand 0x08000231 Thumb Code 2 heapauxi.o(.text) + __user_setup_stackheap 0x08000233 Thumb Code 74 sys_stackheap_outer.o(.text) + exit 0x0800027d Thumb Code 18 exit.o(.text) + __user_libspace 0x08000291 Thumb Code 8 libspace.o(.text) + __user_perproc_libspace 0x08000291 Thumb Code 0 libspace.o(.text) + __user_perthread_libspace 0x08000291 Thumb Code 0 libspace.o(.text) + __I$use$semihosting 0x08000299 Thumb Code 0 use_no_semi.o(.text) + __use_no_semihosting_swi 0x08000299 Thumb Code 2 use_no_semi.o(.text) + __semihosting_library_function 0x0800029b Thumb Code 0 indicate_semi.o(.text) + _sys_exit 0x0800029d Thumb Code 8 sys_exit.o(.text) + GPIO_Init 0x080002a9 Thumb Code 278 stm32f10x_gpio.o(i.GPIO_Init) + NVIC_PriorityGroupConfig 0x080003c1 Thumb Code 10 misc.o(i.NVIC_PriorityGroupConfig) + RCC_APB2PeriphClockCmd 0x080003d5 Thumb Code 26 stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd) + SysTick_Handler 0x080004dd Thumb Code 8 bsp_timer.o(i.SysTick_Handler) + SysTick_ISR 0x080004e5 Thumb Code 54 bsp_timer.o(i.SysTick_ISR) + SystemInit 0x08000529 Thumb Code 78 system_stm32f10x.o(i.SystemInit) + TIM2_IRQHandler 0x08000589 Thumb Code 22 bsp_timer.o(i.TIM2_IRQHandler) + TIM3_IRQHandler 0x080005a1 Thumb Code 158 bsp_timer.o(i.TIM3_IRQHandler) + TIM_ClearITPendingBit 0x08000655 Thumb Code 6 stm32f10x_tim.o(i.TIM_ClearITPendingBit) + TIM_GetITStatus 0x0800065b Thumb Code 34 stm32f10x_tim.o(i.TIM_GetITStatus) + TIM_ITConfig 0x0800067d Thumb Code 18 stm32f10x_tim.o(i.TIM_ITConfig) + USART1_IRQHandler 0x08000691 Thumb Code 56 interrupt_handler.o(i.USART1_IRQHandler) + USART_ClearITPendingBit 0x080006cd Thumb Code 30 stm32f10x_usart.o(i.USART_ClearITPendingBit) + USART_GetITStatus 0x080006eb Thumb Code 84 stm32f10x_usart.o(i.USART_GetITStatus) + USART_ReceiveData 0x0800073f Thumb Code 10 stm32f10x_usart.o(i.USART_ReceiveData) + bsp_DelayMS 0x08000751 Thumb Code 54 bsp_timer.o(i.bsp_DelayMS) + bsp_get_led_ttlState 0x080007ad Thumb Code 24 bsp_led.o(i.bsp_get_led_ttlState) + bsp_init 0x080007cd Thumb Code 8 main.o(i.bsp_init) + bsp_led1_init 0x080007d5 Thumb Code 46 bsp_led.o(i.bsp_led1_init) + bsp_led2_init 0x08000809 Thumb Code 46 bsp_led.o(i.bsp_led2_init) + bsp_led_off 0x0800083d Thumb Code 24 bsp_led.o(i.bsp_led_off) + bsp_led_on 0x0800085d Thumb Code 32 bsp_led.o(i.bsp_led_on) + bsp_timer_init 0x08000885 Thumb Code 138 bsp_timer.o(i.bsp_timer_init) + main 0x08000921 Thumb Code 64 main.o(i.main) + middleware_init 0x08000961 Thumb Code 8 main.o(i.middleware_init) + mw_get_led_obj 0x08000989 Thumb Code 34 mw_led.o(i.mw_get_led_obj) + mw_led_drv_init 0x080009d9 Thumb Code 74 mw_led.o(i.mw_led_drv_init) + Region$$Table$$Base 0x08000a48 Number 0 anon$$obj.o(Region$$Table) + Region$$Table$$Limit 0x08000a68 Number 0 anon$$obj.o(Region$$Table) + g_iRunTime 0x20000008 Data 4 bsp_timer.o(.data) + SystemCoreClock 0x2000001c Data 4 system_stm32f10x.o(.data) + AHBPrescTable 0x20000020 Data 16 system_stm32f10x.o(.data) + led_drv_buf 0x20000030 Data 40 mw_led.o(.bss) + __libspace_start 0x20000064 Data 96 libspace.o(.bss) + __temporary_stack_top$libspace 0x200000c4 Data 0 libspace.o(.bss) @@ -1050,103 +1493,128 @@ Memory Map of the image Image Entry point : 0x080000ed - Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00000720, Max: 0x00010000, ABSOLUTE) + Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00000a98, Max: 0x00010000, ABSOLUTE) - Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00000720, Max: 0x00010000, ABSOLUTE) + Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00000a68, Max: 0x00010000, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x08000000 0x08000000 0x000000ec Data RO 353 RESET startup_stm32f10x_md.o - 0x080000ec 0x080000ec 0x00000008 Code RO 3391 * !!!main c_w.l(__main.o) - 0x080000f4 0x080000f4 0x00000034 Code RO 3550 !!!scatter c_w.l(__scatter.o) - 0x08000128 0x08000128 0x0000001c Code RO 3552 !!handler_zi c_w.l(__scatter_zi.o) - 0x08000144 0x08000144 0x00000002 Code RO 3418 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) - 0x08000146 0x08000146 0x00000000 Code RO 3425 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3427 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3430 .ARM.Collect$$libinit$$0000000A c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3432 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3434 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3437 .ARM.Collect$$libinit$$00000011 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3439 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3441 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3443 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3445 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3447 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3449 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3451 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3453 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3455 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3457 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3461 .ARM.Collect$$libinit$$0000002C c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3463 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3465 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000000 Code RO 3467 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) - 0x08000146 0x08000146 0x00000002 Code RO 3468 .ARM.Collect$$libinit$$00000033 c_w.l(libinit2.o) - 0x08000148 0x08000148 0x00000002 Code RO 3488 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) - 0x0800014a 0x0800014a 0x00000000 Code RO 3501 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o) - 0x0800014a 0x0800014a 0x00000000 Code RO 3503 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o) - 0x0800014a 0x0800014a 0x00000000 Code RO 3505 .ARM.Collect$$libshutdown$$00000006 c_w.l(libshutdown2.o) - 0x0800014a 0x0800014a 0x00000000 Code RO 3508 .ARM.Collect$$libshutdown$$00000009 c_w.l(libshutdown2.o) - 0x0800014a 0x0800014a 0x00000000 Code RO 3511 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o) - 0x0800014a 0x0800014a 0x00000000 Code RO 3513 .ARM.Collect$$libshutdown$$0000000E c_w.l(libshutdown2.o) - 0x0800014a 0x0800014a 0x00000000 Code RO 3516 .ARM.Collect$$libshutdown$$00000011 c_w.l(libshutdown2.o) - 0x0800014a 0x0800014a 0x00000002 Code RO 3517 .ARM.Collect$$libshutdown$$00000012 c_w.l(libshutdown2.o) - 0x0800014c 0x0800014c 0x00000000 Code RO 3393 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) - 0x0800014c 0x0800014c 0x00000000 Code RO 3395 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) - 0x0800014c 0x0800014c 0x00000006 Code RO 3407 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) - 0x08000152 0x08000152 0x00000000 Code RO 3397 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) - 0x08000152 0x08000152 0x00000004 Code RO 3398 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) - 0x08000156 0x08000156 0x00000000 Code RO 3400 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) - 0x08000156 0x08000156 0x00000008 Code RO 3401 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) - 0x0800015e 0x0800015e 0x00000002 Code RO 3422 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) - 0x08000160 0x08000160 0x00000000 Code RO 3470 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) - 0x08000160 0x08000160 0x00000004 Code RO 3471 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) - 0x08000164 0x08000164 0x00000006 Code RO 3472 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) - 0x0800016a 0x0800016a 0x00000002 PAD - 0x0800016c 0x0800016c 0x00000040 Code RO 354 .text startup_stm32f10x_md.o - 0x080001ac 0x080001ac 0x00000006 Code RO 3389 .text c_w.l(heapauxi.o) - 0x080001b2 0x080001b2 0x0000004a Code RO 3409 .text c_w.l(sys_stackheap_outer.o) - 0x080001fc 0x080001fc 0x00000012 Code RO 3411 .text c_w.l(exit.o) - 0x0800020e 0x0800020e 0x00000002 PAD - 0x08000210 0x08000210 0x00000008 Code RO 3419 .text c_w.l(libspace.o) - 0x08000218 0x08000218 0x0000000c Code RO 3480 .text c_w.l(sys_exit.o) - 0x08000224 0x08000224 0x00000002 Code RO 3491 .text c_w.l(use_no_semi.o) - 0x08000226 0x08000226 0x00000000 Code RO 3493 .text c_w.l(indicate_semi.o) - 0x08000226 0x08000226 0x00000116 Code RO 1533 i.GPIO_Init stm32f10x_gpio.o - 0x0800033c 0x0800033c 0x00000014 Code RO 359 i.NVIC_PriorityGroupConfig misc.o - 0x08000350 0x08000350 0x00000020 Code RO 1954 i.RCC_APB2PeriphClockCmd stm32f10x_rcc.o - 0x08000370 0x08000370 0x00000008 Code RO 248 i.SetSysClock system_stm32f10x.o - 0x08000378 0x08000378 0x000000e0 Code RO 249 i.SetSysClockTo72 system_stm32f10x.o - 0x08000458 0x08000458 0x00000060 Code RO 251 i.SystemInit system_stm32f10x.o - 0x080004b8 0x080004b8 0x0000003c Code RO 3367 i.USART1_IRQHandler interrupt_handler.o - 0x080004f4 0x080004f4 0x0000001e Code RO 3131 i.USART_ClearITPendingBit stm32f10x_usart.o - 0x08000512 0x08000512 0x00000054 Code RO 3138 i.USART_GetITStatus stm32f10x_usart.o - 0x08000566 0x08000566 0x0000000a Code RO 3148 i.USART_ReceiveData stm32f10x_usart.o - 0x08000570 0x08000570 0x00000020 Code RO 186 i.bsp_get_led_ttlState bsp_led.o - 0x08000590 0x08000590 0x00000034 Code RO 187 i.bsp_led1_init bsp_led.o - 0x080005c4 0x080005c4 0x00000034 Code RO 188 i.bsp_led2_init bsp_led.o - 0x080005f8 0x080005f8 0x00000020 Code RO 189 i.bsp_led_off bsp_led.o - 0x08000618 0x08000618 0x00000028 Code RO 190 i.bsp_led_on bsp_led.o - 0x08000640 0x08000640 0x00000010 Code RO 2 i.main main.o - 0x08000650 0x08000650 0x00000008 Code RO 3 i.middleware_init main.o - 0x08000658 0x08000658 0x00000010 Code RO 131 i.mw_get_led1_state mw_led.o - 0x08000668 0x08000668 0x00000010 Code RO 132 i.mw_get_led2_state mw_led.o - 0x08000678 0x08000678 0x0000000a Code RO 134 i.mw_led1_off mw_led.o - 0x08000682 0x08000682 0x0000000a Code RO 135 i.mw_led1_on mw_led.o - 0x0800068c 0x0800068c 0x0000000a Code RO 136 i.mw_led2_off mw_led.o - 0x08000696 0x08000696 0x0000000a Code RO 137 i.mw_led2_on mw_led.o - 0x080006a0 0x080006a0 0x00000070 Code RO 138 i.mw_led_drv_init mw_led.o - 0x08000710 0x08000710 0x00000010 Data RO 3548 Region$$Table anon$$obj.o + 0x08000000 0x08000000 0x000000ec Data RO 495 RESET startup_stm32f10x_md.o + 0x080000ec 0x080000ec 0x00000008 Code RO 3563 * !!!main c_w.l(__main.o) + 0x080000f4 0x080000f4 0x00000034 Code RO 3914 !!!scatter c_w.l(__scatter.o) + 0x08000128 0x08000128 0x0000001a Code RO 3916 !!handler_copy c_w.l(__scatter_copy.o) + 0x08000142 0x08000142 0x00000002 PAD + 0x08000144 0x08000144 0x0000001c Code RO 3918 !!handler_zi c_w.l(__scatter_zi.o) + 0x08000160 0x08000160 0x00000002 Code RO 3701 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) + 0x08000162 0x08000162 0x00000000 Code RO 3703 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3705 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3708 .ARM.Collect$$libinit$$0000000A c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3710 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3712 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3715 .ARM.Collect$$libinit$$00000011 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3717 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3719 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3721 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3723 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3725 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3727 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3729 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3731 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3733 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3735 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3739 .ARM.Collect$$libinit$$0000002C c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3741 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3743 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000000 Code RO 3745 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) + 0x08000162 0x08000162 0x00000002 Code RO 3746 .ARM.Collect$$libinit$$00000033 c_w.l(libinit2.o) + 0x08000164 0x08000164 0x00000002 Code RO 3893 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) + 0x08000166 0x08000166 0x00000000 Code RO 3748 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 3750 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 3752 .ARM.Collect$$libshutdown$$00000006 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 3755 .ARM.Collect$$libshutdown$$00000009 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 3758 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 3760 .ARM.Collect$$libshutdown$$0000000E c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000000 Code RO 3763 .ARM.Collect$$libshutdown$$00000011 c_w.l(libshutdown2.o) + 0x08000166 0x08000166 0x00000002 Code RO 3764 .ARM.Collect$$libshutdown$$00000012 c_w.l(libshutdown2.o) + 0x08000168 0x08000168 0x00000000 Code RO 3565 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) + 0x08000168 0x08000168 0x00000000 Code RO 3578 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) + 0x08000168 0x08000168 0x00000006 Code RO 3590 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) + 0x0800016e 0x0800016e 0x00000000 Code RO 3580 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) + 0x0800016e 0x0800016e 0x00000004 Code RO 3581 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) + 0x08000172 0x08000172 0x00000000 Code RO 3583 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) + 0x08000172 0x08000172 0x00000008 Code RO 3584 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) + 0x0800017a 0x0800017a 0x00000002 Code RO 3773 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) + 0x0800017c 0x0800017c 0x00000000 Code RO 3829 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) + 0x0800017c 0x0800017c 0x00000004 Code RO 3830 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) + 0x08000180 0x08000180 0x00000006 Code RO 3831 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) + 0x08000186 0x08000186 0x00000002 PAD + 0x08000188 0x08000188 0x00000040 Code RO 496 .text startup_stm32f10x_md.o + 0x080001c8 0x080001c8 0x00000064 Code RO 3559 .text c_w.l(rt_memcpy_w.o) + 0x0800022c 0x0800022c 0x00000006 Code RO 3561 .text c_w.l(heapauxi.o) + 0x08000232 0x08000232 0x0000004a Code RO 3615 .text c_w.l(sys_stackheap_outer.o) + 0x0800027c 0x0800027c 0x00000012 Code RO 3688 .text c_w.l(exit.o) + 0x0800028e 0x0800028e 0x00000002 PAD + 0x08000290 0x08000290 0x00000008 Code RO 3767 .text c_w.l(libspace.o) + 0x08000298 0x08000298 0x00000002 Code RO 3770 .text c_w.l(use_no_semi.o) + 0x0800029a 0x0800029a 0x00000000 Code RO 3772 .text c_w.l(indicate_semi.o) + 0x0800029a 0x0800029a 0x00000002 PAD + 0x0800029c 0x0800029c 0x0000000c Code RO 3826 .text c_w.l(sys_exit.o) + 0x080002a8 0x080002a8 0x00000116 Code RO 1675 i.GPIO_Init stm32f10x_gpio.o + 0x080003be 0x080003be 0x00000002 PAD + 0x080003c0 0x080003c0 0x00000014 Code RO 501 i.NVIC_PriorityGroupConfig misc.o + 0x080003d4 0x080003d4 0x00000020 Code RO 2096 i.RCC_APB2PeriphClockCmd stm32f10x_rcc.o + 0x080003f4 0x080003f4 0x00000008 Code RO 459 i.SetSysClock system_stm32f10x.o + 0x080003fc 0x080003fc 0x000000e0 Code RO 460 i.SetSysClockTo72 system_stm32f10x.o + 0x080004dc 0x080004dc 0x00000008 Code RO 237 i.SysTick_Handler bsp_timer.o + 0x080004e4 0x080004e4 0x00000044 Code RO 238 i.SysTick_ISR bsp_timer.o + 0x08000528 0x08000528 0x00000060 Code RO 462 i.SystemInit system_stm32f10x.o + 0x08000588 0x08000588 0x00000016 Code RO 239 i.TIM2_IRQHandler bsp_timer.o + 0x0800059e 0x0800059e 0x00000002 PAD + 0x080005a0 0x080005a0 0x000000b4 Code RO 240 i.TIM3_IRQHandler bsp_timer.o + 0x08000654 0x08000654 0x00000006 Code RO 2732 i.TIM_ClearITPendingBit stm32f10x_tim.o + 0x0800065a 0x0800065a 0x00000022 Code RO 2758 i.TIM_GetITStatus stm32f10x_tim.o + 0x0800067c 0x0800067c 0x00000012 Code RO 2762 i.TIM_ITConfig stm32f10x_tim.o + 0x0800068e 0x0800068e 0x00000002 PAD + 0x08000690 0x08000690 0x0000003c Code RO 3509 i.USART1_IRQHandler interrupt_handler.o + 0x080006cc 0x080006cc 0x0000001e Code RO 3273 i.USART_ClearITPendingBit stm32f10x_usart.o + 0x080006ea 0x080006ea 0x00000054 Code RO 3280 i.USART_GetITStatus stm32f10x_usart.o + 0x0800073e 0x0800073e 0x0000000a Code RO 3290 i.USART_ReceiveData stm32f10x_usart.o + 0x08000748 0x08000748 0x00000006 Code RO 241 i.__set_PRIMASK bsp_timer.o + 0x0800074e 0x0800074e 0x00000002 PAD + 0x08000750 0x08000750 0x00000040 Code RO 243 i.bsp_DelayMS bsp_timer.o + 0x08000790 0x08000790 0x0000001c Code RO 248 i.bsp_SoftTimerDec bsp_timer.o + 0x080007ac 0x080007ac 0x00000020 Code RO 186 i.bsp_get_led_ttlState bsp_led.o + 0x080007cc 0x080007cc 0x00000008 Code RO 1 i.bsp_init main.o + 0x080007d4 0x080007d4 0x00000034 Code RO 187 i.bsp_led1_init bsp_led.o + 0x08000808 0x08000808 0x00000034 Code RO 188 i.bsp_led2_init bsp_led.o + 0x0800083c 0x0800083c 0x00000020 Code RO 189 i.bsp_led_off bsp_led.o + 0x0800085c 0x0800085c 0x00000028 Code RO 190 i.bsp_led_on bsp_led.o + 0x08000884 0x08000884 0x0000009c Code RO 256 i.bsp_timer_init bsp_timer.o + 0x08000920 0x08000920 0x00000040 Code RO 2 i.main main.o + 0x08000960 0x08000960 0x00000008 Code RO 3 i.middleware_init main.o + 0x08000968 0x08000968 0x00000010 Code RO 131 i.mw_get_led1_state mw_led.o + 0x08000978 0x08000978 0x00000010 Code RO 132 i.mw_get_led2_state mw_led.o + 0x08000988 0x08000988 0x00000028 Code RO 133 i.mw_get_led_obj mw_led.o + 0x080009b0 0x080009b0 0x0000000a Code RO 134 i.mw_led1_off mw_led.o + 0x080009ba 0x080009ba 0x0000000a Code RO 135 i.mw_led1_on mw_led.o + 0x080009c4 0x080009c4 0x0000000a Code RO 136 i.mw_led2_off mw_led.o + 0x080009ce 0x080009ce 0x0000000a Code RO 137 i.mw_led2_on mw_led.o + 0x080009d8 0x080009d8 0x00000070 Code RO 138 i.mw_led_drv_init mw_led.o + 0x08000a48 0x08000a48 0x00000020 Data RO 3912 Region$$Table anon$$obj.o - Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08000720, Size: 0x00000688, Max: 0x00005000, ABSOLUTE) + Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08000a68, Size: 0x000006c8, Max: 0x00005000, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x20000000 - 0x00000028 Zero RW 139 .bss mw_led.o - 0x20000028 - 0x00000060 Zero RW 3420 .bss c_w.l(libspace.o) - 0x20000088 - 0x00000200 Zero RW 352 HEAP startup_stm32f10x_md.o - 0x20000288 - 0x00000400 Zero RW 351 STACK startup_stm32f10x_md.o + 0x20000000 0x08000a68 0x0000001c Data RW 259 .data bsp_timer.o + 0x2000001c 0x08000a84 0x00000014 Data RW 463 .data system_stm32f10x.o + 0x20000030 - 0x00000028 Zero RW 139 .bss mw_led.o + 0x20000058 - 0x0000000c Zero RW 257 .bss bsp_timer.o + 0x20000064 - 0x00000060 Zero RW 3768 .bss c_w.l(libspace.o) + 0x200000c4 0x08000a98 0x00000004 PAD + 0x200000c8 - 0x00000200 Zero RW 494 HEAP startup_stm32f10x_md.o + 0x200002c8 - 0x00000400 Zero RW 493 STACK startup_stm32f10x_md.o ============================================================================== @@ -1156,22 +1624,24 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug Object Name - 208 38 0 0 0 11050 bsp_led.o + 208 36 0 0 0 11098 bsp_led.o + 532 64 0 28 12 20495 bsp_timer.o 0 0 0 0 0 32 core_cm3.o - 60 4 0 0 0 516 interrupt_handler.o - 24 0 0 0 0 209709 main.o - 20 10 0 0 0 615 misc.o - 184 38 0 0 40 3588 mw_led.o - 64 26 236 0 1536 968 startup_stm32f10x_md.o - 278 0 0 0 0 2224 stm32f10x_gpio.o - 32 6 0 0 0 673 stm32f10x_rcc.o - 124 0 0 0 0 10154 stm32f10x_usart.o - 328 28 0 0 0 2521 system_stm32f10x.o + 60 4 0 0 0 520 interrupt_handler.o + 80 0 0 0 0 210692 main.o + 20 10 0 0 0 623 misc.o + 224 44 0 0 40 4253 mw_led.o + 64 26 236 0 1536 976 startup_stm32f10x_md.o + 278 0 0 0 0 2240 stm32f10x_gpio.o + 32 6 0 0 0 681 stm32f10x_rcc.o + 58 0 0 0 0 23485 stm32f10x_tim.o + 124 0 0 0 0 10182 stm32f10x_usart.o + 328 28 0 20 0 2901 system_stm32f10x.o ---------------------------------------------------------------------- - 1322 150 252 0 1576 242050 Object Totals - 0 0 16 0 0 0 (incl. Generated) - 0 0 0 0 0 0 (incl. Padding) + 2016 218 268 48 1588 288178 Object Totals + 0 0 32 0 0 0 (incl. Generated) + 8 0 0 0 0 0 (incl. Padding) ---------------------------------------------------------------------- @@ -1182,6 +1652,7 @@ Image component sizes 12 0 0 0 0 0 __rtentry2.o 6 0 0 0 0 0 __rtentry4.o 52 8 0 0 0 0 __scatter.o + 26 0 0 0 0 0 __scatter_copy.o 28 0 0 0 0 0 __scatter_zi.o 18 0 0 0 0 80 exit.o 6 0 0 0 0 152 heapauxi.o @@ -1191,6 +1662,7 @@ Image component sizes 2 0 0 0 0 0 libshutdown.o 2 0 0 0 0 0 libshutdown2.o 8 4 0 0 96 68 libspace.o + 100 0 0 0 0 80 rt_memcpy_w.o 2 0 0 0 0 0 rtexit.o 10 0 0 0 0 0 rtexit2.o 12 4 0 0 0 68 sys_exit.o @@ -1198,17 +1670,17 @@ Image component sizes 2 0 0 0 0 68 use_no_semi.o ---------------------------------------------------------------------- - 250 16 0 0 96 584 Library Totals - 4 0 0 0 0 0 (incl. Padding) + 380 16 0 0 100 664 Library Totals + 8 0 0 0 4 0 (incl. Padding) ---------------------------------------------------------------------- Code (inc. data) RO Data RW Data ZI Data Debug Library Name - 246 16 0 0 96 584 c_w.l + 372 16 0 0 96 664 c_w.l ---------------------------------------------------------------------- - 250 16 0 0 96 584 Library Totals + 380 16 0 0 100 664 Library Totals ---------------------------------------------------------------------- @@ -1217,15 +1689,15 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug - 1572 166 252 0 1672 241314 Grand Totals - 1572 166 252 0 1672 241314 ELF Image Totals - 1572 166 252 0 0 0 ROM Totals + 2396 234 268 48 1688 286862 Grand Totals + 2396 234 268 48 1688 286862 ELF Image Totals + 2396 234 268 48 0 0 ROM Totals ============================================================================== - Total RO Size (Code + RO Data) 1824 ( 1.78kB) - Total RW Size (RW Data + ZI Data) 1672 ( 1.63kB) - Total ROM Size (Code + RO Data + RW Data) 1824 ( 1.78kB) + Total RO Size (Code + RO Data) 2664 ( 2.60kB) + Total RW Size (RW Data + ZI Data) 1736 ( 1.70kB) + Total ROM Size (Code + RO Data + RW Data) 2712 ( 2.65kB) ============================================================================== diff --git a/Project/TianyunV1.uvprojx b/Project/TianyunV1.uvprojx index 661b4e3..61ee9a2 100644 --- a/Project/TianyunV1.uvprojx +++ b/Project/TianyunV1.uvprojx @@ -409,6 +409,11 @@ 1 ..\Code\bsp\src\bsp_led.c + + bsp_timer.c + 1 + ..\Code\bsp\src\bsp_timer.c +