提交最新的可以调试的版本,并整理了一点点蓝牙模块部分

This commit is contained in:
xqq27 2025-03-17 22:52:44 +08:00
parent 2d07561118
commit c1adaf32a0
10 changed files with 933 additions and 692 deletions

View File

@ -6,45 +6,62 @@
],
"settings": {
"files.associations": {
"app_dwin_gui.h": "c",
"bsp_common.h": "c",
"app_common.h": "c",
"app_alarm.h": "c",
"app_soft_timer.h": "c",
"custom_motor_protocol.h": "c",
"bsp_uart.h": "c",
"dwin_dgus.h": "c",
"t5los8051.h": "c",
"custom_motor.h": "c",
"motor_task.h": "c",
"modbus.h": "c",
"wtvb01_485.h": "c",
"imu_task.h": "c",
"sys.h": "c",
"types.h": "c",
"screen_comm.h": "c",
"bsp.h": "c",
"bsp_system.h": "c",
"mw_led.h": "c",
"bsp_usart.h": "c",
"stm32f10x_usart.h": "c",
"bsp_gpio.h": "c",
"stm32f10x.h": "c",
"stm32f10x_rcc.h": "c",
"stm32f10x_gpio.h": "c",
"mw_soft_timer.h": "c",
"stm32f10x_tim.h": "c",
"app_led.h": "c",
"mw_printf.h": "c",
"stdint.h": "c",
"misc.h": "c",
"mw_bluetooth.h": "c",
"hc06.h": "c",
"public_diy.h": "c",
"bsp_timer.h": "c",
"bsp_led.h": "c",
"stm32f10x_conf.h": "c"
},
"uart.h": "c",
"usb_data.h": "c",
"man_control_start.h": "c",
"uart2.h": "c",
"sys.h": "c",
"t5los8051.h": "c",
"user.h": "c",
"him_showdata.h": "c",
"string.h": "c",
"types.h": "c",
"mw_rtc.h": "c",
"mw_io_ctrl.h": "c",
"app_io_ctrl.h": "c",
"bsp_io.h": "c",
"mw_adc_ctrl.h": "c",
"app_hardware.h": "c",
"app_formula_manage.h": "c",
"mw_run_mode_manage.h": "c",
"mw_anim.h": "c",
"mw_soft_timer.h": "c",
"app_dwin_gui.h": "c",
"bsp_common.h": "c",
"app_common.h": "c",
"app_alarm.h": "c",
"app_soft_timer.h": "c",
"custom_motor_protocol.h": "c",
"bsp_uart.h": "c",
"dwin_dgus.h": "c",
"custom_motor.h": "c",
"motor_task.h": "c",
"modbus.h": "c",
"wtvb01_485.h": "c",
"imu_task.h": "c",
"screen_comm.h": "c",
"bsp.h": "c",
"bsp_system.h": "c",
"mw_led.h": "c",
"bsp_usart.h": "c",
"stm32f10x_usart.h": "c",
"bsp_gpio.h": "c",
"stm32f10x.h": "c",
"stm32f10x_rcc.h": "c",
"stm32f10x_gpio.h": "c",
"stm32f10x_tim.h": "c",
"app_led.h": "c",
"mw_printf.h": "c",
"stdint.h": "c",
"misc.h": "c",
"mw_bluetooth.h": "c",
"hc06.h": "c",
"public_diy.h": "c",
"bsp_timer.h": "c",
"bsp_led.h": "c",
"stm32f10x_conf.h": "c",
"stdio.h": "c"
},

View File

@ -31,9 +31,9 @@
*************************************************************************************/
void bsp_init(void)
{
bsp_InitTimer();
// bsp_InitTimer();
// bsp_usart_1_init(115200);
bsp_Init();
// bsp_Init();
}
/*************************************************************************************
* @brief
@ -66,6 +66,6 @@ int main(void)
while (1)
{
;
bsp_pwm_test_loop();
}
}

View File

@ -50,6 +50,10 @@ int32_t bsp_GetRunTime(void);
void bsp_InitHardTimer(void);
void bsp_StartHardTimer(uint8_t _CC, uint32_t _uiTimeOut, void * _pCallBack);
void bsp_change_pwm(uint8_t ucData);
void bsp_pwm_test_loop(void);
#endif
/***************************** 安富莱电子 www.armfly.com (END OF FILE) *********************************/

View File

@ -11,7 +11,12 @@
#define BSP_TINER_USER_SYSTICK_PERIOD (1000u)
/*************************************************************************************
* @brief
*
* @warning ,
* @note
*************************************************************************************/
static void bsp_timer_2_init(void)
{
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
@ -28,7 +33,6 @@ static void bsp_timer_2_init(void)
/* 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 级

View File

@ -25,9 +25,24 @@
#define TIM_HARD TIM2
#define TIM_HARD_IRQn TIM2_IRQn
#define TIM_HARD_RCC RCC_APB1Periph_TIM2
/* 外部时钟源定时器 */
#define TIM_EXTERN_INPUT TIM2
#define TIM_EXTERN_INPUT_IRQn TIM2_IRQn
#define TIM_EXTERN_INPUT_RCC RCC_APB1Periph_TIM2
/* 硬件定时器 */
#define TIM_HARD TIM3
#define TIM_HARD_IRQn TIM3_IRQn
#define TIM_HARD_RCC RCC_APB1Periph_TIM3
/* PWM输出比较 定时器 */
#define TIM_PWM TIM4
#define TIM_PWM_IRQn TIM4_IRQn
#define TIM_PWM_RCC RCC_APB1Periph_TIM4
#define TIM_PWM_CH1_PORT GPIOB
#define TIM_PWM_CH1_PIN GPIO_Pin_6
// /* 测试 TIM2_ETR 是否使用重映射功能 */
// #define USE_REMAP_PA15_ENABLE
/* 这2个全局变量转用于 bsp_DelayMS() 函数 */
static volatile uint32_t s_uiDelayCount = 0;
@ -50,43 +65,7 @@ static void (*s_TIM_CallBack2)(void);
static void (*s_TIM_CallBack3)(void);
static void (*s_TIM_CallBack4)(void);
/*
*********************************************************************************************************
* : bsp_InitTimer
* : systick中断
* :
* :
*********************************************************************************************************
*/
void bsp_InitTimer(void)
{
uint8_t i;
/* 清零所有的软件定时器 */
for (i = 0; i < TMR_COUNT; i++)
{
s_tTmr[i].Count = 0;
s_tTmr[i].PreLoad = 0;
s_tTmr[i].Flag = 0;
s_tTmr[i].Mode = TMR_ONCE_MODE; /* 缺省是1次性工作模式 */
}
/*
systic中断周期为1mssystick中断
SystemCoreClock STM32F4XX, 168MHz
SysTick_Config() Systick定时中断.
-- SystemCoreClock / 1000 1000Hz 1ms
-- SystemCoreClock / 500 500Hz 2ms
-- SystemCoreClock / 2000 2000Hz 500us
1msCPU或者低功耗应用 10ms
*/
SysTick_Config(SystemCoreClock / 1000);
bsp_InitHardTimer(); /* 开启硬件定时中断 */
}
/*
*********************************************************************************************************
@ -394,15 +373,12 @@ void SysTick_Handler(void)
SysTick_ISR();
}
/*
*********************************************************************************************************
* : bsp_InitHardTimer
* : TIM2us级别硬件定时TIM4将自由运行.
* TIM4可以用TIM2 - TIM5 TIM, TIM有4个通道, APB1 =SystemCoreClock / 2
* :
* :
*********************************************************************************************************
*/
/*************************************************************************************
* @brief TIM2us级别硬件定时.
*
* @warning
* @note
*************************************************************************************/
void bsp_InitHardTimer(void)
{
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
@ -422,20 +398,19 @@ void bsp_InitHardTimer(void)
APB1 prescaler != 1, APB1上的TIMxCLK = PCLK1 x 2 = SystemCoreClock;
APB2 prescaler = 1, APB2上的TIMxCLK = PCLK2 = SystemCoreClock;
APB1 TIM2, TIM3 ,TIM4, TIM5, TIM6, TIM7, TIM12, TIM13,TIM14
APB2 TIM1, TIM8 ,TIM9, TIM10, TIM11
TIM_Prescaler TIM_Period (0-65535)
----------------------------------------------------------------------- */
// 时基单元定义 此处定义1ms的
TIM_TimeBaseStructure.TIM_Period = (10u - 1); // 周期 ARR自动重装器的值
TIM_TimeBaseStructure.TIM_Period = (10 - 1); // 周期 ARR自动重装器的值
TIM_TimeBaseStructure.TIM_Prescaler = (SystemCoreClock / 10000) - 1 ; // PSC预分频器的值
TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; // 计数器模式
TIM_TimeBaseStructure.TIM_RepetitionCounter = 0; // 重复计数器的值,高级定时器才有
TIM_TimeBaseInit(TIM_HARD, &TIM_TimeBaseStructure);
/* 4. 开启更新中断到NVIC的通路 */
TIM_ClearITPendingBit(TIM_HARD, TIM_IT_Update);
// 在开启更新中断之前,先把这个更新中断清掉,防止一开始就触发了更新中断
TIM_ITConfig(TIM_HARD, TIM_IT_Update, ENABLE);
// 启用影子寄存器
TIM_ARRPreloadConfig(TIM_HARD, ENABLE);
@ -449,6 +424,153 @@ void bsp_InitHardTimer(void)
TIM_Cmd(TIM_HARD, ENABLE);
}
void bsp_pwm_init(void)
{
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
GPIO_InitTypeDef GPIO_InitStructure;
// NVIC_InitTypeDef NVIC_InitStructure; /* 中断结构体在 misc.h 中定义 */
TIM_OCInitTypeDef TIM_OCInitStructure;
/* 1. 使能TIM时钟 */
RCC_APB1PeriphClockCmd(TIM_PWM_RCC, ENABLE);
/* 2. 使用内部时钟 */
TIM_InternalClockConfig(TIM_PWM);
/* 3. 初始化GPIO */
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
GPIO_StructInit(&GPIO_InitStructure);
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_InitStructure.GPIO_Pin = TIM_PWM_CH1_PIN;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(TIM_PWM_CH1_PORT, &GPIO_InitStructure);
/* 3. 配置时基单元 */
/*-----------------------------------------------------------------------
system_stm32f10x.c void SetSysClock(void)
HCLK = SYSCLK / 1 (AHBPeriph)
PCLK2 = HCLK / 1 (APB2Periph)
PCLK1 = HCLK / 2 (APB1Periph)
APB1 prescaler != 1, APB1上的TIMxCLK = PCLK1 x 2 = SystemCoreClock;
APB2 prescaler = 1, APB2上的TIMxCLK = PCLK2 = SystemCoreClock;
TIM_Prescaler TIM_Period (0-65535)
----------------------------------------------------------------------- */
// 时基单元定义 此处定义1ms的
TIM_TimeBaseStructure.TIM_Period = (10 - 1); // 周期 ARR自动重装器的值
TIM_TimeBaseStructure.TIM_Prescaler = (36 - 1); // PSC预分频器的值
TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; // 计数器模式
TIM_TimeBaseStructure.TIM_RepetitionCounter = 0; // 重复计数器的值,高级定时器才有
TIM_TimeBaseInit(TIM_PWM, &TIM_TimeBaseStructure);
TIM_OCStructInit(&TIM_OCInitStructure);
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
TIM_OCInitStructure.TIM_Pulse = 0;
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
TIM_OC1Init(TIM_PWM, &TIM_OCInitStructure);
// /* 4. 开启更新中断到NVIC的通路 */
// TIM_ClearITPendingBit(TIM_PWM, TIM_IT_Update);
// // 在开启更新中断之前,先把这个更新中断清掉,防止一开始就触发了更新中断
// TIM_ITConfig(TIM_PWM, TIM_IT_Update, ENABLE);
// 启用影子寄存器
TIM_ARRPreloadConfig(TIM_PWM, ENABLE);
// /* 5. 配置TIM定时中断 (Update) */
// NVIC_InitStructure.NVIC_IRQChannel = TIM_HARD_IRQn;
// NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 4; /* 比串口优先级低 */
// NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
// NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
// NVIC_Init(&NVIC_InitStructure);
/* 6. TIMx enable counter */
TIM_Cmd(TIM_PWM, ENABLE);
}
void bsp_change_pwm(uint8_t ucData)
{
TIM_SetCompare1(TIM_PWM, ucData);
}
/*************************************************************************************
* @brief
*
* @warning
* @note
*************************************************************************************/
void bsp_pwm_test_loop(void)
{
int8_t tmp_i = 0;
for(tmp_i = 0; tmp_i <= 10; ++tmp_i)
{
bsp_change_pwm(tmp_i);
bsp_DelayMS(50);
}
for(tmp_i = 10; tmp_i >= 0; tmp_i--)
{
bsp_change_pwm(tmp_i);
bsp_DelayMS(50);
}
}
/*************************************************************************************
* @brief
* 使TIM2_ETR 2 100kHz
* TIM2_ETR 使 PA0引脚
*
* @warning
* @note
*************************************************************************************/
void bsp_InitExternInputTimer(void)
{
/* 采用PA0 作为外部ETR时钟信号 */
GPIO_InitTypeDef GPIO_InitStructure;
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
NVIC_InitTypeDef NVIC_InitStructure;
/* 1. 使能TIM时钟 */
RCC_APB1PeriphClockCmd(TIM_EXTERN_INPUT_RCC, ENABLE);
/* 2. 使用外部时钟 ETR */
TIM_ETRClockMode2Config(TIM_EXTERN_INPUT, TIM_ExtTRGPSC_OFF, TIM_ExtTRGPolarity_Inverted, 0x00);
/* 3. 初始化GPIO */
#ifdef USE_REMAP_PA15_ENABLE
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); //使能 PA 端口时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); //使能 PA 端口时钟
GPIO_PinRemapConfig(GPIO_PartialRemap1_TIM2, ENABLE);
GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15; // ETR-->PA.0 端口配置
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; // 上拉输入
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO 口速度为 50MHz
#else
GPIO_Init(GPIOA, &GPIO_InitStructure); //初始化 GPIOA.0
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); //使能 PA 端口时钟
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; // ETR-->PA.0 端口配置
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; // 上拉输入
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO 口速度为 50MHz
GPIO_Init(GPIOA, &GPIO_InitStructure); //初始化 GPIOA.0
#endif
/* 4. 定义时基单元 */
// 此处以外部时钟为100KHz为例
TIM_TimeBaseStructure.TIM_Period = (100u - 1); // 周期 ARR自动重装器的值
TIM_TimeBaseStructure.TIM_Prescaler = (1000u - 1) ; // PSC预分频器的值
TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; // 计数器模式
TIM_TimeBaseStructure.TIM_RepetitionCounter = 0; // 重复计数器的值,高级定时器才有
TIM_TimeBaseInit(TIM_EXTERN_INPUT, &TIM_TimeBaseStructure);
/* 5. 开启更新中断到NVIC的通路 */
TIM_ITConfig(TIM_EXTERN_INPUT, TIM_IT_Update, ENABLE);
// 在开启更新中断之前,先把这个更新中断清掉,防止一开始就触发了更新中断
TIM_ITConfig(TIM_EXTERN_INPUT, TIM_IT_Update, ENABLE);
// 启用影子寄存器
TIM_ARRPreloadConfig(TIM_EXTERN_INPUT, ENABLE);
/* 6. 配置TIM定时中断 (Update) */
NVIC_InitStructure.NVIC_IRQChannel = TIM_EXTERN_INPUT_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 5; /* 比串口优先级低 */
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
/* 7. TIMx enable counter */
TIM_Cmd(TIM_EXTERN_INPUT, ENABLE);
}
/*
*********************************************************************************************************
* : bsp_StartHardTimer
@ -521,25 +643,80 @@ void bsp_StartHardTimer(uint8_t _CC, uint32_t _uiTimeOut, void * _pCallBack)
}
}
/*
*********************************************************************************************************
* : TIMx_IRQHandler
* : TIM
*
* : bsp_InitTimer
* : systick中断
* :
* :
*********************************************************************************************************
*/
//void TIM2_IRQHandler(void)
//void TIM3_IRQHandler(void)
//void TIM4_IRQHandler(void)
void bsp_InitTimer(void)
{
uint8_t i;
/* 清零所有的软件定时器 */
for (i = 0; i < TMR_COUNT; i++)
{
s_tTmr[i].Count = 0;
s_tTmr[i].PreLoad = 0;
s_tTmr[i].Flag = 0;
s_tTmr[i].Mode = TMR_ONCE_MODE; /* 缺省是1次性工作模式 */
}
/*
systic中断周期为1mssystick中断
SystemCoreClock STM32F4XX, 168MHz
SysTick_Config() Systick定时中断.
-- SystemCoreClock / 1000 1000Hz 1ms
-- SystemCoreClock / 500 500Hz 2ms
-- SystemCoreClock / 2000 2000Hz 500us
1msCPU或者低功耗应用 10ms
*/
SysTick_Config(SystemCoreClock / 1000);
/* 开启硬件定时中断 */
bsp_InitHardTimer();
/* 初始化外部输入定时器 */
bsp_InitExternInputTimer();
/* 初始化 pwm 输出比较 */
bsp_pwm_init();
}
/*************************************************************************************
* @brief TIM2
*
* @warning
* @note
*************************************************************************************/
void TIM2_IRQHandler(void)
{
if(RESET != TIM_GetITStatus(TIM_EXTERN_INPUT, TIM_IT_Update))
{
TIM_ClearITPendingBit(TIM_EXTERN_INPUT, TIM_IT_Update);
/* add your code here. */
bsp_LedToggle(LED1);
}
}
/*************************************************************************************
* @brief TIM3
*
* @warning
* @note
*************************************************************************************/
void TIM3_IRQHandler(void)
{
if(RESET != TIM_GetITStatus(TIM_HARD, TIM_IT_Update))
{
TIM_ClearITPendingBit(TIM_HARD, TIM_IT_Update);
/* add your code here. */
// bsp_LedToggle(LED2);
bsp_LedToggle(LED2);
}
@ -580,4 +757,5 @@ void TIM2_IRQHandler(void)
}
}
/***************************** 安富莱电子 www.armfly.com (END OF FILE) *********************************/

View File

@ -11,7 +11,7 @@
#define BLUETOOTH_USART_PERIPH (USART1)
// Initial the entity of bluetooth buf.
mw_bluetooth_t bluetooth_drv_buf[bluetooth_num];
mw_bluetooth_t bt_drv_buf[bluetooth_num];
/*************************************************************************************
* @brief Get the bluetooth object
@ -27,10 +27,16 @@ mw_bluetooth_t mw_get_bluetooth_drv(bluetooth_type_enum e_val)
{
while(1);
}
return bluetooth_drv_buf[e_val];
return bt_drv_buf[e_val];
}
static int8_t mw_usart_init(void)
/*************************************************************************************
* @brief Bluetooth_usart init function
* @return int8_t
*
* @warning ,
* @note
*************************************************************************************/
static int8_t bluetooth_system_usart_init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
USART_InitTypeDef USART_InitStructure;
@ -75,22 +81,39 @@ static int8_t mw_usart_init(void)
return RET_OK;
}
static int8_t mw_usart_deinit(void)
static int8_t bluetooth_system_usart_deinit(void)
{
USART_DeInit(BLUETOOTH_USART_PERIPH);
return RET_OK;
}
static int8_t mw_send_one_byte(uint8_t uc_data)
static int8_t bluetooth_system_usart_send_one_byte(uint8_t uc_data)
{
USART_SendData(BLUETOOTH_USART_PERIPH, uc_data);
return RET_OK;
}
static uint8_t mw_receive_one_byte(void)
static uint8_t bluetooth_system_usart_receive_one_byte(void)
{
return (uint8_t)(USART_ReceiveData(BLUETOOTH_USART_PERIPH));
}
static void bluetooth_init(void)
{
;
}
static void bluetooth_deinit(void)
{
;
}
static void bluetooth_send_bytes(uint8_t * tx_buf, uint16_t len)
{
;
}
static void bluetooth_recv_deal(void)
{
;
}
/*************************************************************************************
* @brief bluetooth driver init.
*
@ -99,19 +122,23 @@ static uint8_t mw_receive_one_byte(void)
*************************************************************************************/
void mw_bluetooth_drv_init(void)
{
/* hc06 init */
// bluetooth driver type
bluetooth_drv_buf[hc06].bluetooth_drv = hc06;
// timer api
bluetooth_drv_buf[hc06].timer_obj.pf_get_systick_ms = get_systick_ms;
// usart api
// bluetooth_drv_buf[hc06].bluetooth_usart.usart_type = ;
bluetooth_drv_buf[hc06].bluetooth_usart.pf_init = mw_usart_init;
bluetooth_drv_buf[hc06].bluetooth_usart.pf_deinit = mw_usart_deinit;
bluetooth_drv_buf[hc06].bluetooth_usart.pf_recv_one_byte = mw_receive_one_byte;
bluetooth_drv_buf[hc06].bluetooth_usart.pf_trans_one_byte = mw_send_one_byte;
/* =============== hc06 init ======================== */
/* launcg bluetooth driver type */
bt_drv_buf[hc06].bt_drv = hc06;
/* launch timer api - 32bit systick */
bt_drv_buf[hc06].bt_timer.pf_get_systick_ms = get_systick_ms;
/* launch the api of USART. */
bt_drv_buf[hc06].bt_usart.pf_init = bluetooth_system_usart_init;
bt_drv_buf[hc06].bt_usart.pf_deinit = bluetooth_system_usart_deinit;
bt_drv_buf[hc06].bt_usart.pf_recv_one_byte = bluetooth_system_usart_receive_one_byte;
bt_drv_buf[hc06].bt_usart.pf_trans_one_byte = bluetooth_system_usart_send_one_byte;
bt_drv_buf[hc06].bt_usart.pf_recv_one_byte = bluetooth_system_usart_receive_one_byte;
/* launch the api of inner bluetooth. */
bt_drv_buf[hc06].pf_init = bluetooth_init;
bt_drv_buf[hc06].pf_deinit = bluetooth_deinit;
bt_drv_buf[hc06].pf_send_bytes = bluetooth_send_bytes;
bt_drv_buf[hc06].pf_recv_deal = bluetooth_recv_deal;
}

View File

@ -13,27 +13,27 @@ typedef enum
typedef struct
{
// void * usart_type;
int8_t (*pf_init)(void);
int8_t (*pf_deinit)(void);
int8_t (*pf_init)(void); // system_usart init. func.
int8_t (*pf_deinit)(void); // system_usart deinit. func.
// tx rx function
int8_t (*pf_trans_one_byte)(uint8_t tx_data);
uint8_t (*pf_recv_one_byte)(void);
int8_t (*pf_trans_one_byte)(uint8_t tx_data); // system_usart trans. one byte func.
uint8_t (*pf_recv_one_byte)(void); // system_usart recv. one byte func.
}system_usart_t;
/* timer api define */
typedef struct
{
uint32_t (*pf_get_systick_ms)(void);
uint32_t (*pf_get_systick_ms)(void); // system_timers recv. one byte func. You can use software timer here.
}system_timetick_t;
typedef struct
{
// the type of bluetooth
bluetooth_type_enum bluetooth_drv;
// usart api
system_usart_t bluetooth_usart;
// timer api
system_timetick_t timer_obj;
bluetooth_type_enum bt_drv;
// system_usart api
system_usart_t bt_usart;
// system_timers api
system_timetick_t bt_timer;
void (*pf_init)(void);
void (*pf_deinit)(void);
void (*pf_send_bytes)(uint8_t * tx_buf, uint16_t len);

View File

@ -1,8 +1,8 @@
:020000040800F2
:1000000028070020890100089101000893010008D9
:1000000018070020890100089101000893010008E9
:100010009501000897010008990100080000000000
:100020000000000000000000000000009B0100082C
:100030009D010008000000009F010008190600084B
:100030009D010008000000009F010008F90500086C
:10004000A3010008A3010008A3010008A301000800
:10005000A3010008A3010008A3010008A3010008F0
:10006000A3010008A3010008A3010008A3010008E0
@ -10,31 +10,31 @@
:10008000A3010008A3010008A3010008A3010008C0
:10009000A3010008A3010008A3010008A3010008B0
:1000A000A3010008A3010008A3010008A3010008A0
:1000B00005070008A3010008A3010008A301000828
:1000B000E506000801070008A3010008A3010008E5
:1000C000A3010008A3010008A3010008A301000880
:1000D000A3010008D1080008A3010008A30100083B
:1000D000A3010008F9070008A3010008A301000814
:1000E000A3010008A3010008A301000800F002F822
:1000F00000F03AF80AA090E8000C82448344AAF188
:100100000107DA4501D100F02FF8AFF2090EBAE885
:100110000F0013F0010F18BFFB1A43F0010318473B
:10012000B80E0000D80E0000103A24BF78C878C17D
:10012000D40C0000F40C0000103A24BF78C878C149
:10013000FAD8520724BF30C830C144BF04680C60ED
:10014000704700000023002400250026103A28BF35
:1001500078C1FBD8520728BF30C148BF0B60704739
:100160001FB51FBD10B510BD00F033F81146FFF7E5
:10017000F7FF00F02DFE00F051F803B4FFF7F2FF97
:1001800003BC00F0F6FC000009488047094800471E
:10017000F7FF00F09DFD00F051F803B4FFF7F2FF28
:1001800003BC00F08DFC0000094880470948004787
:10019000FEE7FEE7FEE7FEE7FEE7FEE7FEE7FEE737
:1001A000FEE7FEE704480549054A064B7047000094
:1001B000A5060008ED0000082801002028070020FF
:1001C00028030020280300207047704770477047BD
:1001B00085060008ED00000818010020180700203F
:1001C00018030020180300207047704770477047DD
:1001D0007047754600F02CF8AE4605006946534658
:1001E00020F00700854618B020B5FFF7DBFFBDE81B
:1001F00020404FF000064FF000074FF000084FF08E
:10020000000B21F00701AC46ACE8C009ACE8C0091E
:10021000ACE8C009ACE8C0098D46704710B504468B
:10022000AFF300802046BDE81040FFF7A6BF0000F6
:1002300000487047C80000202DE9F0410246002523
:1002300000487047B40000202DE9F0410246002537
:100240000026002000230024002791F803C00CF0B2
:100250000F0591F803C00CF0100CBCF1000F03D097
:1002600091F802C04CEA050591F800C0BCF1000FFE
@ -61,204 +61,172 @@
:1003B000044D0678761145F8264070BD0CED00E03E
:1003C00000E400E080E100E002490143024A1160DC
:1003D000704700000000FA050CED00E029B1064A64
:1003E000D2690243044BDA6104E0034AD2698243D2
:1003F000014BDA61704700000010024029B1064A43
:1004000012690243044B1A6104E0034A12698243F1
:10041000014B1A61704700000010024029B1064AE2
:1004200092690243044B9A6104E0034A9269824351
:10043000014B9A61704700000010024029B1064A42
:10044000D2680243044BDA6004E0034AD268824374
:10045000014BDA60704700000010024030B5002107
:100460000022002400232D4D6D6805F00C0121B100
:10047000042905D0082923D105E0294D056022E093
:10048000274D05601FE0254D6D6805F47012234D62
:100490006D6805F48034022505EB92421CB9214DAC
:1004A000554305600BE01D4D6D6805F400351DB129
:1004B0001C4D5543056002E0194D5543056002E0AF
:1004C000174D056000BF00BF144D6D6805F0F001C9
:1004D0000909154D6B5C0568DD4045600F4D6D6881
:1004E00005F4E061090A104D6B5C4568DD408560EC
:1004F0000A4D6D6805F46051C90A0B4D6B5C456887
:10050000DD40C560054D6D6805F44041890B074D20
:100510006B5CC568B5FBF3F5056130BD00100240AA
:1005200000127A0000093D003C0000204C00002031
:1005300010B500F001F810BD0CB50020019000903E
:100540003348006840F480303149086000BF3048CB
:10055000006800F4003000900198401C0190009861
:1005600018B90198B0F5A06FF1D12948006800F4DE
:10057000003010B10120009001E0002000900098B0
:10058000012843D12348006840F010002149086049
:100590000846006820F0070008600846006840F040
:1005A000020008601A4840681949486008464068D7
:1005B00048600846406840F48060486008464068EB
:1005C00020F47C1048600846406840F4E810486019
:1005D0000846006840F08070086000BF0C48006862
:1005E00000F000700028F9D00948406820F00300AE
:1005F000074948600846406840F00200486000BF74
:100600000348406800F00C000828F9D10CBD000038
:10061000001002400020024010B500F001F810BDAB
:1006200010B51B48006840B119480068401E1849C1
:10063000086010B9012017490870002408E004EB95
:100640004401154A02EB810000F0A8FB601CC4B213
:10065000012CF4DB11480068401C10490860084672
:1006600000686FF00041884202D100200B49086009
:1006700000F080FB0A480078401CC0B208490870AE
:100680000A2803DB0020087000F072FB10BD000098
:10069000080000200C000020940000201000002022
:1006A0002400002010B51348006840F001001149F3
:1006B000086008464068104908400E4948600846EE
:1006C00000680E4908400B4908600846006820F49D
:1006D000802008600846406820F4FE0048604FF41F
:1006E0001F008860FFF724FF4FF000600449086096
:1006F00010BD0000001002400000FFF8FFFFF6FEF2
:1007000008ED00E010B50121880700F06EF818B17F
:100710000121880700F05AF80221480700F065F827
:1007200058B10221480700F051F800220221480781
:1007300000F06CF81B48006880470421080700F0AF
:1007400054F858B10421080700F040F800220421B1
:10075000080700F05BF81448006880470821C806C5
:1007600000F043F858B10821C80600F02FF8002225
:100770000821C80600F04AF80C480068804710219C
:10078000880600F032F858B11021880600F01EF8F3
:1007900000221021880600F039F8054800688047DB
:1007A00010BD000014000020180000201C000020D4
:1007B0002000002021B1028842F08002028004E083
:1007C00002884FF67F731A4002807047CA43028244
:1007D000704721B1028842F00102028004E00288E1
:1007E0004FF6FE731A400280704730B50246002073
:1007F00000230024158A05EA0103958905EA01040E
:1008000013B10CB1012000E0002030BD1AB1838982
:100810000B43838102E083898B4383817047018985
:100820004FF6F872114001817047000000220288E3
:100830001D4B98420ED01D4B98420BD0B0F1804F0B
:1008400008D01B4B984205D01A4B984202D01A4B45
:10085000984204D14FF68F731A404B881A43174BB6
:10086000984207D0164B984204D04FF6FF431A40E7
:10087000CB881A4302808B8883850B8803850A4BBB
:1008800098420BD0094B984208D00E4B984205D0A5
:100890000D4B984202D00D4B984201D10B7A038642
:1008A0000123838270470000002C01400034014086
:1008B0000004004000080040000C00400010004010
:1008C0000014004000400140004401400048014045
:1008D00010B540F226610E4800F086F820B140F2D3
:1008E00026610B4800F016F840F22551084800F048
:1008F0007BF858B140F22551054800F00BF8044848
:1009000000F02EF9C4B2204600F0DCFA10BD000061
:100910000038014010B50022002340F66A14A142BD
:1009200000D100BF0A1201249440A3B2DC4304802A
:1009300010BD21B1828942F40052828104E0828993
:100940004DF6FF731A4082817047000010B50446CF
:100950002048844209D101218803FFF76FFD00215F
:100960004FF48040FFF76AFD32E01B48844209D112
:1009700001214804FFF742FD00214FF40030FFF74A
:100980003DFD25E01548844209D101218804FFF787
:1009900035FD00214FF48020FFF730FD18E01048AE
:1009A000844209D10121C804FFF728FD00214FF43A
:1009B0000020FFF723FD0BE00A48844208D1012103
:1009C0000805FFF71BFD00214FF48010FFF716FD0F
:1009D00010BD0000003801400044004000480040C5
:1009E000004C00400050004070B502460024002337
:1009F0000025002040F66A16B14200D100BFC1F3C5
:100A0000421501F01F03012606FA03F3012D02D15E
:100A10009689334006E0022D02D1168A334001E068
:100A2000968A33400C12012606FA04F416883440E4
:100A300013B10CB1012000E0002070BDF0B50346F9
:100A4000002400260025002040F66A17B94200D194
:100A500000BF1846C1F3421401F01F06012707FA30
:100A600006F5012C01D10C3004E0022C01D110302C
:100A700000E014301AB107682F43076002E00768EE
:100A8000AF430760F0BD00002DE9F04786B0054692
:100A90000E460024A24600BFA1460027B08900B13F
:100AA00000BF2F462C8A4CF6FF700440F0880443A8
:100AB0002C82AC894EF6F3100440B088318908438B
:100AC000718908430443AC81AC8A4FF6FF4004406F
:100AD000B0890443AC8201A8FFF7C0FC1F488742DD
:100AE00002D1DDF810A001E0DDF80CA0A88900F427
:100AF000004040B10AEBCA0000EB0A10316849001F
:100B0000B0FBF1F807E00AEBCA0000EB0A1031680D
:100B10008900B0FBF1F86420B8FBF0F00401200973
:100B2000642101FB1089A88900F4004040B1322003
:100B300000EBC900B0FBF1F000F00700044308E04F
:100B4000322000EB09106421B0FBF1F000F00F003F
:100B500004432C8106B0BDE8F08700000038014056
:100B600001468888C0F308007047C1F308028280FC
:100B70007047014600BF704710B54FF4A060FFF703
:100B800023FC00F059F84FF0FF300021002807DA6D
:100B90000A07140E054A00F00F031B1FD45403E08C
:100BA0000A07130E024A135400BF10BD18ED00E0EF
:100BB00000E400E01FB501210846FFF70FFC4FF0ED
:100BC0008040FFF72CFE0920ADF8080019480068A6
:100BD00042F21071B0FBF1F0401E80B2ADF804009B
:100BE0000020ADF80A00ADF806008DF80C0001A950
:100BF0004FF08040FFF71AFE012211469007FFF7E1
:100C000005FE01218807FFF7D5FD1C208DF80000A7
:100C100004208DF8010000208DF8020001208DF8DD
:100C200003006846FFF798FB01218807FFF7D1FD15
:100C30001FBD00002800002008B501211820FFF783
:100C4000EDFB012000F074F8022000F071F84FF481
:100C50000050ADF8000010208DF8030003208DF83F
:100C6000020069460848FFF7E7FA4FF40070ADF854
:100C7000000010208DF8030003208DF80200694663
:100C80000248FFF7D9FA08BD00100140000C0140EE
:100C900070B5002416E0002004EB4401204A02EB6A
:100CA0008101486004EB440102EB8101886004EBA0
:100CB000440102EB8101487004EB440102F8210079
:100CC000601CC4B2012CE6DB164800684FF47A724F
:100CD000B0FBF2F1B1F1807F00D31DE021F07F4045
:100CE000401E4FF0E022506150170F22002807DA13
:100CF00013071E0E0C4B00F00F052D1F5E5503E071
:100D000013071D0E094B1D5400BF00204FF0E022B9
:100D100090610720106100BFFFF74CFF70BD00001D
:100D2000940000202800002018ED00E000E400E01E
:100D3000411EC8B218B94FF40051014A51617047C1
:100D400000100140012806D10749C96881F400510B
:100D5000054AD16007E0022805D10449096881F4F9
:100D60000071024A11607047001001400C0C0140F4
:100D70007047000010B508480078FA2805DA0648E0
:100D80000078401C0449087005E000200249087002
:100D90000120FFF7D7FF10BD25000020416851B1A9
:100DA0004168491E416031B9012141700178012932
:100DB00001D181684160704710B5FFF769FFFFF707
:100DC000DBFE10BD014800687047000004000020F1
:100DD0004FF4A060FFF7F8FAFFF7EEFF00F002F81B
:100DE00000BFFEE710B500F04FF800F001F810BDAD
:100DF00000200749087007484861074848600749CC
:100E000003488160064901610649C16070470000DE
:100E1000A0000020C50D0008210F0008110F0008D8
:100E2000ED0E0008FD0E000808B501211020FFF7A7
:100E3000F5FA4FF40050ADF8000010208DF80300D3
:100E400003208DF8020069460448FFF7F5F94FF4D6
:100E500000510248FFF77DFA08BD00000010014074
:100E600010B54FF400510248FFF771FA10BD0000B1
:100E70000010014010B54FF400510248FFF769FA25
:100E800010BD00000010014010B500200949087095
:100E900009484860094888600948C860002406E09D
:100EA000044901EB041148688047601CC4B2012C5E
:100EB000F6DB10BD50000020290E0008750E00085A
:100EC000610E00080749084A1288885406490988B3
:100ED000491C3222B1FBF2F302FB1311024A1180CA
:100EE00070470000600000200000002010B502489C
:100EF000FFF736FEC0B210BD0038014010B5044601
:100F000021460248FFF731FE002010BD00380140A5
:100F100010B50248FFF71AFD002010BD003801404F
:100F200000B587B001218803FFF778FA012104207A
:100F3000FFF774FA18208DF81B004FF40070ADF81D
:100F4000180003208DF81A0006A92148FFF774F94C
:100F500048208DF81B004FF48060ADF81800032086
:100F60008DF81A0006A91A48FFF766F94FF41650D3
:100F700002900020ADF814000C20ADF81200002003
:100F8000ADF81000ADF80E00ADF80C0002A9114844
:100F9000FFF77AFD012240F225510E48FFF74EFD82
:100FA0004FF4A060FFF710FA25208DF8040001200F
:100FB0008DF807008DF805008DF8060001A8FFF7F1
:100FC000CBF901210348FFF7B4FC002007B000BDB6
:100FD0000008014000380140F80F00080000002020
:100FE00050000000280100084810000850000020B0
:100FF000D8060000440100080000000000000000C6
:1010000000000000000000000000000000000000E0
:1010100000000000000000000000000000000000D0
:1010200000A24A04000000000000000001020304C6
:10103000060708090000000001020304010203047E
:08104000060708090204060876
:1003E00012690243044B1A6104E0034A1269824312
:1003F000014B1A61704700000010024029B1064A03
:1004000092690243044B9A6104E0034A9269824371
:10041000014B9A61704700000010024029B1064A62
:10042000D2680243044BDA6004E0034AD268824394
:10043000014BDA60704700000010024030B5002127
:100440000022002400232D4D6D6805F00C0121B120
:10045000042905D0082923D105E0294D056022E0B3
:10046000274D05601FE0254D6D6805F47012234D82
:100470006D6805F48034022505EB92421CB9214DCC
:10048000554305600BE01D4D6D6805F400351DB149
:100490001C4D5543056002E0194D5543056002E0CF
:1004A000174D056000BF00BF144D6D6805F0F001E9
:1004B0000909154D6B5C0568DD4045600F4D6D68A1
:1004C00005F4E061090A104D6B5C4568DD4085600C
:1004D0000A4D6D6805F46051C90A0B4D6B5C4568A7
:1004E000DD40C560054D6D6805F44041890B074D41
:1004F0006B5CC568B5FBF3F5056130BD00100240CB
:1005000000127A0000093D0026000020360000207D
:1005100010B500F001F810BD0CB50020019000905E
:100520003348006840F480303149086000BF3048EB
:10053000006800F4003000900198401C0190009881
:1005400018B90198B0F5A06FF1D12948006800F4FE
:10055000003010B10120009001E0002000900098D0
:10056000012843D12348006840F010002149086069
:100570000846006820F0070008600846006840F060
:10058000020008601A4840681949486008464068F7
:1005900048600846406840F480604860084640680B
:1005A00020F47C1048600846406840F4E810486039
:1005B0000846006840F08070086000BF0C48006882
:1005C00000F000700028F9D00948406820F00300CE
:1005D000074948600846406840F00200486000BF94
:1005E0000348406800F00C000828F9D10CBD000059
:1005F000001002400020024010B500F001F810BDCC
:1006000010B51B48006840B119480068401E1849E1
:10061000086010B9012017490870002408E004EBB5
:100620004401154A02EB810000F008FB601CC4B2D3
:10063000012CF4DB11480068401C10490860084692
:1006400000686FF00041884202D100200B49086029
:1006500000F0E0FA0A480078401CC0B2084908706F
:100660000A2803DB0020087000F0D2FA10BD000059
:10067000080000200C000020800000201000002056
:100680002400002010B51348006840F00100114913
:10069000086008464068104908400E49486008460E
:1006A00000680E4908400B4908600846006820F4BD
:1006B000802008600846406820F4FE0048604FF43F
:1006C0001F008860FFF724FF4FF0006004490860B6
:1006D00010BD0000001002400000FFF8FFFFF6FE12
:1006E00008ED00E010B50121880700F068F830B18E
:1006F0000121880700F060F8012000F073FA10BDB6
:1007000010B50121274800F05AF830B101212548E1
:1007100000F052F8022000F065FA0221214800F0B2
:100720004EF858B102211F4800F046F8002202217D
:100730001C4800F055F81C480068804704211948FF
:1007400000F03DF858B10421164800F035F80022B9
:100750000421144800F044F8144800688047082138
:10076000104800F02CF858B108210E4800F024F889
:10077000002208210B4800F033F80D48006880473C
:100780001021084800F01BF858B11021054800F06E
:1007900013F800221021034800F022F805480068F1
:1007A000804710BD00040040140000201800002005
:1007B0001C00002020000020CA430282704730B590
:1007C0000246002000230024158A05EA01039589CA
:1007D00005EA010413B10CB1012000E0002030BD96
:1007E0001AB183890B43838102E083898B43838120
:1007F000704781867047000010B540F226610E48B0
:1008000000F086F820B140F226610B4800F016F89F
:1008100040F22551084800F07BF858B140F22551CC
:10082000054800F00BF8044800F02EF9C4B2204649
:1008300000F0CCFA10BD00000038014010B50022D5
:10084000002340F66A14A14200D100BF0A1201241D
:100850009440A3B2DC43048010BD21B1828942F4EC
:100860000052828104E082894DF6FF731A40828132
:100870007047000010B504462048844209D1012188
:100880008803FFF7CBFD00214FF48040FFF7C6FD42
:1008900032E01B48844209D101214804FFF79EFD44
:1008A00000214FF40030FFF799FD25E01548844200
:1008B00009D101218804FFF791FD00214FF4802028
:1008C000FFF78CFD18E01048844209D10121C804CB
:1008D000FFF784FD00214FF40020FFF77FFD0BE0C0
:1008E0000A48844208D101210805FFF777FD00215D
:1008F0004FF48010FFF772FD10BD0000003801407A
:100900000044004000480040004C004000500040BF
:1009100070B50246002400230025002040F66A1628
:10092000B14200D100BFC1F3421501F01F030126FF
:1009300006FA03F3012D02D19689334006E0022D19
:1009400002D1168A334001E0968A33400C12012608
:1009500006FA04F41688344013B10CB1012000E00B
:10096000002070BDF0B503460024002600250020BD
:1009700040F66A17B94200D100BF1846C1F34214CD
:1009800001F01F06012707FA06F5012C01D10C30F2
:1009900004E0022C01D1103000E014301AB10768D5
:1009A0002F43076002E00768AF430760F0BD000017
:1009B0002DE9F04786B005460E460024A24600BF4A
:1009C000A1460027B08900B100BF2F462C8A4CF603
:1009D000FF700440F08804432C82AC894EF6F3107B
:1009E0000440B08831890843718908430443AC81CD
:1009F000AC8A4FF6FF400440B0890443AC8201A8A2
:100A0000FFF71CFD1F48874202D1DDF810A001E06E
:100A1000DDF80CA0A88900F4004040B10AEBCA0040
:100A200000EB0A1031684900B0FBF1F807E00AEB6F
:100A3000CA0000EB0A1031688900B0FBF1F86420AD
:100A4000B8FBF0F004012009642101FB1089A8899A
:100A500000F4004040B1322000EBC900B0FBF1F0DF
:100A600000F00700044308E0322000EB0910642185
:100A7000B0FBF1F000F00F0004432C8106B0BDE89C
:100A8000F08700000038014001468888C0F3080064
:100A90007047C1F308028280704780F31088704766
:100AA000014600BF704770477047704770470000AD
:100AB00010B50248FFF7DEFE002010BD00380140EF
:100AC00000B587B001218803FFF798FC01210420BD
:100AD000FFF794FC18208DF81B004FF40070ADF860
:100AE000180003208DF81A0006A92148FFF7A4FB7F
:100AF00048208DF81B004FF48060ADF818000320EB
:100B00008DF81A0006A91A48FFF796FB4FF4165005
:100B100002900020ADF814000C20ADF81200002067
:100B2000ADF81000ADF80E00ADF80C0002A91148A8
:100B3000FFF73EFF012240F225510E48FFF712FF5A
:100B40004FF4A060FFF740FC25208DF80400012041
:100B50008DF807008DF805008DF8060001A8FFF755
:100B6000FBFB01210348FFF778FE002007B000BD22
:100B7000000801400038014010B50248FFF784FF2B
:100B8000C0B210BD0038014010B5044621460248ED
:100B9000FFF77FFF002010BD0038014010B504466C
:100BA00004B910BD012C00D102240120FFF775FF0C
:100BB00009480460002009490870FFF76EFF06E04D
:100BC00000F00EF805480078012800D100E0F7E7B2
:100BD00000BF00BFE5E70000080000200C00002077
:100BE00070470000012806D10749C96881F4005107
:100BF000054AD16007E0022805D10449096881F45B
:100C00000071024A11607047001001400C0C014055
:100C10007047000010B508480078FA2805DA064841
:100C20000078401C0449087005E000200249087063
:100C30000120FFF7D7FF10BD25000020416851B10A
:100C40004168491E416031B9012141700178012993
:100C500001D181684160704710B5044621460248C1
:100C6000FFF7C7FD10BD000000080040704710B539
:100C7000002400BF07E0E0B2FFF7EEFF3220FFF7ED
:100C80008DFF601C44B20A2CF5DD0A2407E0E0B2B7
:100C9000FFF7E2FF3220FFF781FF601E44B2002C15
:100CA000F5DA10BD0148006870470000040000201C
:100CB0004FF4A060FFF788FBFFF7D8FF00F004F8BF
:100CC00001E0FFF7D4FFFCE710B500F061F800F099
:100CD00001F810BD00200C4908700C4848610C4810
:100CE00048600C49084881600B4901610B49C160AB
:100CF000094901610A48044988610A48C8610A48EB
:100D000008620A48486270478C000020A50C000861
:100D1000C10A0008B10A0008790B0008890B000815
:100D2000A90A0008A70A0008AD0A0008AB0A0008D3
:100D300008B501211020FFF761FB4FF40050ADF81A
:100D4000000010208DF8030003208DF80200694692
:100D50000448FFF771FA4FF400510248FFF7F9FA1F
:100D600008BD00000010014010B54FF400510248CA
:100D7000FFF7EDFA10BD00000010014010B54FF470
:100D800000510248FFF7E5FA10BD000000100140D5
:100D900010B5002009490870094848600948886072
:100DA0000948C860002406E0044901EB04114868C2
:100DB0008047601CC4B2012CF6DB10BD3C00002053
:100DC000310D00087D0D0008690D00080749084A2B
:100DD0001288885406490988491C3222B1FBF2F373
:100DE00002FB1311024A1180704700004C000020E2
:100DF00000000020140E0008000000203C0000004D
:100E000028010008500E00083C000020DC0600000D
:100E10004401000800000000000000000000000085
:100E200000000000000000000000000000000000C2
:100E300000000000000000000000000000000102AF
:100E4000030401020304060708090204060800005F
:04000005080000ED02
:00000001FF

View File

@ -4,11 +4,10 @@ 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_InitTimer) for bsp_InitTimer
main.o(i.bsp_init) refers to bsp.o(i.bsp_Init) for bsp_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 bsp_timer.o(i.bsp_pwm_test_loop) for bsp_pwm_test_loop
main.o(i.middleware_init) refers to mw_led.o(i.mw_led_drv_init) for mw_led_drv_init
main.o(i.middleware_init) refers to mw_bluetooth.o(i.mw_bluetooth_drv_init) for mw_bluetooth_drv_init
app_led.o(i.app_led_marquee) refers to bsp_led.o(i.bsp_LedToggle) for bsp_LedToggle
@ -34,8 +33,12 @@ Section Cross References
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.TIM2_IRQHandler) refers to stm32f10x_tim.o(i.TIM_ITConfig) for TIM_ITConfig
bsp_timer.o(i.TIM2_IRQHandler) refers to bsp_timer.o(.data) for s_TIM_CallBack1
bsp_timer.o(i.TIM2_IRQHandler) refers to bsp_led.o(i.bsp_LedToggle) for bsp_LedToggle
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 bsp_led.o(i.bsp_LedToggle) for bsp_LedToggle
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.o(i.bsp_Idle) for bsp_Idle
@ -43,15 +46,27 @@ Section Cross References
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_InitTimer) refers to bsp_timer.o(i.bsp_InitHardTimer) for bsp_InitHardTimer
bsp_timer.o(i.bsp_InitTimer) refers to bsp_timer.o(i.bsp_InitExternInputTimer) for bsp_InitExternInputTimer
bsp_timer.o(i.bsp_InitTimer) refers to bsp_timer.o(i.bsp_pwm_init) for bsp_pwm_init
bsp_timer.o(i.bsp_InitTimer) refers to bsp_timer.o(.bss) for s_tTmr
bsp_timer.o(i.bsp_InitTimer) 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
@ -83,6 +98,19 @@ Section Cross References
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_usart.o(i._sys_exit) refers (Special) to use_no_semi_2.o(.text) for __use_no_semihosting
bsp_usart.o(i.bsp_usart_1_init) refers (Special) to use_no_semi_2.o(.text) for __use_no_semihosting
bsp_usart.o(i.bsp_usart_1_init) refers to stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd) for RCC_APB2PeriphClockCmd
@ -115,6 +143,7 @@ Section Cross References
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
@ -184,24 +213,28 @@ Section Cross References
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
interrupt_handler.o(i.USART1_IRQHandler) refers to mw_printf.o(i.mw_printf_insert_data) for mw_printf_insert_data
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(.bss) for bluetooth_drv_buf
mw_bluetooth.o(i.bluetooth_system_usart_deinit) refers to stm32f10x_usart.o(i.USART_DeInit) for USART_DeInit
mw_bluetooth.o(i.bluetooth_system_usart_init) refers to stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd) for RCC_APB2PeriphClockCmd
mw_bluetooth.o(i.bluetooth_system_usart_init) refers to stm32f10x_gpio.o(i.GPIO_Init) for GPIO_Init
mw_bluetooth.o(i.bluetooth_system_usart_init) refers to stm32f10x_usart.o(i.USART_Init) for USART_Init
mw_bluetooth.o(i.bluetooth_system_usart_init) refers to stm32f10x_usart.o(i.USART_ITConfig) for USART_ITConfig
mw_bluetooth.o(i.bluetooth_system_usart_init) refers to misc.o(i.NVIC_PriorityGroupConfig) for NVIC_PriorityGroupConfig
mw_bluetooth.o(i.bluetooth_system_usart_init) refers to misc.o(i.NVIC_Init) for NVIC_Init
mw_bluetooth.o(i.bluetooth_system_usart_init) refers to stm32f10x_usart.o(i.USART_Cmd) for USART_Cmd
mw_bluetooth.o(i.bluetooth_system_usart_receive_one_byte) refers to stm32f10x_usart.o(i.USART_ReceiveData) for USART_ReceiveData
mw_bluetooth.o(i.bluetooth_system_usart_send_one_byte) refers to stm32f10x_usart.o(i.USART_SendData) for USART_SendData
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(.bss) for bt_drv_buf
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_soft_timer.o(i.get_systick_ms) for get_systick_ms
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.mw_usart_init) for mw_usart_init
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.mw_usart_deinit) for mw_usart_deinit
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.mw_receive_one_byte) for mw_receive_one_byte
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.mw_send_one_byte) for mw_send_one_byte
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.bluetooth_system_usart_init) for bluetooth_system_usart_init
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.bluetooth_system_usart_deinit) for bluetooth_system_usart_deinit
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.bluetooth_system_usart_receive_one_byte) for bluetooth_system_usart_receive_one_byte
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.bluetooth_system_usart_send_one_byte) for bluetooth_system_usart_send_one_byte
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.bluetooth_init) for bluetooth_init
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.bluetooth_deinit) for bluetooth_deinit
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.bluetooth_send_bytes) for bluetooth_send_bytes
mw_bluetooth.o(i.mw_bluetooth_drv_init) refers to mw_bluetooth.o(i.bluetooth_recv_deal) for bluetooth_recv_deal
mw_bluetooth.o(i.mw_get_bluetooth_drv) refers to rt_memcpy_w.o(.text) for __aeabi_memcpy4
mw_bluetooth.o(i.mw_get_bluetooth_drv) refers to mw_bluetooth.o(.bss) for bluetooth_drv_buf
mw_bluetooth.o(i.mw_receive_one_byte) refers to stm32f10x_usart.o(i.USART_ReceiveData) for USART_ReceiveData
mw_bluetooth.o(i.mw_send_one_byte) refers to stm32f10x_usart.o(i.USART_SendData) for USART_SendData
mw_bluetooth.o(i.mw_usart_deinit) refers to stm32f10x_usart.o(i.USART_DeInit) for USART_DeInit
mw_bluetooth.o(i.mw_usart_init) refers to stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd) for RCC_APB2PeriphClockCmd
mw_bluetooth.o(i.mw_usart_init) refers to stm32f10x_gpio.o(i.GPIO_Init) for GPIO_Init
mw_bluetooth.o(i.mw_usart_init) refers to stm32f10x_usart.o(i.USART_Init) for USART_Init
mw_bluetooth.o(i.mw_usart_init) refers to stm32f10x_usart.o(i.USART_ITConfig) for USART_ITConfig
mw_bluetooth.o(i.mw_usart_init) refers to misc.o(i.NVIC_PriorityGroupConfig) for NVIC_PriorityGroupConfig
mw_bluetooth.o(i.mw_usart_init) refers to misc.o(i.NVIC_Init) for NVIC_Init
mw_bluetooth.o(i.mw_usart_init) refers to stm32f10x_usart.o(i.USART_Cmd) for USART_Cmd
mw_bluetooth.o(i.mw_get_bluetooth_drv) refers to mw_bluetooth.o(.bss) for bt_drv_buf
use_no_semi_2.o(.text) refers (Special) to use_no_semi.o(.text) for __use_no_semihosting_swi
__2printf.o(.text) refers to _printf_char_file.o(.text) for _printf_char_file
__2printf.o(.text) refers to bsp_usart.o(.data) for __stdout
@ -337,25 +370,30 @@ Removing Unused input sections from the image.
Removing app_led.o(i.app_led_marquee), (10 bytes).
Removing mw_led.o(i.mw_get_led_obj), (28 bytes).
Removing mw_soft_timer.o(i.mw_soft_timer_user_systick_update), (16 bytes).
Removing bsp_timer.o(i.__set_PRIMASK), (6 bytes).
Removing bsp_timer.o(i.bsp_CheckTimer), (52 bytes).
Removing bsp_timer.o(i.bsp_DelayMS), (68 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_InitTimer), (168 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_pwm_init), (156 bytes).
Removing bsp_timer.o(.constdata), (48 bytes).
Removing bsp_usart.o(i.bsp_usart_1_init), (168 bytes).
Removing bsp_usart.o(i.bsp_usart_send_data), (84 bytes).
Removing bsp_usart.o(i.fputc), (36 bytes).
Removing bsp_usart.o(.data), (4 bytes).
Removing bsp.o(i.bsp_Idle), (2 bytes).
Removing bsp.o(i.bsp_Init), (60 bytes).
Removing bsp_led.o(i.bsp_InitLed), (88 bytes).
Removing bsp_led.o(i.bsp_IsLedOn), (32 bytes).
Removing bsp_led.o(i.bsp_LedOff), (20 bytes).
Removing bsp_led.o(i.bsp_LedOn), (24 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_SetVectorTable), (20 bytes).
Removing misc.o(i.NVIC_SystemLPConfig), (32 bytes).
Removing misc.o(i.SysTick_CLKSourceConfig), (40 bytes).
@ -598,6 +636,7 @@ Removing Unused input sections from the image.
Removing stm32f10x_pwr.o(i.PWR_WakeUpPinCmd), (12 bytes).
Removing stm32f10x_rcc.o(i.RCC_ADCCLKConfig), (24 bytes).
Removing stm32f10x_rcc.o(i.RCC_AHBPeriphClockCmd), (32 bytes).
Removing stm32f10x_rcc.o(i.RCC_APB1PeriphClockCmd), (32 bytes).
Removing stm32f10x_rcc.o(i.RCC_AdjustHSICalibrationValue), (24 bytes).
Removing stm32f10x_rcc.o(i.RCC_BackupResetCmd), (12 bytes).
Removing stm32f10x_rcc.o(i.RCC_ClearFlag), (20 bytes).
@ -694,6 +733,7 @@ Removing Unused input sections from the image.
Removing stm32f10x_tim.o(i.TI2_Config), (152 bytes).
Removing stm32f10x_tim.o(i.TI3_Config), (144 bytes).
Removing stm32f10x_tim.o(i.TI4_Config), (152 bytes).
Removing stm32f10x_tim.o(i.TIM_ARRPreloadConfig), (24 bytes).
Removing stm32f10x_tim.o(i.TIM_BDTRConfig), (32 bytes).
Removing stm32f10x_tim.o(i.TIM_BDTRStructInit), (18 bytes).
Removing stm32f10x_tim.o(i.TIM_CCPreloadControl), (24 bytes).
@ -704,6 +744,7 @@ Removing Unused input sections from the image.
Removing stm32f10x_tim.o(i.TIM_ClearOC2Ref), (24 bytes).
Removing stm32f10x_tim.o(i.TIM_ClearOC3Ref), (18 bytes).
Removing stm32f10x_tim.o(i.TIM_ClearOC4Ref), (24 bytes).
Removing stm32f10x_tim.o(i.TIM_Cmd), (24 bytes).
Removing stm32f10x_tim.o(i.TIM_CounterModeConfig), (18 bytes).
Removing stm32f10x_tim.o(i.TIM_CtrlPWMOutputs), (30 bytes).
Removing stm32f10x_tim.o(i.TIM_DMACmd), (18 bytes).
@ -728,6 +769,7 @@ Removing Unused input sections from the image.
Removing stm32f10x_tim.o(i.TIM_ICInit), (172 bytes).
Removing stm32f10x_tim.o(i.TIM_ICStructInit), (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).
Removing stm32f10x_tim.o(i.TIM_OC1Init), (152 bytes).
Removing stm32f10x_tim.o(i.TIM_OC1NPolarityConfig), (18 bytes).
@ -761,7 +803,6 @@ Removing Unused input sections from the image.
Removing stm32f10x_tim.o(i.TIM_SelectSlaveMode), (18 bytes).
Removing stm32f10x_tim.o(i.TIM_SetAutoreload), (4 bytes).
Removing stm32f10x_tim.o(i.TIM_SetClockDivision), (18 bytes).
Removing stm32f10x_tim.o(i.TIM_SetCompare1), (4 bytes).
Removing stm32f10x_tim.o(i.TIM_SetCompare2), (4 bytes).
Removing stm32f10x_tim.o(i.TIM_SetCompare3), (4 bytes).
Removing stm32f10x_tim.o(i.TIM_SetCompare4), (6 bytes).
@ -771,6 +812,7 @@ Removing Unused input sections from the image.
Removing stm32f10x_tim.o(i.TIM_SetIC3Prescaler), (18 bytes).
Removing stm32f10x_tim.o(i.TIM_SetIC4Prescaler), (26 bytes).
Removing stm32f10x_tim.o(i.TIM_TIxExternalClockConfig), (62 bytes).
Removing stm32f10x_tim.o(i.TIM_TimeBaseInit), (164 bytes).
Removing stm32f10x_tim.o(i.TIM_TimeBaseStructInit), (18 bytes).
Removing stm32f10x_tim.o(i.TIM_UpdateDisableConfig), (24 bytes).
Removing stm32f10x_tim.o(i.TIM_UpdateRequestConfig), (24 bytes).
@ -806,7 +848,7 @@ Removing Unused input sections from the image.
Removing mw_bluetooth.o(i.mw_get_bluetooth_drv), (40 bytes).
Removing hc06.o(i.hc06_init), (2 bytes).
471 unused section(s) (total 19094 bytes) removed from the image.
480 unused section(s) (total 20102 bytes) removed from the image.
==============================================================================
@ -816,73 +858,73 @@ Image Symbol Table
Symbol Name Value Ov Type Size Object(Section)
../clib/angel/boardlib.s 0x00000000 Number 0 boardinit3.o ABSOLUTE
../clib/angel/boardlib.s 0x00000000 Number 0 boardinit1.o ABSOLUTE
../clib/angel/boardlib.s 0x00000000 Number 0 boardinit2.o ABSOLUTE
../clib/angel/boardlib.s 0x00000000 Number 0 boardinit3.o ABSOLUTE
../clib/angel/boardlib.s 0x00000000 Number 0 boardshut.o ABSOLUTE
../clib/angel/handlers.s 0x00000000 Number 0 __scatter_zi.o ABSOLUTE
../clib/angel/handlers.s 0x00000000 Number 0 __scatter_copy.o ABSOLUTE
../clib/angel/kernel.s 0x00000000 Number 0 __rtentry.o ABSOLUTE
../clib/angel/kernel.s 0x00000000 Number 0 __rtentry2.o ABSOLUTE
../clib/angel/kernel.s 0x00000000 Number 0 __rtentry4.o ABSOLUTE
../clib/angel/kernel.s 0x00000000 Number 0 __rtentry.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 rtexit2.o ABSOLUTE
../clib/angel/rt.s 0x00000000 Number 0 rt_raise.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 indicate_semi.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 use_no_semi_2.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/sys.s 0x00000000 Number 0 indicate_semi.o ABSOLUTE
../clib/angel/sys.s 0x00000000 Number 0 use_no_semi_2.o ABSOLUTE
../clib/angel/sysapp.c 0x00000000 Number 0 sys_wrch.o ABSOLUTE
../clib/angel/sysapp.c 0x00000000 Number 0 sys_command.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 argv_veneer.o ABSOLUTE
../clib/armsys.c 0x00000000 Number 0 _get_argv_nomalloc.o ABSOLUTE
../clib/heapalloc.c 0x00000000 Number 0 hrguard.o ABSOLUTE
../clib/heapaux.c 0x00000000 Number 0 heapauxi.o ABSOLUTE
../clib/libinit.s 0x00000000 Number 0 libshutdown2.o ABSOLUTE
../clib/libinit.s 0x00000000 Number 0 libinit.o ABSOLUTE
../clib/libinit.s 0x00000000 Number 0 libinit2.o ABSOLUTE
../clib/libinit.s 0x00000000 Number 0 libinit.o ABSOLUTE
../clib/libinit.s 0x00000000 Number 0 libshutdown2.o ABSOLUTE
../clib/libinit.s 0x00000000 Number 0 libshutdown.o ABSOLUTE
../clib/memcpset.s 0x00000000 Number 0 rt_memcpy_w.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_nopercent.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_flags_wp.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_flags.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __2printf.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_wp.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_flags_ss.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_ss.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 _printf_char_file.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 _printf_char.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 _printf_char_common.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 _printf_str.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 noretval__2printf.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_flags_ss_wp.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 _printf_char_file.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_ss_wp.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_flags_wp.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_wp.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __2printf.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 _printf_char_common.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 noretval__2printf.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_nopercent.o ABSOLUTE
../clib/printf.c 0x00000000 Number 0 __printf_flags_ss_wp.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_char.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_percent.s 0x00000000 Number 0 _printf_percent_end.o ABSOLUTE
../clib/printf_percent.s 0x00000000 Number 0 _printf_percent.o ABSOLUTE
../clib/printf_percent.s 0x00000000 Number 0 _printf_s.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_other.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_pvfn_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_abrt_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_general.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 __raise.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_fpe_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_rtmem_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_rtred_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_segv_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_exit.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_stak_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_cppl_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_rtmem_formal.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_segv_inner.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_rtmem_outer.o ABSOLUTE
../clib/signal.c 0x00000000 Number 0 defsig_other.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.s 0x00000000 Number 0 defsig.o ABSOLUTE
../clib/stdio.c 0x00000000 Number 0 ferror_locked.o ABSOLUTE
../clib/stdio.c 0x00000000 Number 0 ferror.o ABSOLUTE
../clib/stdio.c 0x00000000 Number 0 ferror_locked.o ABSOLUTE
../clib/stdlib.c 0x00000000 Number 0 exit.o ABSOLUTE
../fplib/fpinit.s 0x00000000 Number 0 fpinit.o ABSOLUTE
..\Code\app\src\app_led.c 0x00000000 Number 0 app_led.o ABSOLUTE
@ -984,64 +1026,70 @@ Image Symbol Table
i.GPIO_SetBits 0x08000352 Section 0 stm32f10x_gpio.o(i.GPIO_SetBits)
i.NVIC_Init 0x08000358 Section 0 misc.o(i.NVIC_Init)
i.NVIC_PriorityGroupConfig 0x080003c8 Section 0 misc.o(i.NVIC_PriorityGroupConfig)
i.RCC_APB1PeriphClockCmd 0x080003dc Section 0 stm32f10x_rcc.o(i.RCC_APB1PeriphClockCmd)
i.RCC_APB1PeriphResetCmd 0x080003fc Section 0 stm32f10x_rcc.o(i.RCC_APB1PeriphResetCmd)
i.RCC_APB2PeriphClockCmd 0x0800041c Section 0 stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd)
i.RCC_APB2PeriphResetCmd 0x0800043c Section 0 stm32f10x_rcc.o(i.RCC_APB2PeriphResetCmd)
i.RCC_GetClocksFreq 0x0800045c Section 0 stm32f10x_rcc.o(i.RCC_GetClocksFreq)
i.SetSysClock 0x08000530 Section 0 system_stm32f10x.o(i.SetSysClock)
SetSysClock 0x08000531 Thumb Code 8 system_stm32f10x.o(i.SetSysClock)
i.SetSysClockTo72 0x08000538 Section 0 system_stm32f10x.o(i.SetSysClockTo72)
SetSysClockTo72 0x08000539 Thumb Code 214 system_stm32f10x.o(i.SetSysClockTo72)
i.SysTick_Handler 0x08000618 Section 0 bsp_timer.o(i.SysTick_Handler)
i.SysTick_ISR 0x08000620 Section 0 bsp_timer.o(i.SysTick_ISR)
i.SystemInit 0x080006a4 Section 0 system_stm32f10x.o(i.SystemInit)
i.TIM2_IRQHandler 0x08000704 Section 0 bsp_timer.o(i.TIM2_IRQHandler)
i.TIM_ARRPreloadConfig 0x080007b4 Section 0 stm32f10x_tim.o(i.TIM_ARRPreloadConfig)
i.TIM_ClearITPendingBit 0x080007cc Section 0 stm32f10x_tim.o(i.TIM_ClearITPendingBit)
i.TIM_Cmd 0x080007d2 Section 0 stm32f10x_tim.o(i.TIM_Cmd)
i.TIM_GetITStatus 0x080007ea Section 0 stm32f10x_tim.o(i.TIM_GetITStatus)
i.TIM_ITConfig 0x0800080c Section 0 stm32f10x_tim.o(i.TIM_ITConfig)
i.TIM_InternalClockConfig 0x0800081e Section 0 stm32f10x_tim.o(i.TIM_InternalClockConfig)
i.TIM_TimeBaseInit 0x0800082c Section 0 stm32f10x_tim.o(i.TIM_TimeBaseInit)
i.USART1_IRQHandler 0x080008d0 Section 0 interrupt_handler.o(i.USART1_IRQHandler)
i.USART_ClearITPendingBit 0x08000914 Section 0 stm32f10x_usart.o(i.USART_ClearITPendingBit)
i.USART_Cmd 0x08000932 Section 0 stm32f10x_usart.o(i.USART_Cmd)
i.USART_DeInit 0x0800094c Section 0 stm32f10x_usart.o(i.USART_DeInit)
i.USART_GetITStatus 0x080009e8 Section 0 stm32f10x_usart.o(i.USART_GetITStatus)
i.USART_ITConfig 0x08000a3c Section 0 stm32f10x_usart.o(i.USART_ITConfig)
i.USART_Init 0x08000a88 Section 0 stm32f10x_usart.o(i.USART_Init)
i.USART_ReceiveData 0x08000b60 Section 0 stm32f10x_usart.o(i.USART_ReceiveData)
i.USART_SendData 0x08000b6a Section 0 stm32f10x_usart.o(i.USART_SendData)
i._sys_exit 0x08000b72 Section 0 bsp_usart.o(i._sys_exit)
i.bsp_Init 0x08000b78 Section 0 bsp.o(i.bsp_Init)
i.bsp_InitHardTimer 0x08000bb4 Section 0 bsp_timer.o(i.bsp_InitHardTimer)
i.bsp_InitLed 0x08000c38 Section 0 bsp_led.o(i.bsp_InitLed)
i.bsp_InitTimer 0x08000c90 Section 0 bsp_timer.o(i.bsp_InitTimer)
i.bsp_LedOff 0x08000d30 Section 0 bsp_led.o(i.bsp_LedOff)
i.bsp_LedToggle 0x08000d44 Section 0 bsp_led.o(i.bsp_LedToggle)
i.bsp_RunPer10ms 0x08000d70 Section 0 bsp.o(i.bsp_RunPer10ms)
i.bsp_RunPer1ms 0x08000d74 Section 0 bsp.o(i.bsp_RunPer1ms)
i.bsp_SoftTimerDec 0x08000d9c Section 0 bsp_timer.o(i.bsp_SoftTimerDec)
bsp_SoftTimerDec 0x08000d9d Thumb Code 28 bsp_timer.o(i.bsp_SoftTimerDec)
i.bsp_init 0x08000db8 Section 0 main.o(i.bsp_init)
i.get_systick_ms 0x08000dc4 Section 0 mw_soft_timer.o(i.get_systick_ms)
i.main 0x08000dd0 Section 0 main.o(i.main)
i.middleware_init 0x08000de4 Section 0 main.o(i.middleware_init)
i.mw_bluetooth_drv_init 0x08000df0 Section 0 mw_bluetooth.o(i.mw_bluetooth_drv_init)
i.mw_led0_init 0x08000e28 Section 0 mw_led.o(i.mw_led0_init)
i.mw_led0_off 0x08000e60 Section 0 mw_led.o(i.mw_led0_off)
i.mw_led0_on 0x08000e74 Section 0 mw_led.o(i.mw_led0_on)
i.mw_led_drv_init 0x08000e88 Section 0 mw_led.o(i.mw_led_drv_init)
i.mw_printf_insert_data 0x08000ec4 Section 0 mw_printf.o(i.mw_printf_insert_data)
i.mw_receive_one_byte 0x08000eec Section 0 mw_bluetooth.o(i.mw_receive_one_byte)
mw_receive_one_byte 0x08000eed Thumb Code 12 mw_bluetooth.o(i.mw_receive_one_byte)
i.mw_send_one_byte 0x08000efc Section 0 mw_bluetooth.o(i.mw_send_one_byte)
mw_send_one_byte 0x08000efd Thumb Code 16 mw_bluetooth.o(i.mw_send_one_byte)
i.mw_usart_deinit 0x08000f10 Section 0 mw_bluetooth.o(i.mw_usart_deinit)
mw_usart_deinit 0x08000f11 Thumb Code 12 mw_bluetooth.o(i.mw_usart_deinit)
i.mw_usart_init 0x08000f20 Section 0 mw_bluetooth.o(i.mw_usart_init)
mw_usart_init 0x08000f21 Thumb Code 176 mw_bluetooth.o(i.mw_usart_init)
i.RCC_APB1PeriphResetCmd 0x080003dc Section 0 stm32f10x_rcc.o(i.RCC_APB1PeriphResetCmd)
i.RCC_APB2PeriphClockCmd 0x080003fc Section 0 stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd)
i.RCC_APB2PeriphResetCmd 0x0800041c Section 0 stm32f10x_rcc.o(i.RCC_APB2PeriphResetCmd)
i.RCC_GetClocksFreq 0x0800043c Section 0 stm32f10x_rcc.o(i.RCC_GetClocksFreq)
i.SetSysClock 0x08000510 Section 0 system_stm32f10x.o(i.SetSysClock)
SetSysClock 0x08000511 Thumb Code 8 system_stm32f10x.o(i.SetSysClock)
i.SetSysClockTo72 0x08000518 Section 0 system_stm32f10x.o(i.SetSysClockTo72)
SetSysClockTo72 0x08000519 Thumb Code 214 system_stm32f10x.o(i.SetSysClockTo72)
i.SysTick_Handler 0x080005f8 Section 0 bsp_timer.o(i.SysTick_Handler)
i.SysTick_ISR 0x08000600 Section 0 bsp_timer.o(i.SysTick_ISR)
i.SystemInit 0x08000684 Section 0 system_stm32f10x.o(i.SystemInit)
i.TIM2_IRQHandler 0x080006e4 Section 0 bsp_timer.o(i.TIM2_IRQHandler)
i.TIM3_IRQHandler 0x08000700 Section 0 bsp_timer.o(i.TIM3_IRQHandler)
i.TIM_ClearITPendingBit 0x080007b8 Section 0 stm32f10x_tim.o(i.TIM_ClearITPendingBit)
i.TIM_GetITStatus 0x080007be Section 0 stm32f10x_tim.o(i.TIM_GetITStatus)
i.TIM_ITConfig 0x080007e0 Section 0 stm32f10x_tim.o(i.TIM_ITConfig)
i.TIM_SetCompare1 0x080007f2 Section 0 stm32f10x_tim.o(i.TIM_SetCompare1)
i.USART1_IRQHandler 0x080007f8 Section 0 interrupt_handler.o(i.USART1_IRQHandler)
i.USART_ClearITPendingBit 0x0800083c Section 0 stm32f10x_usart.o(i.USART_ClearITPendingBit)
i.USART_Cmd 0x0800085a Section 0 stm32f10x_usart.o(i.USART_Cmd)
i.USART_DeInit 0x08000874 Section 0 stm32f10x_usart.o(i.USART_DeInit)
i.USART_GetITStatus 0x08000910 Section 0 stm32f10x_usart.o(i.USART_GetITStatus)
i.USART_ITConfig 0x08000964 Section 0 stm32f10x_usart.o(i.USART_ITConfig)
i.USART_Init 0x080009b0 Section 0 stm32f10x_usart.o(i.USART_Init)
i.USART_ReceiveData 0x08000a88 Section 0 stm32f10x_usart.o(i.USART_ReceiveData)
i.USART_SendData 0x08000a92 Section 0 stm32f10x_usart.o(i.USART_SendData)
i.__set_PRIMASK 0x08000a9a Section 0 bsp_timer.o(i.__set_PRIMASK)
__set_PRIMASK 0x08000a9b Thumb Code 6 bsp_timer.o(i.__set_PRIMASK)
i._sys_exit 0x08000aa0 Section 0 bsp_usart.o(i._sys_exit)
i.bluetooth_deinit 0x08000aa6 Section 0 mw_bluetooth.o(i.bluetooth_deinit)
bluetooth_deinit 0x08000aa7 Thumb Code 2 mw_bluetooth.o(i.bluetooth_deinit)
i.bluetooth_init 0x08000aa8 Section 0 mw_bluetooth.o(i.bluetooth_init)
bluetooth_init 0x08000aa9 Thumb Code 2 mw_bluetooth.o(i.bluetooth_init)
i.bluetooth_recv_deal 0x08000aaa Section 0 mw_bluetooth.o(i.bluetooth_recv_deal)
bluetooth_recv_deal 0x08000aab Thumb Code 2 mw_bluetooth.o(i.bluetooth_recv_deal)
i.bluetooth_send_bytes 0x08000aac Section 0 mw_bluetooth.o(i.bluetooth_send_bytes)
bluetooth_send_bytes 0x08000aad Thumb Code 2 mw_bluetooth.o(i.bluetooth_send_bytes)
i.bluetooth_system_usart_deinit 0x08000ab0 Section 0 mw_bluetooth.o(i.bluetooth_system_usart_deinit)
bluetooth_system_usart_deinit 0x08000ab1 Thumb Code 12 mw_bluetooth.o(i.bluetooth_system_usart_deinit)
i.bluetooth_system_usart_init 0x08000ac0 Section 0 mw_bluetooth.o(i.bluetooth_system_usart_init)
bluetooth_system_usart_init 0x08000ac1 Thumb Code 176 mw_bluetooth.o(i.bluetooth_system_usart_init)
i.bluetooth_system_usart_receive_one_byte 0x08000b78 Section 0 mw_bluetooth.o(i.bluetooth_system_usart_receive_one_byte)
bluetooth_system_usart_receive_one_byte 0x08000b79 Thumb Code 12 mw_bluetooth.o(i.bluetooth_system_usart_receive_one_byte)
i.bluetooth_system_usart_send_one_byte 0x08000b88 Section 0 mw_bluetooth.o(i.bluetooth_system_usart_send_one_byte)
bluetooth_system_usart_send_one_byte 0x08000b89 Thumb Code 16 mw_bluetooth.o(i.bluetooth_system_usart_send_one_byte)
i.bsp_DelayMS 0x08000b9c Section 0 bsp_timer.o(i.bsp_DelayMS)
i.bsp_Idle 0x08000be0 Section 0 bsp.o(i.bsp_Idle)
i.bsp_LedToggle 0x08000be4 Section 0 bsp_led.o(i.bsp_LedToggle)
i.bsp_RunPer10ms 0x08000c10 Section 0 bsp.o(i.bsp_RunPer10ms)
i.bsp_RunPer1ms 0x08000c14 Section 0 bsp.o(i.bsp_RunPer1ms)
i.bsp_SoftTimerDec 0x08000c3c Section 0 bsp_timer.o(i.bsp_SoftTimerDec)
bsp_SoftTimerDec 0x08000c3d Thumb Code 28 bsp_timer.o(i.bsp_SoftTimerDec)
i.bsp_change_pwm 0x08000c58 Section 0 bsp_timer.o(i.bsp_change_pwm)
i.bsp_init 0x08000c6c Section 0 main.o(i.bsp_init)
i.bsp_pwm_test_loop 0x08000c6e Section 0 bsp_timer.o(i.bsp_pwm_test_loop)
i.get_systick_ms 0x08000ca4 Section 0 mw_soft_timer.o(i.get_systick_ms)
i.main 0x08000cb0 Section 0 main.o(i.main)
i.middleware_init 0x08000cc8 Section 0 main.o(i.middleware_init)
i.mw_bluetooth_drv_init 0x08000cd4 Section 0 mw_bluetooth.o(i.mw_bluetooth_drv_init)
i.mw_led0_init 0x08000d30 Section 0 mw_led.o(i.mw_led0_init)
i.mw_led0_off 0x08000d68 Section 0 mw_led.o(i.mw_led0_off)
i.mw_led0_on 0x08000d7c Section 0 mw_led.o(i.mw_led0_on)
i.mw_led_drv_init 0x08000d90 Section 0 mw_led.o(i.mw_led_drv_init)
i.mw_printf_insert_data 0x08000dcc Section 0 mw_printf.o(i.mw_printf_insert_data)
.data 0x20000000 Section 2 mw_printf.o(.data)
mw_printf_cache_head 0x20000000 Data 2 mw_printf.o(.data)
.data 0x20000004 Section 4 mw_soft_timer.o(.data)
@ -1055,21 +1103,20 @@ Image Symbol Table
s_TIM_CallBack4 0x20000020 Data 4 bsp_timer.o(.data)
s_count 0x20000024 Data 1 bsp_timer.o(.data)
.data 0x20000025 Section 1 bsp.o(.data)
.data 0x20000028 Section 20 system_stm32f10x.o(.data)
.data 0x2000003c Section 20 stm32f10x_rcc.o(.data)
APBAHBPrescTable 0x2000003c Data 16 stm32f10x_rcc.o(.data)
ADCPrescTable 0x2000004c Data 4 stm32f10x_rcc.o(.data)
.bss 0x20000050 Section 16 mw_led.o(.bss)
.bss 0x20000060 Section 50 mw_printf.o(.bss)
.bss 0x20000094 Section 12 bsp_timer.o(.bss)
s_tTmr 0x20000094 Data 12 bsp_timer.o(.bss)
.bss 0x200000a0 Section 40 mw_bluetooth.o(.bss)
.bss 0x200000c8 Section 96 libspace.o(.bss)
HEAP 0x20000128 Section 512 startup_stm32f10x_md.o(HEAP)
Heap_Mem 0x20000128 Data 512 startup_stm32f10x_md.o(HEAP)
STACK 0x20000328 Section 1024 startup_stm32f10x_md.o(STACK)
Stack_Mem 0x20000328 Data 1024 startup_stm32f10x_md.o(STACK)
__initial_sp 0x20000728 Data 0 startup_stm32f10x_md.o(STACK)
.data 0x20000026 Section 20 stm32f10x_rcc.o(.data)
APBAHBPrescTable 0x20000026 Data 16 stm32f10x_rcc.o(.data)
ADCPrescTable 0x20000036 Data 4 stm32f10x_rcc.o(.data)
.bss 0x2000003c Section 16 mw_led.o(.bss)
.bss 0x2000004c Section 50 mw_printf.o(.bss)
.bss 0x20000080 Section 12 bsp_timer.o(.bss)
s_tTmr 0x20000080 Data 12 bsp_timer.o(.bss)
.bss 0x2000008c Section 40 mw_bluetooth.o(.bss)
.bss 0x200000b4 Section 96 libspace.o(.bss)
HEAP 0x20000118 Section 512 startup_stm32f10x_md.o(HEAP)
Heap_Mem 0x20000118 Data 512 startup_stm32f10x_md.o(HEAP)
STACK 0x20000318 Section 1024 startup_stm32f10x_md.o(STACK)
Stack_Mem 0x20000318 Data 1024 startup_stm32f10x_md.o(STACK)
__initial_sp 0x20000718 Data 0 startup_stm32f10x_md.o(STACK)
Global Symbols
@ -1205,7 +1252,6 @@ Image Symbol Table
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)
TIM3_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)
@ -1230,61 +1276,55 @@ Image Symbol Table
GPIO_SetBits 0x08000353 Thumb Code 4 stm32f10x_gpio.o(i.GPIO_SetBits)
NVIC_Init 0x08000359 Thumb Code 100 misc.o(i.NVIC_Init)
NVIC_PriorityGroupConfig 0x080003c9 Thumb Code 10 misc.o(i.NVIC_PriorityGroupConfig)
RCC_APB1PeriphClockCmd 0x080003dd Thumb Code 26 stm32f10x_rcc.o(i.RCC_APB1PeriphClockCmd)
RCC_APB1PeriphResetCmd 0x080003fd Thumb Code 26 stm32f10x_rcc.o(i.RCC_APB1PeriphResetCmd)
RCC_APB2PeriphClockCmd 0x0800041d Thumb Code 26 stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd)
RCC_APB2PeriphResetCmd 0x0800043d Thumb Code 26 stm32f10x_rcc.o(i.RCC_APB2PeriphResetCmd)
RCC_GetClocksFreq 0x0800045d Thumb Code 192 stm32f10x_rcc.o(i.RCC_GetClocksFreq)
SysTick_Handler 0x08000619 Thumb Code 8 bsp_timer.o(i.SysTick_Handler)
SysTick_ISR 0x08000621 Thumb Code 110 bsp_timer.o(i.SysTick_ISR)
SystemInit 0x080006a5 Thumb Code 78 system_stm32f10x.o(i.SystemInit)
TIM2_IRQHandler 0x08000705 Thumb Code 158 bsp_timer.o(i.TIM2_IRQHandler)
TIM_ARRPreloadConfig 0x080007b5 Thumb Code 24 stm32f10x_tim.o(i.TIM_ARRPreloadConfig)
TIM_ClearITPendingBit 0x080007cd Thumb Code 6 stm32f10x_tim.o(i.TIM_ClearITPendingBit)
TIM_Cmd 0x080007d3 Thumb Code 24 stm32f10x_tim.o(i.TIM_Cmd)
TIM_GetITStatus 0x080007eb Thumb Code 34 stm32f10x_tim.o(i.TIM_GetITStatus)
TIM_ITConfig 0x0800080d Thumb Code 18 stm32f10x_tim.o(i.TIM_ITConfig)
TIM_InternalClockConfig 0x0800081f Thumb Code 12 stm32f10x_tim.o(i.TIM_InternalClockConfig)
TIM_TimeBaseInit 0x0800082d Thumb Code 122 stm32f10x_tim.o(i.TIM_TimeBaseInit)
USART1_IRQHandler 0x080008d1 Thumb Code 62 interrupt_handler.o(i.USART1_IRQHandler)
USART_ClearITPendingBit 0x08000915 Thumb Code 30 stm32f10x_usart.o(i.USART_ClearITPendingBit)
USART_Cmd 0x08000933 Thumb Code 24 stm32f10x_usart.o(i.USART_Cmd)
USART_DeInit 0x0800094d Thumb Code 134 stm32f10x_usart.o(i.USART_DeInit)
USART_GetITStatus 0x080009e9 Thumb Code 84 stm32f10x_usart.o(i.USART_GetITStatus)
USART_ITConfig 0x08000a3d Thumb Code 74 stm32f10x_usart.o(i.USART_ITConfig)
USART_Init 0x08000a89 Thumb Code 210 stm32f10x_usart.o(i.USART_Init)
USART_ReceiveData 0x08000b61 Thumb Code 10 stm32f10x_usart.o(i.USART_ReceiveData)
USART_SendData 0x08000b6b Thumb Code 8 stm32f10x_usart.o(i.USART_SendData)
_sys_exit 0x08000b73 Thumb Code 6 bsp_usart.o(i._sys_exit)
bsp_Init 0x08000b79 Thumb Code 52 bsp.o(i.bsp_Init)
bsp_InitHardTimer 0x08000bb5 Thumb Code 126 bsp_timer.o(i.bsp_InitHardTimer)
bsp_InitLed 0x08000c39 Thumb Code 80 bsp_led.o(i.bsp_InitLed)
bsp_InitTimer 0x08000c91 Thumb Code 142 bsp_timer.o(i.bsp_InitTimer)
bsp_LedOff 0x08000d31 Thumb Code 16 bsp_led.o(i.bsp_LedOff)
bsp_LedToggle 0x08000d45 Thumb Code 36 bsp_led.o(i.bsp_LedToggle)
bsp_RunPer10ms 0x08000d71 Thumb Code 2 bsp.o(i.bsp_RunPer10ms)
bsp_RunPer1ms 0x08000d75 Thumb Code 36 bsp.o(i.bsp_RunPer1ms)
bsp_init 0x08000db9 Thumb Code 12 main.o(i.bsp_init)
get_systick_ms 0x08000dc5 Thumb Code 6 mw_soft_timer.o(i.get_systick_ms)
main 0x08000dd1 Thumb Code 20 main.o(i.main)
middleware_init 0x08000de5 Thumb Code 12 main.o(i.middleware_init)
mw_bluetooth_drv_init 0x08000df1 Thumb Code 30 mw_bluetooth.o(i.mw_bluetooth_drv_init)
mw_led0_init 0x08000e29 Thumb Code 50 mw_led.o(i.mw_led0_init)
mw_led0_off 0x08000e61 Thumb Code 14 mw_led.o(i.mw_led0_off)
mw_led0_on 0x08000e75 Thumb Code 14 mw_led.o(i.mw_led0_on)
mw_led_drv_init 0x08000e89 Thumb Code 44 mw_led.o(i.mw_led_drv_init)
mw_printf_insert_data 0x08000ec5 Thumb Code 30 mw_printf.o(i.mw_printf_insert_data)
Region$$Table$$Base 0x08000fd8 Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x08000ff8 Number 0 anon$$obj.o(Region$$Table)
RCC_APB1PeriphResetCmd 0x080003dd Thumb Code 26 stm32f10x_rcc.o(i.RCC_APB1PeriphResetCmd)
RCC_APB2PeriphClockCmd 0x080003fd Thumb Code 26 stm32f10x_rcc.o(i.RCC_APB2PeriphClockCmd)
RCC_APB2PeriphResetCmd 0x0800041d Thumb Code 26 stm32f10x_rcc.o(i.RCC_APB2PeriphResetCmd)
RCC_GetClocksFreq 0x0800043d Thumb Code 192 stm32f10x_rcc.o(i.RCC_GetClocksFreq)
SysTick_Handler 0x080005f9 Thumb Code 8 bsp_timer.o(i.SysTick_Handler)
SysTick_ISR 0x08000601 Thumb Code 110 bsp_timer.o(i.SysTick_ISR)
SystemInit 0x08000685 Thumb Code 78 system_stm32f10x.o(i.SystemInit)
TIM2_IRQHandler 0x080006e5 Thumb Code 28 bsp_timer.o(i.TIM2_IRQHandler)
TIM3_IRQHandler 0x08000701 Thumb Code 164 bsp_timer.o(i.TIM3_IRQHandler)
TIM_ClearITPendingBit 0x080007b9 Thumb Code 6 stm32f10x_tim.o(i.TIM_ClearITPendingBit)
TIM_GetITStatus 0x080007bf Thumb Code 34 stm32f10x_tim.o(i.TIM_GetITStatus)
TIM_ITConfig 0x080007e1 Thumb Code 18 stm32f10x_tim.o(i.TIM_ITConfig)
TIM_SetCompare1 0x080007f3 Thumb Code 4 stm32f10x_tim.o(i.TIM_SetCompare1)
USART1_IRQHandler 0x080007f9 Thumb Code 62 interrupt_handler.o(i.USART1_IRQHandler)
USART_ClearITPendingBit 0x0800083d Thumb Code 30 stm32f10x_usart.o(i.USART_ClearITPendingBit)
USART_Cmd 0x0800085b Thumb Code 24 stm32f10x_usart.o(i.USART_Cmd)
USART_DeInit 0x08000875 Thumb Code 134 stm32f10x_usart.o(i.USART_DeInit)
USART_GetITStatus 0x08000911 Thumb Code 84 stm32f10x_usart.o(i.USART_GetITStatus)
USART_ITConfig 0x08000965 Thumb Code 74 stm32f10x_usart.o(i.USART_ITConfig)
USART_Init 0x080009b1 Thumb Code 210 stm32f10x_usart.o(i.USART_Init)
USART_ReceiveData 0x08000a89 Thumb Code 10 stm32f10x_usart.o(i.USART_ReceiveData)
USART_SendData 0x08000a93 Thumb Code 8 stm32f10x_usart.o(i.USART_SendData)
_sys_exit 0x08000aa1 Thumb Code 6 bsp_usart.o(i._sys_exit)
bsp_DelayMS 0x08000b9d Thumb Code 58 bsp_timer.o(i.bsp_DelayMS)
bsp_Idle 0x08000be1 Thumb Code 2 bsp.o(i.bsp_Idle)
bsp_LedToggle 0x08000be5 Thumb Code 36 bsp_led.o(i.bsp_LedToggle)
bsp_RunPer10ms 0x08000c11 Thumb Code 2 bsp.o(i.bsp_RunPer10ms)
bsp_RunPer1ms 0x08000c15 Thumb Code 36 bsp.o(i.bsp_RunPer1ms)
bsp_change_pwm 0x08000c59 Thumb Code 14 bsp_timer.o(i.bsp_change_pwm)
bsp_init 0x08000c6d Thumb Code 2 main.o(i.bsp_init)
bsp_pwm_test_loop 0x08000c6f Thumb Code 54 bsp_timer.o(i.bsp_pwm_test_loop)
get_systick_ms 0x08000ca5 Thumb Code 6 mw_soft_timer.o(i.get_systick_ms)
main 0x08000cb1 Thumb Code 24 main.o(i.main)
middleware_init 0x08000cc9 Thumb Code 12 main.o(i.middleware_init)
mw_bluetooth_drv_init 0x08000cd5 Thumb Code 52 mw_bluetooth.o(i.mw_bluetooth_drv_init)
mw_led0_init 0x08000d31 Thumb Code 50 mw_led.o(i.mw_led0_init)
mw_led0_off 0x08000d69 Thumb Code 14 mw_led.o(i.mw_led0_off)
mw_led0_on 0x08000d7d Thumb Code 14 mw_led.o(i.mw_led0_on)
mw_led_drv_init 0x08000d91 Thumb Code 44 mw_led.o(i.mw_led_drv_init)
mw_printf_insert_data 0x08000dcd Thumb Code 30 mw_printf.o(i.mw_printf_insert_data)
Region$$Table$$Base 0x08000df4 Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x08000e14 Number 0 anon$$obj.o(Region$$Table)
g_iRunTime 0x20000010 Data 4 bsp_timer.o(.data)
ubCounter 0x20000025 Data 1 bsp.o(.data)
SystemCoreClock 0x20000028 Data 4 system_stm32f10x.o(.data)
AHBPrescTable 0x2000002c Data 16 system_stm32f10x.o(.data)
led_drv_buf 0x20000050 Data 16 mw_led.o(.bss)
mw_printf_buf 0x20000060 Data 50 mw_printf.o(.bss)
bluetooth_drv_buf 0x200000a0 Data 40 mw_bluetooth.o(.bss)
__libspace_start 0x200000c8 Data 96 libspace.o(.bss)
__temporary_stack_top$libspace 0x20000128 Data 0 libspace.o(.bss)
led_drv_buf 0x2000003c Data 16 mw_led.o(.bss)
mw_printf_buf 0x2000004c Data 50 mw_printf.o(.bss)
bt_drv_buf 0x2000008c Data 40 mw_bluetooth.o(.bss)
__libspace_start 0x200000b4 Data 96 libspace.o(.bss)
__temporary_stack_top$libspace 0x20000114 Data 0 libspace.o(.bss)
@ -1294,153 +1334,156 @@ Memory Map of the image
Image Entry point : 0x080000ed
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00001048, Max: 0x00010000, ABSOLUTE)
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00000e50, Max: 0x00010000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00000ff8, Max: 0x00010000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00000e14, Max: 0x00010000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x08000000 0x08000000 0x000000ec Data RO 640 RESET startup_stm32f10x_md.o
0x080000ec 0x080000ec 0x00000008 Code RO 3769 * !!!main c_w.l(__main.o)
0x080000f4 0x080000f4 0x00000034 Code RO 3939 !!!scatter c_w.l(__scatter.o)
0x08000128 0x08000128 0x0000001a Code RO 3941 !!handler_copy c_w.l(__scatter_copy.o)
0x08000000 0x08000000 0x000000ec Data RO 670 RESET startup_stm32f10x_md.o
0x080000ec 0x080000ec 0x00000008 Code RO 3819 * !!!main c_w.l(__main.o)
0x080000f4 0x080000f4 0x00000034 Code RO 3989 !!!scatter c_w.l(__scatter.o)
0x08000128 0x08000128 0x0000001a Code RO 3991 !!handler_copy c_w.l(__scatter_copy.o)
0x08000142 0x08000142 0x00000002 PAD
0x08000144 0x08000144 0x0000001c Code RO 3943 !!handler_zi c_w.l(__scatter_zi.o)
0x08000160 0x08000160 0x00000002 Code RO 3811 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o)
0x08000162 0x08000162 0x00000000 Code RO 3818 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3820 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3823 .ARM.Collect$$libinit$$0000000A c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3825 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3827 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3830 .ARM.Collect$$libinit$$00000011 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3832 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3834 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3836 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3838 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3840 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3842 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3844 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3846 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3848 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3850 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3854 .ARM.Collect$$libinit$$0000002C c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3856 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3858 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3860 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000002 Code RO 3861 .ARM.Collect$$libinit$$00000033 c_w.l(libinit2.o)
0x08000164 0x08000164 0x00000002 Code RO 3879 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o)
0x08000166 0x08000166 0x00000000 Code RO 3889 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3891 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3893 .ARM.Collect$$libshutdown$$00000006 c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3896 .ARM.Collect$$libshutdown$$00000009 c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3899 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3901 .ARM.Collect$$libshutdown$$0000000E c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3904 .ARM.Collect$$libshutdown$$00000011 c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000002 Code RO 3905 .ARM.Collect$$libshutdown$$00000012 c_w.l(libshutdown2.o)
0x08000168 0x08000168 0x00000000 Code RO 3773 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o)
0x08000168 0x08000168 0x00000000 Code RO 3780 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o)
0x08000168 0x08000168 0x00000006 Code RO 3792 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o)
0x0800016e 0x0800016e 0x00000000 Code RO 3782 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o)
0x0800016e 0x0800016e 0x00000004 Code RO 3783 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o)
0x08000172 0x08000172 0x00000000 Code RO 3785 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o)
0x08000172 0x08000172 0x00000008 Code RO 3786 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o)
0x0800017a 0x0800017a 0x00000002 Code RO 3815 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o)
0x0800017c 0x0800017c 0x00000000 Code RO 3863 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o)
0x0800017c 0x0800017c 0x00000004 Code RO 3864 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o)
0x08000180 0x08000180 0x00000006 Code RO 3865 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o)
0x08000144 0x08000144 0x0000001c Code RO 3993 !!handler_zi c_w.l(__scatter_zi.o)
0x08000160 0x08000160 0x00000002 Code RO 3861 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o)
0x08000162 0x08000162 0x00000000 Code RO 3868 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3870 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3873 .ARM.Collect$$libinit$$0000000A c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3875 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3877 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3880 .ARM.Collect$$libinit$$00000011 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3882 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3884 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3886 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3888 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3890 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3892 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3894 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3896 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3898 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3900 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3904 .ARM.Collect$$libinit$$0000002C c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3906 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3908 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000000 Code RO 3910 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o)
0x08000162 0x08000162 0x00000002 Code RO 3911 .ARM.Collect$$libinit$$00000033 c_w.l(libinit2.o)
0x08000164 0x08000164 0x00000002 Code RO 3929 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o)
0x08000166 0x08000166 0x00000000 Code RO 3939 .ARM.Collect$$libshutdown$$00000002 c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3941 .ARM.Collect$$libshutdown$$00000004 c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3943 .ARM.Collect$$libshutdown$$00000006 c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3946 .ARM.Collect$$libshutdown$$00000009 c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3949 .ARM.Collect$$libshutdown$$0000000C c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3951 .ARM.Collect$$libshutdown$$0000000E c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000000 Code RO 3954 .ARM.Collect$$libshutdown$$00000011 c_w.l(libshutdown2.o)
0x08000166 0x08000166 0x00000002 Code RO 3955 .ARM.Collect$$libshutdown$$00000012 c_w.l(libshutdown2.o)
0x08000168 0x08000168 0x00000000 Code RO 3823 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o)
0x08000168 0x08000168 0x00000000 Code RO 3830 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o)
0x08000168 0x08000168 0x00000006 Code RO 3842 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o)
0x0800016e 0x0800016e 0x00000000 Code RO 3832 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o)
0x0800016e 0x0800016e 0x00000004 Code RO 3833 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o)
0x08000172 0x08000172 0x00000000 Code RO 3835 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o)
0x08000172 0x08000172 0x00000008 Code RO 3836 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o)
0x0800017a 0x0800017a 0x00000002 Code RO 3865 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o)
0x0800017c 0x0800017c 0x00000000 Code RO 3913 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o)
0x0800017c 0x0800017c 0x00000004 Code RO 3914 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o)
0x08000180 0x08000180 0x00000006 Code RO 3915 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o)
0x08000186 0x08000186 0x00000002 PAD
0x08000188 0x08000188 0x00000040 Code RO 641 .text startup_stm32f10x_md.o
0x080001c8 0x080001c8 0x00000002 Code RO 3733 .text c_w.l(use_no_semi_2.o)
0x080001ca 0x080001ca 0x00000006 Code RO 3767 .text c_w.l(heapauxi.o)
0x080001d0 0x080001d0 0x00000002 Code RO 3771 .text c_w.l(use_no_semi.o)
0x080001d2 0x080001d2 0x0000004a Code RO 3800 .text c_w.l(sys_stackheap_outer.o)
0x0800021c 0x0800021c 0x00000012 Code RO 3804 .text c_w.l(exit.o)
0x08000188 0x08000188 0x00000040 Code RO 671 .text startup_stm32f10x_md.o
0x080001c8 0x080001c8 0x00000002 Code RO 3783 .text c_w.l(use_no_semi_2.o)
0x080001ca 0x080001ca 0x00000006 Code RO 3817 .text c_w.l(heapauxi.o)
0x080001d0 0x080001d0 0x00000002 Code RO 3821 .text c_w.l(use_no_semi.o)
0x080001d2 0x080001d2 0x0000004a Code RO 3850 .text c_w.l(sys_stackheap_outer.o)
0x0800021c 0x0800021c 0x00000012 Code RO 3854 .text c_w.l(exit.o)
0x0800022e 0x0800022e 0x00000002 PAD
0x08000230 0x08000230 0x00000008 Code RO 3812 .text c_w.l(libspace.o)
0x08000238 0x08000238 0x00000116 Code RO 1823 i.GPIO_Init stm32f10x_gpio.o
0x0800034e 0x0800034e 0x00000004 Code RO 1830 i.GPIO_ResetBits stm32f10x_gpio.o
0x08000352 0x08000352 0x00000004 Code RO 1831 i.GPIO_SetBits stm32f10x_gpio.o
0x08000230 0x08000230 0x00000008 Code RO 3862 .text c_w.l(libspace.o)
0x08000238 0x08000238 0x00000116 Code RO 1853 i.GPIO_Init stm32f10x_gpio.o
0x0800034e 0x0800034e 0x00000004 Code RO 1860 i.GPIO_ResetBits stm32f10x_gpio.o
0x08000352 0x08000352 0x00000004 Code RO 1861 i.GPIO_SetBits stm32f10x_gpio.o
0x08000356 0x08000356 0x00000002 PAD
0x08000358 0x08000358 0x00000070 Code RO 645 i.NVIC_Init misc.o
0x080003c8 0x080003c8 0x00000014 Code RO 646 i.NVIC_PriorityGroupConfig misc.o
0x080003dc 0x080003dc 0x00000020 Code RO 2245 i.RCC_APB1PeriphClockCmd stm32f10x_rcc.o
0x080003fc 0x080003fc 0x00000020 Code RO 2246 i.RCC_APB1PeriphResetCmd stm32f10x_rcc.o
0x0800041c 0x0800041c 0x00000020 Code RO 2247 i.RCC_APB2PeriphClockCmd stm32f10x_rcc.o
0x0800043c 0x0800043c 0x00000020 Code RO 2248 i.RCC_APB2PeriphResetCmd stm32f10x_rcc.o
0x0800045c 0x0800045c 0x000000d4 Code RO 2255 i.RCC_GetClocksFreq stm32f10x_rcc.o
0x08000530 0x08000530 0x00000008 Code RO 604 i.SetSysClock system_stm32f10x.o
0x08000538 0x08000538 0x000000e0 Code RO 605 i.SetSysClockTo72 system_stm32f10x.o
0x08000618 0x08000618 0x00000008 Code RO 324 i.SysTick_Handler bsp_timer.o
0x08000620 0x08000620 0x00000084 Code RO 325 i.SysTick_ISR bsp_timer.o
0x080006a4 0x080006a4 0x00000060 Code RO 607 i.SystemInit system_stm32f10x.o
0x08000704 0x08000704 0x000000b0 Code RO 326 i.TIM2_IRQHandler bsp_timer.o
0x080007b4 0x080007b4 0x00000018 Code RO 2876 i.TIM_ARRPreloadConfig stm32f10x_tim.o
0x080007cc 0x080007cc 0x00000006 Code RO 2883 i.TIM_ClearITPendingBit stm32f10x_tim.o
0x080007d2 0x080007d2 0x00000018 Code RO 2888 i.TIM_Cmd stm32f10x_tim.o
0x080007ea 0x080007ea 0x00000022 Code RO 2909 i.TIM_GetITStatus stm32f10x_tim.o
0x0800080c 0x0800080c 0x00000012 Code RO 2913 i.TIM_ITConfig stm32f10x_tim.o
0x0800081e 0x0800081e 0x0000000c Code RO 2915 i.TIM_InternalClockConfig stm32f10x_tim.o
0x0800082a 0x0800082a 0x00000002 PAD
0x0800082c 0x0800082c 0x000000a4 Code RO 2959 i.TIM_TimeBaseInit stm32f10x_tim.o
0x080008d0 0x080008d0 0x00000044 Code RO 3660 i.USART1_IRQHandler interrupt_handler.o
0x08000914 0x08000914 0x0000001e Code RO 3424 i.USART_ClearITPendingBit stm32f10x_usart.o
0x08000932 0x08000932 0x00000018 Code RO 3427 i.USART_Cmd stm32f10x_usart.o
0x0800094a 0x0800094a 0x00000002 PAD
0x0800094c 0x0800094c 0x0000009c Code RO 3429 i.USART_DeInit stm32f10x_usart.o
0x080009e8 0x080009e8 0x00000054 Code RO 3431 i.USART_GetITStatus stm32f10x_usart.o
0x08000a3c 0x08000a3c 0x0000004a Code RO 3433 i.USART_ITConfig stm32f10x_usart.o
0x08000a86 0x08000a86 0x00000002 PAD
0x08000a88 0x08000a88 0x000000d8 Code RO 3434 i.USART_Init stm32f10x_usart.o
0x08000b60 0x08000b60 0x0000000a Code RO 3441 i.USART_ReceiveData stm32f10x_usart.o
0x08000b6a 0x08000b6a 0x00000008 Code RO 3444 i.USART_SendData stm32f10x_usart.o
0x08000b72 0x08000b72 0x00000006 Code RO 427 i._sys_exit bsp_usart.o
0x08000b78 0x08000b78 0x0000003c Code RO 521 i.bsp_Init bsp.o
0x08000bb4 0x08000bb4 0x00000084 Code RO 332 i.bsp_InitHardTimer bsp_timer.o
0x08000c38 0x08000c38 0x00000058 Code RO 557 i.bsp_InitLed bsp_led.o
0x08000c90 0x08000c90 0x000000a0 Code RO 333 i.bsp_InitTimer bsp_timer.o
0x08000d30 0x08000d30 0x00000014 Code RO 559 i.bsp_LedOff bsp_led.o
0x08000d44 0x08000d44 0x0000002c Code RO 561 i.bsp_LedToggle bsp_led.o
0x08000d70 0x08000d70 0x00000002 Code RO 522 i.bsp_RunPer10ms bsp.o
0x08000d72 0x08000d72 0x00000002 PAD
0x08000d74 0x08000d74 0x00000028 Code RO 523 i.bsp_RunPer1ms bsp.o
0x08000d9c 0x08000d9c 0x0000001c Code RO 334 i.bsp_SoftTimerDec bsp_timer.o
0x08000db8 0x08000db8 0x0000000c Code RO 1 i.bsp_init main.o
0x08000dc4 0x08000dc4 0x0000000c Code RO 301 i.get_systick_ms mw_soft_timer.o
0x08000dd0 0x08000dd0 0x00000014 Code RO 2 i.main main.o
0x08000de4 0x08000de4 0x0000000c Code RO 3 i.middleware_init main.o
0x08000df0 0x08000df0 0x00000038 Code RO 3672 i.mw_bluetooth_drv_init mw_bluetooth.o
0x08000e28 0x08000e28 0x00000038 Code RO 238 i.mw_led0_init mw_led.o
0x08000e60 0x08000e60 0x00000014 Code RO 239 i.mw_led0_off mw_led.o
0x08000e74 0x08000e74 0x00000014 Code RO 240 i.mw_led0_on mw_led.o
0x08000e88 0x08000e88 0x0000003c Code RO 241 i.mw_led_drv_init mw_led.o
0x08000ec4 0x08000ec4 0x00000028 Code RO 276 i.mw_printf_insert_data mw_printf.o
0x08000eec 0x08000eec 0x00000010 Code RO 3674 i.mw_receive_one_byte mw_bluetooth.o
0x08000efc 0x08000efc 0x00000014 Code RO 3675 i.mw_send_one_byte mw_bluetooth.o
0x08000f10 0x08000f10 0x00000010 Code RO 3676 i.mw_usart_deinit mw_bluetooth.o
0x08000f20 0x08000f20 0x000000b8 Code RO 3677 i.mw_usart_init mw_bluetooth.o
0x08000fd8 0x08000fd8 0x00000020 Data RO 3937 Region$$Table anon$$obj.o
0x08000358 0x08000358 0x00000070 Code RO 675 i.NVIC_Init misc.o
0x080003c8 0x080003c8 0x00000014 Code RO 676 i.NVIC_PriorityGroupConfig misc.o
0x080003dc 0x080003dc 0x00000020 Code RO 2276 i.RCC_APB1PeriphResetCmd stm32f10x_rcc.o
0x080003fc 0x080003fc 0x00000020 Code RO 2277 i.RCC_APB2PeriphClockCmd stm32f10x_rcc.o
0x0800041c 0x0800041c 0x00000020 Code RO 2278 i.RCC_APB2PeriphResetCmd stm32f10x_rcc.o
0x0800043c 0x0800043c 0x000000d4 Code RO 2285 i.RCC_GetClocksFreq stm32f10x_rcc.o
0x08000510 0x08000510 0x00000008 Code RO 634 i.SetSysClock system_stm32f10x.o
0x08000518 0x08000518 0x000000e0 Code RO 635 i.SetSysClockTo72 system_stm32f10x.o
0x080005f8 0x080005f8 0x00000008 Code RO 324 i.SysTick_Handler bsp_timer.o
0x08000600 0x08000600 0x00000084 Code RO 325 i.SysTick_ISR bsp_timer.o
0x08000684 0x08000684 0x00000060 Code RO 637 i.SystemInit system_stm32f10x.o
0x080006e4 0x080006e4 0x0000001c Code RO 326 i.TIM2_IRQHandler bsp_timer.o
0x08000700 0x08000700 0x000000b8 Code RO 327 i.TIM3_IRQHandler bsp_timer.o
0x080007b8 0x080007b8 0x00000006 Code RO 2913 i.TIM_ClearITPendingBit stm32f10x_tim.o
0x080007be 0x080007be 0x00000022 Code RO 2939 i.TIM_GetITStatus stm32f10x_tim.o
0x080007e0 0x080007e0 0x00000012 Code RO 2943 i.TIM_ITConfig stm32f10x_tim.o
0x080007f2 0x080007f2 0x00000004 Code RO 2979 i.TIM_SetCompare1 stm32f10x_tim.o
0x080007f6 0x080007f6 0x00000002 PAD
0x080007f8 0x080007f8 0x00000044 Code RO 3690 i.USART1_IRQHandler interrupt_handler.o
0x0800083c 0x0800083c 0x0000001e Code RO 3454 i.USART_ClearITPendingBit stm32f10x_usart.o
0x0800085a 0x0800085a 0x00000018 Code RO 3457 i.USART_Cmd stm32f10x_usart.o
0x08000872 0x08000872 0x00000002 PAD
0x08000874 0x08000874 0x0000009c Code RO 3459 i.USART_DeInit stm32f10x_usart.o
0x08000910 0x08000910 0x00000054 Code RO 3461 i.USART_GetITStatus stm32f10x_usart.o
0x08000964 0x08000964 0x0000004a Code RO 3463 i.USART_ITConfig stm32f10x_usart.o
0x080009ae 0x080009ae 0x00000002 PAD
0x080009b0 0x080009b0 0x000000d8 Code RO 3464 i.USART_Init stm32f10x_usart.o
0x08000a88 0x08000a88 0x0000000a Code RO 3471 i.USART_ReceiveData stm32f10x_usart.o
0x08000a92 0x08000a92 0x00000008 Code RO 3474 i.USART_SendData stm32f10x_usart.o
0x08000a9a 0x08000a9a 0x00000006 Code RO 328 i.__set_PRIMASK bsp_timer.o
0x08000aa0 0x08000aa0 0x00000006 Code RO 457 i._sys_exit bsp_usart.o
0x08000aa6 0x08000aa6 0x00000002 Code RO 3702 i.bluetooth_deinit mw_bluetooth.o
0x08000aa8 0x08000aa8 0x00000002 Code RO 3703 i.bluetooth_init mw_bluetooth.o
0x08000aaa 0x08000aaa 0x00000002 Code RO 3704 i.bluetooth_recv_deal mw_bluetooth.o
0x08000aac 0x08000aac 0x00000002 Code RO 3705 i.bluetooth_send_bytes mw_bluetooth.o
0x08000aae 0x08000aae 0x00000002 PAD
0x08000ab0 0x08000ab0 0x00000010 Code RO 3706 i.bluetooth_system_usart_deinit mw_bluetooth.o
0x08000ac0 0x08000ac0 0x000000b8 Code RO 3707 i.bluetooth_system_usart_init mw_bluetooth.o
0x08000b78 0x08000b78 0x00000010 Code RO 3708 i.bluetooth_system_usart_receive_one_byte mw_bluetooth.o
0x08000b88 0x08000b88 0x00000014 Code RO 3709 i.bluetooth_system_usart_send_one_byte mw_bluetooth.o
0x08000b9c 0x08000b9c 0x00000044 Code RO 330 i.bsp_DelayMS bsp_timer.o
0x08000be0 0x08000be0 0x00000002 Code RO 550 i.bsp_Idle bsp.o
0x08000be2 0x08000be2 0x00000002 PAD
0x08000be4 0x08000be4 0x0000002c Code RO 591 i.bsp_LedToggle bsp_led.o
0x08000c10 0x08000c10 0x00000002 Code RO 552 i.bsp_RunPer10ms bsp.o
0x08000c12 0x08000c12 0x00000002 PAD
0x08000c14 0x08000c14 0x00000028 Code RO 553 i.bsp_RunPer1ms bsp.o
0x08000c3c 0x08000c3c 0x0000001c Code RO 336 i.bsp_SoftTimerDec bsp_timer.o
0x08000c58 0x08000c58 0x00000014 Code RO 341 i.bsp_change_pwm bsp_timer.o
0x08000c6c 0x08000c6c 0x00000002 Code RO 1 i.bsp_init main.o
0x08000c6e 0x08000c6e 0x00000036 Code RO 343 i.bsp_pwm_test_loop bsp_timer.o
0x08000ca4 0x08000ca4 0x0000000c Code RO 301 i.get_systick_ms mw_soft_timer.o
0x08000cb0 0x08000cb0 0x00000018 Code RO 2 i.main main.o
0x08000cc8 0x08000cc8 0x0000000c Code RO 3 i.middleware_init main.o
0x08000cd4 0x08000cd4 0x0000005c Code RO 3710 i.mw_bluetooth_drv_init mw_bluetooth.o
0x08000d30 0x08000d30 0x00000038 Code RO 238 i.mw_led0_init mw_led.o
0x08000d68 0x08000d68 0x00000014 Code RO 239 i.mw_led0_off mw_led.o
0x08000d7c 0x08000d7c 0x00000014 Code RO 240 i.mw_led0_on mw_led.o
0x08000d90 0x08000d90 0x0000003c Code RO 241 i.mw_led_drv_init mw_led.o
0x08000dcc 0x08000dcc 0x00000028 Code RO 276 i.mw_printf_insert_data mw_printf.o
0x08000df4 0x08000df4 0x00000020 Data RO 3987 Region$$Table anon$$obj.o
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08000ff8, Size: 0x00000728, Max: 0x00005000, ABSOLUTE)
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08000e14, Size: 0x00000718, Max: 0x00005000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x20000000 0x08000ff8 0x00000002 Data RW 278 .data mw_printf.o
0x20000002 0x08000ffa 0x00000002 PAD
0x20000004 0x08000ffc 0x00000004 Data RW 303 .data mw_soft_timer.o
0x20000008 0x08001000 0x0000001d Data RW 341 .data bsp_timer.o
0x20000025 0x0800101d 0x00000001 Data RW 524 .data bsp.o
0x20000026 0x0800101e 0x00000002 PAD
0x20000028 0x08001020 0x00000014 Data RW 608 .data system_stm32f10x.o
0x2000003c 0x08001034 0x00000014 Data RW 2275 .data stm32f10x_rcc.o
0x20000050 - 0x00000010 Zero RW 242 .bss mw_led.o
0x20000060 - 0x00000032 Zero RW 277 .bss mw_printf.o
0x20000092 0x08001048 0x00000002 PAD
0x20000094 - 0x0000000c Zero RW 339 .bss bsp_timer.o
0x200000a0 - 0x00000028 Zero RW 3678 .bss mw_bluetooth.o
0x200000c8 - 0x00000060 Zero RW 3813 .bss c_w.l(libspace.o)
0x20000128 - 0x00000200 Zero RW 639 HEAP startup_stm32f10x_md.o
0x20000328 - 0x00000400 Zero RW 638 STACK startup_stm32f10x_md.o
0x20000000 0x08000e14 0x00000002 Data RW 278 .data mw_printf.o
0x20000002 0x08000e16 0x00000002 PAD
0x20000004 0x08000e18 0x00000004 Data RW 303 .data mw_soft_timer.o
0x20000008 0x08000e1c 0x0000001d Data RW 346 .data bsp_timer.o
0x20000025 0x08000e39 0x00000001 Data RW 554 .data bsp.o
0x20000026 0x08000e3a 0x00000014 Data RW 2305 .data stm32f10x_rcc.o
0x2000003a 0x08000e4e 0x00000002 PAD
0x2000003c - 0x00000010 Zero RW 242 .bss mw_led.o
0x2000004c - 0x00000032 Zero RW 277 .bss mw_printf.o
0x2000007e 0x08000e4e 0x00000002 PAD
0x20000080 - 0x0000000c Zero RW 344 .bss bsp_timer.o
0x2000008c - 0x00000028 Zero RW 3712 .bss mw_bluetooth.o
0x200000b4 - 0x00000060 Zero RW 3863 .bss c_w.l(libspace.o)
0x20000114 0x08000e4e 0x00000004 PAD
0x20000118 - 0x00000200 Zero RW 669 HEAP startup_stm32f10x_md.o
0x20000318 - 0x00000400 Zero RW 668 STACK startup_stm32f10x_md.o
==============================================================================
@ -1450,30 +1493,30 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug Object Name
0 0 0 0 0 37716 app_led.o
102 12 0 1 0 17271 bsp.o
152 20 0 0 0 1467 bsp_led.o
636 64 0 29 12 19606 bsp_timer.o
6 0 0 0 0 496 bsp_usart.o
0 0 0 0 0 17200 app_led.o
44 4 0 1 0 1808 bsp.o
44 8 0 0 0 496 bsp_led.o
528 58 0 29 12 21123 bsp_timer.o
6 0 0 0 0 508 bsp_usart.o
0 0 0 0 0 32 core_cm3.o
68 6 0 0 0 540 interrupt_handler.o
44 0 0 0 0 221880 main.o
132 22 0 0 0 1971 misc.o
292 46 0 0 40 3544 mw_bluetooth.o
156 34 0 0 16 2750 mw_led.o
40 10 0 2 50 4380 mw_printf.o
12 6 0 4 0 1101 mw_soft_timer.o
64 26 236 0 1536 992 startup_stm32f10x_md.o
286 0 0 0 0 12268 stm32f10x_gpio.o
340 44 0 20 0 15520 stm32f10x_rcc.o
282 42 0 0 0 26355 stm32f10x_tim.o
602 28 0 0 0 14284 stm32f10x_usart.o
328 28 0 20 0 2981 system_stm32f10x.o
68 6 0 0 0 552 interrupt_handler.o
38 0 0 0 0 221944 main.o
132 22 0 0 0 2011 misc.o
336 60 0 0 40 5537 mw_bluetooth.o
156 34 0 0 16 2822 mw_led.o
40 10 0 2 50 4428 mw_printf.o
12 6 0 4 0 1145 mw_soft_timer.o
64 26 236 0 1536 1004 startup_stm32f10x_md.o
286 0 0 0 0 12332 stm32f10x_gpio.o
308 38 0 20 0 14911 stm32f10x_rcc.o
62 0 0 0 0 24299 stm32f10x_tim.o
602 28 0 0 0 14408 stm32f10x_usart.o
328 28 0 0 0 2657 system_stm32f10x.o
----------------------------------------------------------------------
3552 388 268 80 1656 385154 Object Totals
3068 328 268 60 1656 349217 Object Totals
0 0 32 0 0 0 (incl. Generated)
10 0 0 4 2 0 (incl. Padding)
14 0 0 4 2 0 (incl. Padding)
----------------------------------------------------------------------
@ -1500,8 +1543,8 @@ Image component sizes
2 0 0 0 0 68 use_no_semi_2.o
----------------------------------------------------------------------
268 12 0 0 96 584 Library Totals
6 0 0 0 0 0 (incl. Padding)
268 12 0 0 100 584 Library Totals
6 0 0 0 4 0 (incl. Padding)
----------------------------------------------------------------------
@ -1510,7 +1553,7 @@ Image component sizes
262 12 0 0 96 584 c_w.l
----------------------------------------------------------------------
268 12 0 0 96 584 Library Totals
268 12 0 0 100 584 Library Totals
----------------------------------------------------------------------
@ -1519,15 +1562,15 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug
3820 400 268 80 1752 382926 Grand Totals
3820 400 268 80 1752 382926 ELF Image Totals
3820 400 268 80 0 0 ROM Totals
3336 340 268 60 1756 346937 Grand Totals
3336 340 268 60 1756 346937 ELF Image Totals
3336 340 268 60 0 0 ROM Totals
==============================================================================
Total RO Size (Code + RO Data) 4088 ( 3.99kB)
Total RW Size (RW Data + ZI Data) 1832 ( 1.79kB)
Total ROM Size (Code + RO Data + RW Data) 4168 ( 4.07kB)
Total RO Size (Code + RO Data) 3604 ( 3.52kB)
Total RW Size (RW Data + ZI Data) 1816 ( 1.77kB)
Total ROM Size (Code + RO Data + RW Data) 3664 ( 3.58kB)
==============================================================================

View File

@ -12,7 +12,7 @@
<ToolsetName>ARM-ADS</ToolsetName>
<pArmCC>5060960::V5.06 update 7 (build 960)::.\ARMCC</pArmCC>
<pCCUsed>5060960::V5.06 update 7 (build 960)::.\ARMCC</pCCUsed>
<uAC6>0</uAC6>
<uAC6>8</uAC6>
<TargetOption>
<TargetCommonOption>
<Device>STM32F103C8</Device>
@ -139,7 +139,7 @@
</Flash1>
<bUseTDR>1</bUseTDR>
<Flash2>BIN\UL2CM3.DLL</Flash2>
<Flash3></Flash3>
<Flash3>"" ()</Flash3>
<Flash4></Flash4>
<pFcarmOut></pFcarmOut>
<pFcarmGrp></pFcarmGrp>
@ -329,8 +329,8 @@
<uC99>0</uC99>
<uGnu>0</uGnu>
<useXO>0</useXO>
<v6Lang>3</v6Lang>
<v6LangP>3</v6LangP>
<v6Lang>1</v6Lang>
<v6LangP>1</v6LangP>
<vShortEn>1</vShortEn>
<vShortWch>1</vShortWch>
<v6Lto>0</v6Lto>