diff --git a/APP/board.h b/APP/board.h index 75ca58c..8bdafa9 100644 --- a/APP/board.h +++ b/APP/board.h @@ -5,25 +5,4 @@ #define EXCEPTION_CHECK_PERIOD 50 //自动关机时,一个灯等效的时间 -#define AUTO_SHUTDOWN_ONE_LIGHT_EQ_TIME_S 20 -//间歇工作周期 -// #define INTERVAL_WORK_PERIOD_MS (60 * 1000) -#define INTERVAL_WORK_PERIOD_MS (20 * 1000) -//间歇工作工作时间占整个周期的百分比 -#define INTERVAL_WORK_DUTY ((uint8_t)50) - -#define HIGH_LEVEL_PWM_FREQ 25000 -#define LOW_LEVEL_PWM_FREQ 10000 - -// #define HIGH_LEVEL_PWM_FREQ 99000 -// #define LOW_LEVEL_PWM_FREQ 50000 - -#define MIN_PWM_FREQ 5000 -#define PWM_CHANGE_INTERVAL_TIME_MS 1000 -//每次PWM变化的频率 -#define PWM_CHANGE_STEP_FREQ 1000 -//当目标PWM小于这个数值时,直接变化到20k -#define PWM_CHANGE_BEGIN_STEP_FREQ 20000 -//PWM改变一次的周期 -#define PWM_CHANGE_PERIOD 1000 -#define PWM_PULSE_WIDTH_US 8 +#define AUTO_SHUTDOWN_ONE_LIGHT_EQ_TIME_S 20 \ No newline at end of file diff --git a/PlatForm/irqhandler.c b/APP/irqhandler.c similarity index 93% rename from PlatForm/irqhandler.c rename to APP/irqhandler.c index a9f4b48..8205d6e 100644 --- a/PlatForm/irqhandler.c +++ b/APP/irqhandler.c @@ -1,19 +1,19 @@ -#include "irqhandler.h" - -void NMI_IRQHandler(void) {} - -void HardFault_IRQHandler(void) { - while (1) { - } -} - -void SVC_IRQHandler(void) {} - -void PendSV_IRQHandler(void) {} - - -// uint32_t g_sys_sick = 0; -// void SysTick_IRQHandler(void) { -// g_sys_sick++; -// } - +#include "irqhandler.h" + +void NMI_IRQHandler(void) {} + +void HardFault_IRQHandler(void) { + while (1) { + } +} + +void SVC_IRQHandler(void) {} + +void PendSV_IRQHandler(void) {} + + +// uint32_t g_sys_sick = 0; +// void SysTick_IRQHandler(void) { +// g_sys_sick++; +// } + diff --git a/PlatForm/irqhandler.h b/APP/irqhandler.h similarity index 95% rename from PlatForm/irqhandler.h rename to APP/irqhandler.h index 0856668..a33dc84 100644 --- a/PlatForm/irqhandler.h +++ b/APP/irqhandler.h @@ -1,15 +1,15 @@ -#ifndef __IRQHANDLER_H__ -#define __IRQHANDLER_H__ - -#include "ES8P5066.h" -//#include "light.h" -//#include "gpio.h" - -/************жϺ***********/ -void NMI_IRQHandler(void); -void HardFault_IRQHandler(void); -void SVC_IRQHandler(void); -void PendSV_IRQHandler(void); -void SysTick_IRQHandler(void); - -#endif +#ifndef __IRQHANDLER_H__ +#define __IRQHANDLER_H__ + +#include "ES8P5066.h" +//#include "light.h" +//#include "gpio.h" + +/************жϺ***********/ +void NMI_IRQHandler(void); +void HardFault_IRQHandler(void); +void SVC_IRQHandler(void); +void PendSV_IRQHandler(void); +void SysTick_IRQHandler(void); + +#endif diff --git a/APP/light.h b/APP/light.h deleted file mode 100644 index 6379bff..0000000 --- a/APP/light.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef _LIGHT_H_ -#define _LIGHT_H_ - -// #include "board.h" -// #include "lib_config.h" -// #include "port.h" -// #include "system_ES8P5066.h" -// #include "systick.h" - -// typedef enum { -// krgb_close = 0, /*关闭灯*/ -// krgb_color_green = 1, /*打开绿灯*/ -// krgb_color_blue = 2, /*打开蓝灯*/ -// krgb_color_red = 3, /*打开红灯*/ - -// } rgb_light_mode_t; - -// void light_module_set_rgb_mode(rgb_light_mode_t mode); -// void light_module_set_error_light_mode(bool open, uint8_t error_mode); -// void light_module_set_autoshutdown_indicator_light(bool light); -// void light_module_set_rgb_in_interval_working_mode(bool state); -// void light_module_close_all_light(void); - -// void light_module_schedule(void); - -// //外部实现 -// int hook_get_autoshutdown_timecount(); -// //臭氧发生器是否工作 -// bool hook_get_ozone_generator_working_flag(); - -#endif diff --git a/APP/main.c b/APP/main.c index dfcf39d..62b31a8 100644 --- a/APP/main.c +++ b/APP/main.c @@ -1,4 +1,3 @@ -#include "main.h" #include //定义布尔 #include @@ -209,6 +208,18 @@ void systicket_do_debug_light_state(void) { } } +void init_all_subdevice_state() { + port_debug_set(false); + port_fan_set(false); + port_led0_set(false); + port_led1_set(false); + port_led2_set(false); + port_led3_set(false); + port_led_r_set(false); + port_led_g_set(false); + port_led_b_set(false); +} + int main(void) { SystemInit(); //配置系统时钟 DeviceClockAllEnable(); //打开所有外设时钟 @@ -231,35 +242,26 @@ int main(void) { /** * @brief 初始化所有设备状态 */ + init_all_subdevice_state(); - port_debug_set(false); - port_fan_set(false); - port_led0_set(false); - port_led1_set(false); - port_led2_set(false); - port_led3_set(false); - port_led_r_set(false); - port_led_g_set(false); - port_led_b_set(false); // port_fan_set(true); port_ozone_pwm_set_duty(30000, 10 * 1000); port_ozone_pwm_start(); - // port_ozone_pwm_stop + while (true) { //调试指示灯逻辑 systicket_do_debug_light_state(); //按键扫描逻辑 DO_IT_EACH_MS(KEY_PERIOD) { zkey_do_loop_in_each_period(NULL); } END(); - -#if 1 //打印功率 +#if 1 + //打印功率 DO_IT_EACH_MS(300) { // // printf("v :fan:%f,ozone:%f\n", port_adc_get_fan_voltage(), port_adc_get_ozone_generator_voltage()); printf("power:fan:%f,ozone:%f\n", port_adc_get_fan_power(), port_adc_get_ozone_generator_power()); } END(); - test_all_light(); #endif diff --git a/APP/main.h b/APP/main.h deleted file mode 100644 index fc0e40d..0000000 --- a/APP/main.h +++ /dev/null @@ -1,47 +0,0 @@ -#ifndef __MAIN_H__ -#define __MAIN_H__ -#if 0 -#include "irqhandler.h" -#include "lib_config.h" -#include "light.h" -#include "ozone_pwm_control.h" -#include "port.h" -#include "pwm.h" -#include "system_ES8P5066.h" -#include "systick.h" -#include "uart0.h" -typedef enum { - kwork_level_close = 0, /*关闭PWM输出,关闭RGB*/ - kwork_level_low = 1, /*低档*/ - kwork_level_hight = 2, /*高档*/ -} work_level_t; - -typedef struct { - bool fan_error_status; /*风扇电压异常*/ - bool way_circuit_error_status; /*总电压异常*/ -} error_state_t; - -// void Uart0Init(void); -// void Uart0SendBuff(uint8_t *buff); -// void port_do_debug_light_state(void); -// void LedInit(void); - -void process_intervalkey_press_even(void); -void update_interval_period_duty(uint8_t interval_duty); -void restore_the_mode_before_intermittent_work(void); -void process_rgb_flicker(void); -void power_on_ozone_working_status(void); -void update_ozone_work_level(work_level_t level); -void process_levelkey_press_even(void); -void shutdown(void); -void starting_up(void); -void process_powerkey(void); -void updae_timing_light_state(void); -void update_timing_time(void); -void try_shutdown(void); -bool timing_function_is_enable(void); -void iwdt_init(void); -void feed_iwdt(void); -void process_error_even(void); -#endif -#endif diff --git a/APP/ozone_pwm_control.h b/APP/ozone_pwm_control.h deleted file mode 100644 index 97d2eb1..0000000 --- a/APP/ozone_pwm_control.h +++ /dev/null @@ -1,26 +0,0 @@ -#if 0 -#ifndef _OZONE_PWM_CONTROL_H_ -#define _OZONE_PWM_CONTROL_H_ - -#include -#include - -#include "lib_config.h" -#include "light.h" -#include "port.h" -#include "system_ES8P5066.h" - -void ozone_pwm_control_module_set_pwm_output_1(uint32_t hardware_period, uint8_t hardware_duty); -void ozone_pwm_control_module_set_pwm_output_2(uint32_t hardware_period, uint8_t hardware_duty, uint32_t large_period, uint8_t large_duty); - -void ozone_pwm_control_module_stop_pwm(void); -void ozone_pwm_control_module_loop(void); - -void ozone_pwm_control_enable(void); -void ozone_pwm_control_disable(void); -bool ozone_pwm_control_is_enable(void); - -bool ozone_pwm_control_hardware_is_enable(void); - -#endif -#endif \ No newline at end of file diff --git a/APP/port.c b/APP/port.c index 9274ee1..076b4d5 100644 --- a/APP/port.c +++ b/APP/port.c @@ -5,7 +5,6 @@ #include "../zes8p5066lib/pwm.h" #include "../zes8p5066lib/systicket.h" #include "../zes8p5066lib/uart0.h" -#include "pwm.h" zpwm_t g_ozonepwm; diff --git a/APP/pwm.c b/APP/pwm.c deleted file mode 100644 index aa985ba..0000000 --- a/APP/pwm.c +++ /dev/null @@ -1,167 +0,0 @@ -#if 1 -#include "pwm.h" - -#include "board.h" -#define CLCK 48.0 -#define PRE_CLK 1.0 -uint32_t target_frequencyhz; -uint32_t target_duty; - -static uint32_t s_mat2; -static uint32_t s_top; - -static double calculate_top(double target_frequency_hz) { - int clck = 0; - int top = 0; - clck = CLCK * 1000 * 1000 / PRE_CLK; - top = clck / target_frequency_hz; - return top; -} - -void t16_pa4_init(void) { - T16Nx_Disable(T16N0); - // PA4 T16N0_1 - T16Nx_BaseInitStruType x; - T16Nx_PWMInitStruType y; - /* 初始化T16Nx定时器*/ - x.T16Nx_ClkS = T16Nx_ClkS_PCLK; //时钟源48M - x.T16Nx_SYNC = Disable; //不同步 - x.T16Nx_EDGE = T16Nx_EDGE_Rise; //上升沿触发 - x.T16Nx_Mode = T16Nx_Mode_PWM; // 选用PWM模式 - x.T16Nx_PREMAT = PRE_CLK; /* 预分频比1:1 */ - T16Nx_BaseInit(T16N0, &x); - /* 配置T16N0通道1输出 */ - y.T16Nx_MOE0 = Disable; - y.T16Nx_MOE1 = Enable; - y.T16Nx_POL0 = POSITIVE; //在串口发送的时候,正极性代表发送的数据与接受的数据相同,负极性代表与发送的数据相反,在这么不知道有没有作用 - y.T16Nx_POL1 = POSITIVE; - y.T16Nx_PWMMODE = T16Nx_PWMMode_INDEP; //选择独立模式 - y.PWMDZE = Disable; // PWM互补模式死区使能 - y.REGBUFEN = Enable; //缓冲寄存器使能 (REGBUFEN目前不知道干什么用的) - T16Nx_PMWOutInit(T16N0, &y); - /* 配置T16N0 通道1输出 */ - /*MAT2 MAT3 通道的中断配置*/ - //匹配寄存器值匹配后的工作模式,计数到以后: 继续计数不产生中断 - T16Nx_MAT2ITConfig(T16N0, T16Nx_Go_No); - //匹配寄存器值匹配后的工作模式,清零并重新计数,产生中断 - T16Nx_MAT3ITConfig(T16N0, T16Nx_Clr_Int); - - /*MAT2 MAT3 匹配后的输出电平高低*/ - T16Nx_MAT2Out1Config(T16N0, - T16Nx_Out_Low); //匹配后输出端口的模式,输出高还是低 - T16Nx_MAT3Out1Config(T16N0, - T16Nx_Out_High); //匹配后输出端口的模式,输出高还是低 - //以上是设置模式,输出高低电平 - T16Nx_SetCNT1(T16N0, 0); //设定计数器的初始值 - T16Nx_SetMAT2(T16N0, 0); //设置匹配寄存器的数值 - T16Nx_SetMAT3(T16N0, 0); //设置匹配寄存器的数值 - //设置计数器峰值//根据这个得到定时的时钟48M/48000=1khZ(在独立模式下PWM的周期由TOP1决定为TOP+1,周期算出来是1ms) - T16Nx_SetTOP1(T16N0, 0); - //以上是设置占空比 - /* 配置输出管脚 */ - GPIO_InitSettingType initset; - - initset.Signal = GPIO_Pin_Signal_Digital; //数字 - initset.Dir = GPIO_Direction_Output; //输出模式 - initset.Func = GPIO_Reuse_Func2; //复用到T16N0_1功能 - initset.ODE = GPIO_ODE_Output_Disable; //开漏使能 - initset.DS = GPIO_DS_Output_Normal; //普通电流模式 - initset.PUE = GPIO_PUE_Input_Enable; //弱上拉使能 - initset.PDE = GPIO_PDE_Input_Disable; //弱下拉禁止 - /* 配置PA4为T16N0输出通道1 */ - GPIO_Init(GPIO_Pin_A4, &initset); - T16Nx_Enable(T16N0); - return; -} - -void set_pwm_t16_pa4_2(uint16_t mat2, uint16_t top) { - uint16_t Mat2 = mat2; - uint16_t Mat3 = top; - - s_mat2 = mat2; - s_top = top; - - // printf("set_pwm_t16_pa4 mat2:%d mat3:%d top:%d\n", mat2, Mat3, top); - T16Nx_SetCNT1(T16N0, 0); //设定计数器的初始值 - T16Nx_SetMAT2(T16N0, Mat2); //设置匹配寄存器的数值 - T16Nx_SetMAT3(T16N0, Mat3); //设置匹配寄存器的数值 - //设置计数器峰值//根据这个得到定时的时钟48M/48000=1khZ(在独立模式下PWM的周期由TOP1决定为TOP+1,周期算出来是1ms) - T16Nx_SetTOP1(T16N0, top); - //以上是设置占空比 -} - -uint32_t getCNT() { return T16Nx_GetCNT1(T16N0); } -uint32_t getTOP() { return T16Nx_GetTOP1(T16N0); } - -void set_pwm_mat2(uint16_t mat2) { set_pwm_t16_pa4_2(mat2, s_top); } - -void set_pwm_t16_pa4(uint32_t freqhz, double duty) { - // printf("set_pwm_t16_pa4 %d %f\n", freqhz, duty); - double top_double = calculate_top(freqhz); //根据需要的频率计算出TOP(自动重装载值) - uint16_t top = (uint16_t)top_double; - uint16_t Mat2 = (uint16_t)top_double * (duty / 100.0); - if (Mat2 >= top) Mat2 = top - 1; - set_pwm_t16_pa4_2(Mat2, top); -} - -//###################################################### -/** - * @brief 设置pwm的周期占空比 - * - * @param frequency - * @param duty - */ - -/** - * - * 频率变化: - * - * - * - * 占空比变化: - * 20->0 - * 0->20 - * 0->10 - * - * 有效时间逐渐增加,周期最大,有效时间不变,周期变小,频率变大 - * - * - * - * 周期变大,有效时间不变,周期变到最大,有效时间逐渐减小 - * - * - * 1. 先变化到周期,如果周期时间大于占空比,则先变化到占空比 - * 2. 再变化频率 - * - */ - -uint32_t s_target_frequencyhz; -uint32_t s_now_frequencyhz; - -uint32_t s_target_duty; -uint32_t s_now_duty; - -void set_pwm_modbul_freq_duty(uint32_t frequencyhz, uint32_t duty) { - // s_target_frequencyhz = frequencyhz; - - // if (s_target_frequencyhz <= MIN_PWM_FREQ) { - // s_target_frequencyhz = MIN_PWM_FREQ; - // } - // s_target_duty = duty; - if (frequencyhz < 50) frequencyhz = 50; - set_pwm_t16_pa4(frequencyhz, duty); -} - -void set_pwm_modbul_freq_duty2(uint32_t frequencyhz, double duty) { - // s_target_frequencyhz = frequencyhz; - - // if (s_target_frequencyhz <= MIN_PWM_FREQ) { - // s_target_frequencyhz = MIN_PWM_FREQ; - // } - // s_target_duty = duty; - if (frequencyhz < 50) frequencyhz = 50; - set_pwm_t16_pa4(frequencyhz, duty); -} - -void stop_pwm_output() { T16Nx_Disable(T16N0); } -#endif \ No newline at end of file diff --git a/APP/pwm.h b/APP/pwm.h deleted file mode 100644 index 78a51de..0000000 --- a/APP/pwm.h +++ /dev/null @@ -1,19 +0,0 @@ -#ifndef _PWM_MODULE_H_ -#define _PWM_MODULE_H_ - -#include "lib_config.h" -#include "light.h" -#include "port.h" -#include "system_ES8P5066.h" - -void set_pwm_modbul_freq_duty(uint32_t frequencyhz, uint32_t duty); -void set_pwm_mat2(uint16_t mat2); -void set_pwm_modbul_freq_duty2(uint32_t frequencyhz, double duty); - -void stop_pwm_output(); - -void t16_pa4_init(void); - - - -#endif diff --git a/APP/light.c b/APP/service/light_control_service.c similarity index 96% rename from APP/light.c rename to APP/service/light_control_service.c index 7e5a6c8..33b8db1 100644 --- a/APP/light.c +++ b/APP/service/light_control_service.c @@ -1,164 +1,165 @@ -#include "light.h" -#if 0 -static bool s_interval_working_mode; -static rgb_light_mode_t s_rgb_now_state; -static rgb_light_mode_t s_rgb_light_mode_config; -static int s_errornum = 0; -static bool s_errorlight_display_state; -static bool s_autoshutdown_light_state; -/** - * @brief 设置灯的模式,高低中分别亮不同颜色的灯 - * 高档红色,中档蓝色,低档绿色 - */ -static void prv_light_module_set_rgb_mode(rgb_light_mode_t mode) { - if (mode == krgb_color_red) { - port_led_r_set(true); - port_led_g_set(false); - port_led_b_set(false); - } else if (mode == krgb_color_blue) { - port_led_r_set(false); - port_led_g_set(false); - port_led_b_set(true); - } else if (mode == krgb_color_green) { - port_led_r_set(false); - port_led_b_set(false); - port_led_g_set(true); - } else if (mode == krgb_close) { - port_led_r_set(false); - port_led_g_set(false); - port_led_b_set(false); - } - s_rgb_now_state = mode; -} - -static void prv_set_timing_light_mode(int mode) { - if (mode == 1) { - port_led0_set(true); - port_led1_set(false); - port_led2_set(false); - port_led3_set(false); - } else if (mode == 2) { - port_led0_set(true); - port_led1_set(true); - port_led2_set(false); - port_led3_set(false); - } else if (mode == 3) { - port_led0_set(true); - port_led1_set(true); - port_led2_set(true); - port_led3_set(false); - } else if (mode == 4) { - port_led0_set(true); - port_led1_set(true); - port_led2_set(true); - port_led3_set(true); - } else if (mode == 0) { - port_led0_set(false); - port_led1_set(false); - port_led2_set(false); - port_led3_set(false); - } -} - -void prv_light_module_rgb_light_control_schedule() { - if (s_rgb_light_mode_config == krgb_close) { - prv_light_module_set_rgb_mode(krgb_close); - return; - } - if (!s_interval_working_mode) { - prv_light_module_set_rgb_mode(s_rgb_light_mode_config); - return; - } - - /** - * @brief 是否处于间歇模式 - */ - if (s_interval_working_mode) { - if (hook_get_ozone_generator_working_flag()) { - static uint32_t rgb_flicker_ticket = 0; - static uint8_t rgb_ticket_count = 0; - if (port_haspassedms(rgb_flicker_ticket) > 1000) { - rgb_flicker_ticket = get_sys_ticket(); - if (s_rgb_now_state == krgb_close) { - prv_light_module_set_rgb_mode(s_rgb_light_mode_config); - } else { - prv_light_module_set_rgb_mode(krgb_close); - } - } - } else { - prv_light_module_set_rgb_mode(krgb_color_green); - } - } -} - -/** - * @brief 倒计时指示灯状态控制 - */ -static void prv_time_light_control_schedule() { - if (s_autoshutdown_light_state) { - /** - * @brief 显示自动关机倒计时指示灯 - */ - int lightnum = hook_get_autoshutdown_timecount() / AUTO_SHUTDOWN_ONE_LIGHT_EQ_TIME_S; - int lightnum_remainder = hook_get_autoshutdown_timecount() % AUTO_SHUTDOWN_ONE_LIGHT_EQ_TIME_S; - if (lightnum_remainder != 0) { - lightnum += 1; - } - - prv_set_timing_light_mode(lightnum); - } else if (s_errorlight_display_state) { - /** - * @brief 显示异常指示灯 - */ - static uint32_t ticket = 0; - static bool state; - if (port_haspassedms(ticket) > 300) { - ticket = get_sys_ticket(); - state = !state; - if (state) { - prv_set_timing_light_mode(s_errornum); - } else { - prv_set_timing_light_mode(0); - } - } - } else { - prv_set_timing_light_mode(0); - } -} - -/*********************************************************************************************************************** - * ======================================================Extern======================================================= * - ***********************************************************************************************************************/ - -void light_module_set_rgb_mode(rgb_light_mode_t mode) { - printf("light_module_set_rgb_mode %d\n", mode); - s_rgb_light_mode_config = mode; - prv_light_module_set_rgb_mode(mode); -} - -void light_module_set_rgb_in_interval_working_mode(bool state) { - printf("light_module_set_rgb_in_interval_working_mode %d\n", state); - s_interval_working_mode = state; -} -void light_module_set_autoshutdown_indicator_light(bool open) { s_autoshutdown_light_state = open; } -void light_module_set_error_light_mode(bool open, uint8_t error_mode) { - printf("light_module_set_error_light_mode %d\n", error_mode); - s_errorlight_display_state = open; - s_errornum = error_mode; -} -void light_module_close_all_light(void) { - printf("light_module_close_all_light\n"); - light_module_set_rgb_mode(krgb_close); - light_module_set_autoshutdown_indicator_light(false); - light_module_set_rgb_in_interval_working_mode(false); - prv_set_timing_light_mode(0); - s_errornum = 0; - s_interval_working_mode = false; - s_autoshutdown_light_state = false; - s_errorlight_display_state = false; -} -void light_module_schedule(void) { - prv_light_module_rgb_light_control_schedule(); - prv_time_light_control_schedule(); -} + +#if 0 +#include "light.h" +static bool s_interval_working_mode; +static rgb_light_mode_t s_rgb_now_state; +static rgb_light_mode_t s_rgb_light_mode_config; +static int s_errornum = 0; +static bool s_errorlight_display_state; +static bool s_autoshutdown_light_state; +/** + * @brief 设置灯的模式,高低中分别亮不同颜色的灯 + * 高档红色,中档蓝色,低档绿色 + */ +static void prv_light_module_set_rgb_mode(rgb_light_mode_t mode) { + if (mode == krgb_color_red) { + port_led_r_set(true); + port_led_g_set(false); + port_led_b_set(false); + } else if (mode == krgb_color_blue) { + port_led_r_set(false); + port_led_g_set(false); + port_led_b_set(true); + } else if (mode == krgb_color_green) { + port_led_r_set(false); + port_led_b_set(false); + port_led_g_set(true); + } else if (mode == krgb_close) { + port_led_r_set(false); + port_led_g_set(false); + port_led_b_set(false); + } + s_rgb_now_state = mode; +} + +static void prv_set_timing_light_mode(int mode) { + if (mode == 1) { + port_led0_set(true); + port_led1_set(false); + port_led2_set(false); + port_led3_set(false); + } else if (mode == 2) { + port_led0_set(true); + port_led1_set(true); + port_led2_set(false); + port_led3_set(false); + } else if (mode == 3) { + port_led0_set(true); + port_led1_set(true); + port_led2_set(true); + port_led3_set(false); + } else if (mode == 4) { + port_led0_set(true); + port_led1_set(true); + port_led2_set(true); + port_led3_set(true); + } else if (mode == 0) { + port_led0_set(false); + port_led1_set(false); + port_led2_set(false); + port_led3_set(false); + } +} + +void prv_light_module_rgb_light_control_schedule() { + if (s_rgb_light_mode_config == krgb_close) { + prv_light_module_set_rgb_mode(krgb_close); + return; + } + if (!s_interval_working_mode) { + prv_light_module_set_rgb_mode(s_rgb_light_mode_config); + return; + } + + /** + * @brief 是否处于间歇模式 + */ + if (s_interval_working_mode) { + if (hook_get_ozone_generator_working_flag()) { + static uint32_t rgb_flicker_ticket = 0; + static uint8_t rgb_ticket_count = 0; + if (port_haspassedms(rgb_flicker_ticket) > 1000) { + rgb_flicker_ticket = get_sys_ticket(); + if (s_rgb_now_state == krgb_close) { + prv_light_module_set_rgb_mode(s_rgb_light_mode_config); + } else { + prv_light_module_set_rgb_mode(krgb_close); + } + } + } else { + prv_light_module_set_rgb_mode(krgb_color_green); + } + } +} + +/** + * @brief 倒计时指示灯状态控制 + */ +static void prv_time_light_control_schedule() { + if (s_autoshutdown_light_state) { + /** + * @brief 显示自动关机倒计时指示灯 + */ + int lightnum = hook_get_autoshutdown_timecount() / AUTO_SHUTDOWN_ONE_LIGHT_EQ_TIME_S; + int lightnum_remainder = hook_get_autoshutdown_timecount() % AUTO_SHUTDOWN_ONE_LIGHT_EQ_TIME_S; + if (lightnum_remainder != 0) { + lightnum += 1; + } + + prv_set_timing_light_mode(lightnum); + } else if (s_errorlight_display_state) { + /** + * @brief 显示异常指示灯 + */ + static uint32_t ticket = 0; + static bool state; + if (port_haspassedms(ticket) > 300) { + ticket = get_sys_ticket(); + state = !state; + if (state) { + prv_set_timing_light_mode(s_errornum); + } else { + prv_set_timing_light_mode(0); + } + } + } else { + prv_set_timing_light_mode(0); + } +} + +/*********************************************************************************************************************** + * ======================================================Extern======================================================= * + ***********************************************************************************************************************/ + +void light_module_set_rgb_mode(rgb_light_mode_t mode) { + printf("light_module_set_rgb_mode %d\n", mode); + s_rgb_light_mode_config = mode; + prv_light_module_set_rgb_mode(mode); +} + +void light_module_set_rgb_in_interval_working_mode(bool state) { + printf("light_module_set_rgb_in_interval_working_mode %d\n", state); + s_interval_working_mode = state; +} +void light_module_set_autoshutdown_indicator_light(bool open) { s_autoshutdown_light_state = open; } +void light_module_set_error_light_mode(bool open, uint8_t error_mode) { + printf("light_module_set_error_light_mode %d\n", error_mode); + s_errorlight_display_state = open; + s_errornum = error_mode; +} +void light_module_close_all_light(void) { + printf("light_module_close_all_light\n"); + light_module_set_rgb_mode(krgb_close); + light_module_set_autoshutdown_indicator_light(false); + light_module_set_rgb_in_interval_working_mode(false); + prv_set_timing_light_mode(0); + s_errornum = 0; + s_interval_working_mode = false; + s_autoshutdown_light_state = false; + s_errorlight_display_state = false; +} +void light_module_schedule(void) { + prv_light_module_rgb_light_control_schedule(); + prv_time_light_control_schedule(); +} #endif \ No newline at end of file diff --git a/APP/service/light_control_service.h b/APP/service/light_control_service.h new file mode 100644 index 0000000..e69de29 diff --git a/APP/ozone_pwm_control.c b/APP/service/ozone_control_service.c similarity index 97% rename from APP/ozone_pwm_control.c rename to APP/service/ozone_control_service.c index aa2f368..7d17dd8 100644 --- a/APP/ozone_pwm_control.c +++ b/APP/service/ozone_control_service.c @@ -1,82 +1,82 @@ -#if 0 -#include "ozone_pwm_control.h" -#include "pwm.h" -static bool s_ozone_pwm_control_enable_falg = false; -static bool s_pwm_modble_hardware_control_flag; //硬件pwm使能标志位 - -static uint32_t s_hardware_frequency; // hz -static uint32_t s_hardware_duty; //单位ms,保存现在的PWM占空比 -static uint32_t s_large_period; //单位ms,保存现在的定时周期 -static uint32_t s_large_duty = 100; //单位ms,保存现在的定时占空比 -static uint32_t begin_ticket; - -static void prv_pwm_module_set_pwm_duty(uint32_t frequencyhz, uint32_t duty) { - set_pwm_modbul_freq_duty(frequencyhz, duty); - s_pwm_modble_hardware_control_flag = true; -} -static void prv_pwm_stop(void) { - set_pwm_modbul_freq_duty(s_hardware_frequency, 0); //关闭PWM输出 - s_pwm_modble_hardware_control_flag = false; -} -static bool prv_pwm_is_enable(void) { return s_pwm_modble_hardware_control_flag; } -static void prv_update_begin_ticket(void) { - begin_ticket = get_sys_ticket(); //更新大周期的开始时间(间歇时间的开始的时间) -} - - -bool ozone_pwm_control_is_enable(void) { return s_ozone_pwm_control_enable_falg; } -bool ozone_pwm_control_hardware_is_enable(void) { return s_pwm_modble_hardware_control_flag; } - -/** - * @brief 一直工作的时间定时的占空比为100, - * 间歇时间设置300000 - * @param freq - * @param duty - */ -void ozone_pwm_control_module_set_pwm_output_1(uint32_t freqhz, uint8_t hardware_duty) { - ozone_pwm_control_module_set_pwm_output_2(freqhz, hardware_duty, 100 * 1000, 100); -} -/** - * @brief 定时和PWM - * - * @param hardware_period pwm频率 - * @param hardware_duty pwm占空比 - * @param large_period 定时周期 - * @param large_duty 定时占空比 - */ -void ozone_pwm_control_module_set_pwm_output_2(uint32_t freqhz, uint8_t hardware_duty, uint32_t large_period, uint8_t large_duty) { - s_hardware_frequency = freqhz; - s_hardware_duty = hardware_duty; - s_large_period = large_period; - s_large_duty = large_duty; - prv_update_begin_ticket(); - s_ozone_pwm_control_enable_falg = true; - prv_pwm_module_set_pwm_duty(freqhz, hardware_duty); -} - -void ozone_pwm_control_module_stop_pwm(void) { s_ozone_pwm_control_enable_falg = false; } - -void ozone_pwm_control_module_loop(void) { - static uint32_t hardware_frequency; - static uint32_t hardware_duty; - if (ozone_pwm_control_is_enable() == false) { //没有使能直接退出 - if (prv_pwm_is_enable()) { - prv_pwm_stop(); - } - return; - } - if (port_haspassedms(begin_ticket) % s_large_period <= s_large_period * s_large_duty / 100) { - if (!prv_pwm_is_enable()) { - printf("set work\r\n"); - prv_pwm_module_set_pwm_duty(hardware_frequency, hardware_duty); - } - } else { - if (prv_pwm_is_enable()) { - printf("set rest\r\n"); - hardware_frequency = s_hardware_frequency; //将关闭之前的频率进行保存 - hardware_duty = s_hardware_duty; //将关闭之前的占空比进行保存 - prv_pwm_stop(); - } - } -} +#if 0 +#include "ozone_pwm_control.h" +#include "pwm.h" +static bool s_ozone_pwm_control_enable_falg = false; +static bool s_pwm_modble_hardware_control_flag; //硬件pwm使能标志位 + +static uint32_t s_hardware_frequency; // hz +static uint32_t s_hardware_duty; //单位ms,保存现在的PWM占空比 +static uint32_t s_large_period; //单位ms,保存现在的定时周期 +static uint32_t s_large_duty = 100; //单位ms,保存现在的定时占空比 +static uint32_t begin_ticket; + +static void prv_pwm_module_set_pwm_duty(uint32_t frequencyhz, uint32_t duty) { + set_pwm_modbul_freq_duty(frequencyhz, duty); + s_pwm_modble_hardware_control_flag = true; +} +static void prv_pwm_stop(void) { + set_pwm_modbul_freq_duty(s_hardware_frequency, 0); //关闭PWM输出 + s_pwm_modble_hardware_control_flag = false; +} +static bool prv_pwm_is_enable(void) { return s_pwm_modble_hardware_control_flag; } +static void prv_update_begin_ticket(void) { + begin_ticket = get_sys_ticket(); //更新大周期的开始时间(间歇时间的开始的时间) +} + + +bool ozone_pwm_control_is_enable(void) { return s_ozone_pwm_control_enable_falg; } +bool ozone_pwm_control_hardware_is_enable(void) { return s_pwm_modble_hardware_control_flag; } + +/** + * @brief 一直工作的时间定时的占空比为100, + * 间歇时间设置300000 + * @param freq + * @param duty + */ +void ozone_pwm_control_module_set_pwm_output_1(uint32_t freqhz, uint8_t hardware_duty) { + ozone_pwm_control_module_set_pwm_output_2(freqhz, hardware_duty, 100 * 1000, 100); +} +/** + * @brief 定时和PWM + * + * @param hardware_period pwm频率 + * @param hardware_duty pwm占空比 + * @param large_period 定时周期 + * @param large_duty 定时占空比 + */ +void ozone_pwm_control_module_set_pwm_output_2(uint32_t freqhz, uint8_t hardware_duty, uint32_t large_period, uint8_t large_duty) { + s_hardware_frequency = freqhz; + s_hardware_duty = hardware_duty; + s_large_period = large_period; + s_large_duty = large_duty; + prv_update_begin_ticket(); + s_ozone_pwm_control_enable_falg = true; + prv_pwm_module_set_pwm_duty(freqhz, hardware_duty); +} + +void ozone_pwm_control_module_stop_pwm(void) { s_ozone_pwm_control_enable_falg = false; } + +void ozone_pwm_control_module_loop(void) { + static uint32_t hardware_frequency; + static uint32_t hardware_duty; + if (ozone_pwm_control_is_enable() == false) { //没有使能直接退出 + if (prv_pwm_is_enable()) { + prv_pwm_stop(); + } + return; + } + if (port_haspassedms(begin_ticket) % s_large_period <= s_large_period * s_large_duty / 100) { + if (!prv_pwm_is_enable()) { + printf("set work\r\n"); + prv_pwm_module_set_pwm_duty(hardware_frequency, hardware_duty); + } + } else { + if (prv_pwm_is_enable()) { + printf("set rest\r\n"); + hardware_frequency = s_hardware_frequency; //将关闭之前的频率进行保存 + hardware_duty = s_hardware_duty; //将关闭之前的占空比进行保存 + prv_pwm_stop(); + } + } +} #endif \ No newline at end of file diff --git a/APP/service/ozone_control_service.h b/APP/service/ozone_control_service.h new file mode 100644 index 0000000..e69de29 diff --git a/MDK_StartUp/startup_ES8P5066.s b/MDK_StartUp/startup_ES8P5066.s deleted file mode 100644 index 53daa25..0000000 --- a/MDK_StartUp/startup_ES8P5066.s +++ /dev/null @@ -1,218 +0,0 @@ -;******************************************************************************* - -; *author : Eastsoft MCU Software Team -; *version : V0.01 -; *data : 5/28/2021 -; -; *Copyright (C) 2021 Shanghai Eastsoft Microelectronics Co., Ltd. -; * -; * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED -; * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF -; * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. -; * ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR -; * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. -;******************************************************************************* - - -; Stack Configuration -; Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> -; - -Stack_Size EQU 0x00000400 - - AREA STACK, NOINIT, READWRITE, ALIGN=3 -Stack_Mem SPACE Stack_Size -__initial_sp - - -; Heap Configuration -; Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> -; - -Heap_Size EQU 0x00000000 - - AREA HEAP, NOINIT, READWRITE, ALIGN=3 -__heap_base -Heap_Mem SPACE Heap_Size -__heap_limit - - PRESERVE8 - THUMB - -; Vector Table Mapped to Address 0 at Reset - - AREA RESET, DATA, READONLY - EXPORT __Vectors - -__Vectors DCD __initial_sp ;0, Top of Stack - DCD Reset_IRQHandler ;1, Reset Handler - DCD NMI_IRQHandler ;2, NMI Handler - DCD HardFault_IRQHandler ;3, HardFault Handler - DCD 0 ;4, Reserved - DCD 0 ;5, Reserved - DCD 0 ;6, Reserved - DCD 0 ;7, Reserved - DCD 0 ;8, Reserved - DCD 0 ;9, Reserved - DCD 0 ;10, Reserved - DCD SVC_IRQHandler ;11, SVCall Handler - DCD 0 ;12, Reserved - DCD 0 ;13, Reserved - DCD PendSV_IRQHandler ;14, PendSV Handler - DCD SysTick_IRQHandler ;15, SysTick Handler - - ; External Interrupts - DCD PINT0_IRQHandler ;16, PINT0 IRQHandler - DCD PINT1_IRQHandler ;17, PINT1 IRQHandler - DCD PINT2_IRQHandler ;18, PINT2 IRQHandler - DCD PINT3_IRQHandler ;19, PINT3 IRQHandler - DCD PINT4_IRQHandler ;20, PINT4 IRQHandler - DCD PINT5_IRQHandler ;21, PINT5 IRQHandler - DCD PINT6_IRQHandler ;22, PINT6 IRQHandler - DCD PINT7_IRQHandler ;23, PINT7 IRQHandler - DCD T16N0_IRQHandler ;24, T16N0 IRQHandler - DCD T16N1_IRQHandler ;25, T16N1 IRQHandler - DCD T16N2_IRQHandler ;26, T16N2 IRQHandler - DCD T16N3_IRQHandler ;27, T16N3 IRQHandler - DCD T32N0_IRQHandler ;28, T32N0 IRQHandler - DCD 0 ;29, Reserved - DCD 0 ;30, Reserved - DCD WWDT_IRQHandler ;31, WWDT IRQHandler - DCD IWDT_IRQHandler ;32, IWDT IRQHandler - DCD 0 ;33, Reserved - DCD KINT_IRQHandler ;34, KINT IRQHandler - DCD ADC_IRQHandler ;35, ADC IRQHandler - DCD 0 ;36, Reserved - DCD LVD_IRQHandler ;37, LVD IRQHandler - DCD 0 ;38, Reserved - DCD UART0_IRQHandler ;39, UART0 IRQHandler - DCD UART1_IRQHandler ;40, UART1 IRQHandler - DCD UART2_IRQHandler ;41, UART2 IRQHandler - DCD 0 ;42, Reserved - DCD 0 ;43, Reserved - DCD SPI1_IRQHandler ;44, SPI1 IRQHandler - DCD I2C0_IRQHandler ;45, I2C0 IRQHandler - DCD 0 ;46, Reserved - DCD CCM_IRQHandler ;47, CCM IRQHandler - - AREA |.text|, CODE, READONLY - -; Reset Handler - -Reset_IRQHandler PROC - EXPORT Reset_IRQHandler [WEAK] - IMPORT __main - IMPORT SystemInit - LDR R0, =SystemInit - BLX R0 - LDR R0, =__main - BX R0 - ENDP - -; Dummy Exception IRQHandlers (infinite loops which can be modified) - -NMI_IRQHandler PROC - EXPORT NMI_IRQHandler [WEAK] - B . - ENDP -HardFault_IRQHandler PROC - EXPORT HardFault_IRQHandler [WEAK] - B . - ENDP -SVC_IRQHandler PROC - EXPORT SVC_IRQHandler [WEAK] - B . - ENDP -PendSV_IRQHandler PROC - EXPORT PendSV_IRQHandler [WEAK] - B . - ENDP -SysTick_IRQHandler PROC - EXPORT SysTick_IRQHandler [WEAK] - B . - ENDP - -Default_IRQHandler PROC - EXPORT PINT0_IRQHandler [WEAK] - EXPORT PINT1_IRQHandler [WEAK] - EXPORT PINT2_IRQHandler [WEAK] - EXPORT PINT3_IRQHandler [WEAK] - EXPORT PINT4_IRQHandler [WEAK] - EXPORT PINT5_IRQHandler [WEAK] - EXPORT PINT6_IRQHandler [WEAK] - EXPORT PINT7_IRQHandler [WEAK] - EXPORT T16N0_IRQHandler [WEAK] - EXPORT T16N1_IRQHandler [WEAK] - EXPORT T16N2_IRQHandler [WEAK] - EXPORT T16N3_IRQHandler [WEAK] - EXPORT T32N0_IRQHandler [WEAK] - EXPORT WWDT_IRQHandler [WEAK] - EXPORT IWDT_IRQHandler [WEAK] - EXPORT RTC_IRQHandler [WEAK] - EXPORT KINT_IRQHandler [WEAK] - EXPORT ADC_IRQHandler [WEAK] - EXPORT LVD_IRQHandler [WEAK] - EXPORT UART0_IRQHandler [WEAK] - EXPORT UART1_IRQHandler [WEAK] - EXPORT UART2_IRQHandler [WEAK] - EXPORT SPI1_IRQHandler [WEAK] - EXPORT I2C0_IRQHandler [WEAK] - EXPORT CCM_IRQHandler [WEAK] - -PINT0_IRQHandler -PINT1_IRQHandler -PINT2_IRQHandler -PINT3_IRQHandler -PINT4_IRQHandler -PINT5_IRQHandler -PINT6_IRQHandler -PINT7_IRQHandler -T16N0_IRQHandler -T16N1_IRQHandler -T16N2_IRQHandler -T16N3_IRQHandler -T32N0_IRQHandler -WWDT_IRQHandler -IWDT_IRQHandler -RTC_IRQHandler -KINT_IRQHandler -ADC_IRQHandler -LVD_IRQHandler -UART0_IRQHandler -UART1_IRQHandler -UART2_IRQHandler -SPI1_IRQHandler -I2C0_IRQHandler -CCM_IRQHandler - - B . - - ENDP - - ALIGN - -; User Initial Stack & Heap - - IF :DEF:__MICROLIB - - EXPORT __initial_sp - EXPORT __heap_base - EXPORT __heap_limit - - ELSE - - IMPORT __use_two_region_memory - EXPORT __user_initial_stackheap -__user_initial_stackheap - - LDR R0, = Heap_Mem - LDR R1, =(Stack_Mem + Stack_Size) - LDR R2, = (Heap_Mem + Heap_Size) - LDR R3, = Stack_Mem - BX LR - - ALIGN - - ENDIF - - END diff --git a/project_ozone/Listings/project_o.map b/project_ozone/Listings/project_o.map index 7bc5296..518d01f 100644 --- a/project_ozone/Listings/project_o.map +++ b/project_ozone/Listings/project_o.map @@ -4,28 +4,30 @@ Component: ARM Compiler 5.06 update 7 (build 960) Tool: armlink [4d3601] Section Cross References + main.o(i.init_all_subdevice_state) refers to port.o(i.port_debug_set) for port_debug_set + main.o(i.init_all_subdevice_state) refers to port.o(i.port_fan_set) for port_fan_set + main.o(i.init_all_subdevice_state) refers to port.o(i.port_led0_set) for port_led0_set + main.o(i.init_all_subdevice_state) refers to port.o(i.port_led1_set) for port_led1_set + main.o(i.init_all_subdevice_state) refers to port.o(i.port_led2_set) for port_led2_set + main.o(i.init_all_subdevice_state) refers to port.o(i.port_led3_set) for port_led3_set + main.o(i.init_all_subdevice_state) refers to port.o(i.port_led_r_set) for port_led_r_set + main.o(i.init_all_subdevice_state) refers to port.o(i.port_led_g_set) for port_led_g_set + main.o(i.init_all_subdevice_state) refers to port.o(i.port_led_b_set) for port_led_b_set main.o(i.main) refers to system_es8p5066.o(i.SystemInit) for SystemInit main.o(i.main) refers to lib_scu.o(i.DeviceClockAllEnable) for DeviceClockAllEnable main.o(i.main) refers to systicket.o(i.systicket_init) for systicket_init main.o(i.main) refers to gpio.o(i.zgpio_init_all_gpio) for zgpio_init_all_gpio main.o(i.main) refers to port.o(i.port_init) for port_init main.o(i.main) refers to printfa.o(i.__0printf) for __2printf - main.o(i.main) refers to key_1.o(i.zkey_init) for zkey_init - main.o(i.main) refers to port.o(i.port_debug_set) for port_debug_set + main.o(i.main) refers to key.o(i.zkey_init) for zkey_init + main.o(i.main) refers to main.o(i.init_all_subdevice_state) for init_all_subdevice_state main.o(i.main) refers to port.o(i.port_fan_set) for port_fan_set - main.o(i.main) refers to port.o(i.port_led0_set) for port_led0_set - main.o(i.main) refers to port.o(i.port_led1_set) for port_led1_set - main.o(i.main) refers to port.o(i.port_led2_set) for port_led2_set - main.o(i.main) refers to port.o(i.port_led3_set) for port_led3_set - main.o(i.main) refers to port.o(i.port_led_r_set) for port_led_r_set - main.o(i.main) refers to port.o(i.port_led_g_set) for port_led_g_set - main.o(i.main) refers to port.o(i.port_led_b_set) for port_led_b_set main.o(i.main) refers to port.o(i.port_ozone_pwm_set_duty) for port_ozone_pwm_set_duty main.o(i.main) refers to port.o(i.port_ozone_pwm_start) for port_ozone_pwm_start main.o(i.main) refers to main.o(i.systicket_do_debug_light_state) for systicket_do_debug_light_state main.o(i.main) refers to systicket.o(i.systicket_haspassedms) for systicket_haspassedms main.o(i.main) refers to systicket.o(i.systicket_get_now_ms) for systicket_get_now_ms - main.o(i.main) refers to key_1.o(i.zkey_do_loop_in_each_period) for zkey_do_loop_in_each_period + main.o(i.main) refers to key.o(i.zkey_do_loop_in_each_period) for zkey_do_loop_in_each_period main.o(i.main) refers to port.o(i.port_adc_get_ozone_generator_power) for port_adc_get_ozone_generator_power main.o(i.main) refers to f2d.o(.text) for __aeabi_f2d main.o(i.main) refers to port.o(i.port_adc_get_fan_power) for port_adc_get_fan_power @@ -43,16 +45,16 @@ Section Cross References main.o(.data) refers to port.o(i.port_gpio_get_timer_key_state) for port_gpio_get_timer_key_state main.o(.data) refers to port.o(i.port_gpio_get_interval_key_state) for port_gpio_get_interval_key_state main.o(.data) refers to main.o(i.onkey) for onkey - port.o(i.port_adc_get_fan_power) refers to adc_1.o(i.adc_get_voltage) for adc_get_voltage + port.o(i.port_adc_get_fan_power) refers to adc.o(i.adc_get_voltage) for adc_get_voltage port.o(i.port_adc_get_fan_power) refers to fdiv.o(.text) for __aeabi_fdiv port.o(i.port_adc_get_fan_power) refers to fmul.o(.text) for __aeabi_fmul - port.o(i.port_adc_get_fan_voltage) refers to adc_1.o(i.adc_get_voltage) for adc_get_voltage - port.o(i.port_adc_get_ozone_generator_power) refers to adc_1.o(i.adc_get_voltage) for adc_get_voltage + port.o(i.port_adc_get_fan_voltage) refers to adc.o(i.adc_get_voltage) for adc_get_voltage + port.o(i.port_adc_get_ozone_generator_power) refers to adc.o(i.adc_get_voltage) for adc_get_voltage port.o(i.port_adc_get_ozone_generator_power) refers to fmul.o(.text) for __aeabi_fmul port.o(i.port_adc_get_ozone_generator_power) refers to f2d.o(.text) for __aeabi_f2d port.o(i.port_adc_get_ozone_generator_power) refers to ddiv.o(.text) for __aeabi_ddiv port.o(i.port_adc_get_ozone_generator_power) refers to d2f.o(.text) for __aeabi_d2f - port.o(i.port_adc_get_ozone_generator_voltage) refers to adc_1.o(i.adc_get_voltage) for adc_get_voltage + port.o(i.port_adc_get_ozone_generator_voltage) refers to adc.o(i.adc_get_voltage) for adc_get_voltage port.o(i.port_debug_set) refers to lib_gpio.o(i.GPIO_WriteBit) for GPIO_WriteBit port.o(i.port_fan_get) refers to lib_gpio.o(i.GPIO_ReadBit) for GPIO_ReadBit port.o(i.port_fan_set) refers to port.o(i.port_fan_get) for port_fan_get @@ -66,9 +68,9 @@ Section Cross References port.o(i.port_init) refers to gpio.o(i.zgpio_get_default_ode_output_config) for zgpio_get_default_ode_output_config port.o(i.port_init) refers to gpio.o(i.zgpio_get_default_input_config) for zgpio_get_default_input_config port.o(i.port_init) refers to gpio.o(i.zgpio_init_as_input) for zgpio_init_as_input - port.o(i.port_init) refers to uart0_1.o(i.uart0_init) for uart0_init - port.o(i.port_init) refers to adc_1.o(i.adc_pin_init) for adc_pin_init - port.o(i.port_init) refers to adc_1.o(i.adc_module_init) for adc_module_init + port.o(i.port_init) refers to uart0.o(i.uart0_init) for uart0_init + port.o(i.port_init) refers to adc.o(i.adc_pin_init) for adc_pin_init + port.o(i.port_init) refers to adc.o(i.adc_module_init) for adc_module_init port.o(i.port_init) refers to pwm_1.o(i.zpwm_init) for zpwm_init port.o(i.port_init) refers to port.o(.bss) for g_ozonepwm port.o(i.port_led0_get_state) refers to lib_gpio.o(i.GPIO_ReadBit) for GPIO_ReadBit @@ -100,44 +102,14 @@ Section Cross References test.o(i.test_all_light) refers to port.o(i.port_led_g_set) for port_led_g_set test.o(i.test_all_light) refers to port.o(i.port_led_b_set) for port_led_b_set test.o(i.test_all_light) refers to test.o(.data) for lastprocess - pwm.o(i.calculate_top) refers to dflti.o(.text) for __aeabi_i2d - pwm.o(i.calculate_top) refers to ddiv.o(.text) for __aeabi_ddiv - pwm.o(i.calculate_top) refers to dfixi.o(.text) for __aeabi_d2iz - pwm.o(i.getCNT) refers to lib_timer.o(i.T16Nx_GetCNT1) for T16Nx_GetCNT1 - pwm.o(i.getTOP) refers to lib_timer.o(i.T16Nx_GetTOP1) for T16Nx_GetTOP1 - pwm.o(i.set_pwm_mat2) refers to pwm.o(i.set_pwm_t16_pa4_2) for set_pwm_t16_pa4_2 - pwm.o(i.set_pwm_mat2) refers to pwm.o(.data) for s_top - pwm.o(i.set_pwm_modbul_freq_duty) refers to dfltui.o(.text) for __aeabi_ui2d - pwm.o(i.set_pwm_modbul_freq_duty) refers to pwm.o(i.set_pwm_t16_pa4) for set_pwm_t16_pa4 - pwm.o(i.set_pwm_modbul_freq_duty2) refers to pwm.o(i.set_pwm_t16_pa4) for set_pwm_t16_pa4 - pwm.o(i.set_pwm_t16_pa4) refers to dfltui.o(.text) for __aeabi_ui2d - pwm.o(i.set_pwm_t16_pa4) refers to pwm.o(i.calculate_top) for calculate_top - pwm.o(i.set_pwm_t16_pa4) refers to dfixui.o(.text) for __aeabi_d2uiz - pwm.o(i.set_pwm_t16_pa4) refers to ddiv.o(.text) for __aeabi_ddiv - pwm.o(i.set_pwm_t16_pa4) refers to dmul.o(.text) for __aeabi_dmul - pwm.o(i.set_pwm_t16_pa4) refers to pwm.o(i.set_pwm_t16_pa4_2) for set_pwm_t16_pa4_2 - pwm.o(i.set_pwm_t16_pa4_2) refers to lib_timer.o(i.T16Nx_SetCNT1) for T16Nx_SetCNT1 - pwm.o(i.set_pwm_t16_pa4_2) refers to lib_timer.o(i.T16Nx_SetMAT2) for T16Nx_SetMAT2 - pwm.o(i.set_pwm_t16_pa4_2) refers to lib_timer.o(i.T16Nx_SetMAT3) for T16Nx_SetMAT3 - pwm.o(i.set_pwm_t16_pa4_2) refers to lib_timer.o(i.T16Nx_SetTOP1) for T16Nx_SetTOP1 - pwm.o(i.set_pwm_t16_pa4_2) refers to pwm.o(.data) for s_mat2 - pwm.o(i.stop_pwm_output) refers to lib_timer.o(i.T16Nx_Disable) for T16Nx_Disable - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_Disable) for T16Nx_Disable - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_BaseInit) for T16Nx_BaseInit - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_PMWOutInit) for T16Nx_PMWOutInit - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_MAT2ITConfig) for T16Nx_MAT2ITConfig - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_MAT3ITConfig) for T16Nx_MAT3ITConfig - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_MAT2Out1Config) for T16Nx_MAT2Out1Config - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_MAT3Out1Config) for T16Nx_MAT3Out1Config - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_SetCNT1) for T16Nx_SetCNT1 - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_SetMAT2) for T16Nx_SetMAT2 - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_SetMAT3) for T16Nx_SetMAT3 - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_SetTOP1) for T16Nx_SetTOP1 - pwm.o(i.t16_pa4_init) refers to lib_gpio.o(i.GPIO_Init) for GPIO_Init - pwm.o(i.t16_pa4_init) refers to lib_timer.o(i.T16Nx_Enable) for T16Nx_Enable system_es8p5066.o(i.SystemInit) refers to lib_scu.o(i.HRC_Config) for HRC_Config system_es8p5066.o(i.SystemInit) refers to lib_scu.o(i.SCU_SysClkSelect) for SCU_SysClkSelect system_es8p5066.o(i.SystemInit) refers to system_es8p5066.o(.data) for SystemCoreClock + startup_es8p5066.o(RESET) refers to startup_es8p5066.o(STACK) for __initial_sp + startup_es8p5066.o(RESET) refers to startup_es8p5066.o(.text) for Reset_IRQHandler + startup_es8p5066.o(RESET) refers to systicket.o(i.SysTick_IRQHandler) for SysTick_IRQHandler + startup_es8p5066.o(.text) refers to system_es8p5066.o(i.SystemInit) for SystemInit + startup_es8p5066.o(.text) refers to entry.o(.ARM.Collect$$$$00000000) for __main lib_adc.o(i.ADC_Init) refers to lib_adc.o(i.ADC_Reset) for ADC_Reset lib_gpio.o(i.GPIO_GetNormalBitOffsetFromPin) refers to lib_gpio.o(i.__ARM_common_switch8) for __ARM_common_switch8 lib_gpio.o(i.GPIO_Init) refers to lib_gpio.o(i.GPIO_SetSingalTypeFromPin) for GPIO_SetSingalTypeFromPin @@ -212,35 +184,26 @@ Section Cross References lib_wdt.o(i.IWDT_Init) refers to system_es8p5066.o(.data) for SystemCoreClock lib_wdt.o(i.WWDT_Init) refers to uidiv.o(.text) for __aeabi_uidivmod lib_wdt.o(i.WWDT_Init) refers to system_es8p5066.o(.data) for SystemCoreClock - startup_es8p5066.o(RESET) refers to startup_es8p5066.o(STACK) for __initial_sp - startup_es8p5066.o(RESET) refers to startup_es8p5066.o(.text) for Reset_IRQHandler - startup_es8p5066.o(RESET) refers to irqhandler.o(i.NMI_IRQHandler) for NMI_IRQHandler - startup_es8p5066.o(RESET) refers to irqhandler.o(i.HardFault_IRQHandler) for HardFault_IRQHandler - startup_es8p5066.o(RESET) refers to irqhandler.o(i.SVC_IRQHandler) for SVC_IRQHandler - startup_es8p5066.o(RESET) refers to irqhandler.o(i.PendSV_IRQHandler) for PendSV_IRQHandler - startup_es8p5066.o(RESET) refers to systicket.o(i.SysTick_IRQHandler) for SysTick_IRQHandler - startup_es8p5066.o(.text) refers to system_es8p5066.o(i.SystemInit) for SystemInit - startup_es8p5066.o(.text) refers to entry.o(.ARM.Collect$$$$00000000) for __main - adc_1.o(i.adc_get_chnum) refers to printfa.o(i.__0printf) for __2printf - adc_1.o(i.adc_get_value) refers to adc_1.o(i.adc_get_chnum) for adc_get_chnum - adc_1.o(i.adc_get_value) refers to adc_1.o(i.adc_get_value_by_adcch) for adc_get_value_by_adcch - adc_1.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_Set_CH) for ADC_Set_CH - adc_1.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_SoftStart) for ADC_SoftStart - adc_1.o(i.adc_get_value_by_adcch) refers to systicket.o(i.systicket_delay_ms) for systicket_delay_ms - adc_1.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_SoftStop) for ADC_SoftStop - adc_1.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_GetIFStatus) for ADC_GetIFStatus - adc_1.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_GetConvValue) for ADC_GetConvValue - adc_1.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_ClearIFStatus) for ADC_ClearIFStatus - adc_1.o(i.adc_get_voltage) refers to adc_1.o(i.adc_get_value) for adc_get_value - adc_1.o(i.adc_get_voltage) refers to dfltui.o(.text) for __aeabi_ui2d - adc_1.o(i.adc_get_voltage) refers to dmul.o(.text) for __aeabi_dmul - adc_1.o(i.adc_get_voltage) refers to ddiv.o(.text) for __aeabi_ddiv - adc_1.o(i.adc_get_voltage) refers to d2f.o(.text) for __aeabi_d2f - adc_1.o(i.adc_module_init) refers to lib_adc.o(i.ADC_Init) for ADC_Init - adc_1.o(i.adc_module_init) refers to adc_1.o(.data) for g_default_adc_ch - adc_1.o(i.adc_pin_init) refers to lib_gpio.o(i.GPIO_Init) for GPIO_Init - adc_1.o(i.adc_pin_init) refers to adc_1.o(i.adc_get_chnum) for adc_get_chnum - adc_1.o(i.adc_pin_init) refers to adc_1.o(.data) for g_default_adc_ch + adc.o(i.adc_get_chnum) refers to printfa.o(i.__0printf) for __2printf + adc.o(i.adc_get_value) refers to adc.o(i.adc_get_chnum) for adc_get_chnum + adc.o(i.adc_get_value) refers to adc.o(i.adc_get_value_by_adcch) for adc_get_value_by_adcch + adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_Set_CH) for ADC_Set_CH + adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_SoftStart) for ADC_SoftStart + adc.o(i.adc_get_value_by_adcch) refers to systicket.o(i.systicket_delay_ms) for systicket_delay_ms + adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_SoftStop) for ADC_SoftStop + adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_GetIFStatus) for ADC_GetIFStatus + adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_GetConvValue) for ADC_GetConvValue + adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_ClearIFStatus) for ADC_ClearIFStatus + adc.o(i.adc_get_voltage) refers to adc.o(i.adc_get_value) for adc_get_value + adc.o(i.adc_get_voltage) refers to dfltui.o(.text) for __aeabi_ui2d + adc.o(i.adc_get_voltage) refers to dmul.o(.text) for __aeabi_dmul + adc.o(i.adc_get_voltage) refers to ddiv.o(.text) for __aeabi_ddiv + adc.o(i.adc_get_voltage) refers to d2f.o(.text) for __aeabi_d2f + adc.o(i.adc_module_init) refers to lib_adc.o(i.ADC_Init) for ADC_Init + adc.o(i.adc_module_init) refers to adc.o(.data) for g_default_adc_ch + adc.o(i.adc_pin_init) refers to lib_gpio.o(i.GPIO_Init) for GPIO_Init + adc.o(i.adc_pin_init) refers to adc.o(i.adc_get_chnum) for adc_get_chnum + adc.o(i.adc_pin_init) refers to adc.o(.data) for g_default_adc_ch gpio.o(i.zgpio_get_default_input_config) refers to gpio.o(.data) for default_config gpio.o(i.zgpio_get_default_ode_output_config) refers to gpio.o(.data) for default_config gpio.o(i.zgpio_get_default_output_config) refers to gpio.o(.data) for default_config @@ -255,18 +218,18 @@ Section Cross References systicket.o(i.systicket_init) refers to uidiv.o(.text) for __aeabi_uidivmod systicket.o(i.systicket_init) refers to lib_scs.o(i.SysTick_Init) for SysTick_Init systicket.o(i.systicket_init) refers to system_es8p5066.o(.data) for SystemCoreClock - uart0_1.o(i.uart0_init) refers to uart0_1.o(i.uart0_init_pin) for uart0_init_pin - uart0_1.o(i.uart0_init) refers to lib_uart.o(i.UART_Init) for UART_Init - uart0_1.o(i.uart0_init) refers to lib_uart.o(i.UART_ITConfig) for UART_ITConfig - uart0_1.o(i.uart0_init) refers to lib_uart.o(i.UART_TBIMConfig) for UART_TBIMConfig - uart0_1.o(i.uart0_init) refers to lib_uart.o(i.UART_ClearITPendingBit) for UART_ClearITPendingBit - uart0_1.o(i.uart0_init) refers to lib_scs.o(i.NVIC_Init) for NVIC_Init - uart0_1.o(i.uart0_init_pin) refers to lib_gpio.o(i.GPIO_Init) for GPIO_Init - key_1.o(i.prv_zkey_process_each_after_filter) refers to key_1.o(.data) for s_module - key_1.o(i.zkey_do_loop_in_each_period) refers to key_1.o(i.zkey_process_each) for zkey_process_each - key_1.o(i.zkey_do_loop_in_each_period) refers to key_1.o(.data) for s_inited - key_1.o(i.zkey_init) refers to key_1.o(.data) for s_module - key_1.o(i.zkey_process_each) refers to key_1.o(i.prv_zkey_process_each_after_filter) for prv_zkey_process_each_after_filter + uart0.o(i.uart0_init) refers to uart0.o(i.uart0_init_pin) for uart0_init_pin + uart0.o(i.uart0_init) refers to lib_uart.o(i.UART_Init) for UART_Init + uart0.o(i.uart0_init) refers to lib_uart.o(i.UART_ITConfig) for UART_ITConfig + uart0.o(i.uart0_init) refers to lib_uart.o(i.UART_TBIMConfig) for UART_TBIMConfig + uart0.o(i.uart0_init) refers to lib_uart.o(i.UART_ClearITPendingBit) for UART_ClearITPendingBit + uart0.o(i.uart0_init) refers to lib_scs.o(i.NVIC_Init) for NVIC_Init + uart0.o(i.uart0_init_pin) refers to lib_gpio.o(i.GPIO_Init) for GPIO_Init + key.o(i.prv_zkey_process_each_after_filter) refers to key.o(.data) for s_module + key.o(i.zkey_do_loop_in_each_period) refers to key.o(i.zkey_process_each) for zkey_process_each + key.o(i.zkey_do_loop_in_each_period) refers to key.o(.data) for s_inited + key.o(i.zkey_init) refers to key.o(.data) for s_module + key.o(i.zkey_process_each) refers to key.o(i.prv_zkey_process_each_after_filter) for prv_zkey_process_each_after_filter pwm_1.o(i.calculate_top) refers to dflti.o(.text) for __aeabi_i2d pwm_1.o(i.calculate_top) refers to dfltui.o(.text) for __aeabi_ui2d pwm_1.o(i.calculate_top) refers to dmul.o(.text) for __aeabi_dmul @@ -580,8 +543,6 @@ Section Cross References dfltui.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp dfltui.o(.text) refers to depilogue.o(.text) for _double_epilogue ffixui.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp - dfixi.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp - dfixi.o(.text) refers to llushr.o(.text) for __aeabi_llsr dfixui.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp dfixui.o(.text) refers to llushr.o(.text) for __aeabi_llsr f2d.o(.text) refers (Special) to iusefp.o(.text) for __I$use$fp @@ -625,21 +586,9 @@ Removing Unused input sections from the image. Removing port.o(i.port_ozone_pwm_stop), (16 bytes). Removing test.o(.rev16_text), (4 bytes). Removing test.o(.revsh_text), (4 bytes). - Removing pwm.o(.rev16_text), (4 bytes). - Removing pwm.o(.revsh_text), (4 bytes). - Removing pwm.o(i.calculate_top), (60 bytes). - Removing pwm.o(i.getCNT), (16 bytes). - Removing pwm.o(i.getTOP), (16 bytes). - Removing pwm.o(i.set_pwm_mat2), (24 bytes). - Removing pwm.o(i.set_pwm_modbul_freq_duty), (32 bytes). - Removing pwm.o(i.set_pwm_modbul_freq_duty2), (26 bytes). - Removing pwm.o(i.set_pwm_t16_pa4), (116 bytes). - Removing pwm.o(i.set_pwm_t16_pa4_2), (64 bytes). - Removing pwm.o(i.stop_pwm_output), (16 bytes). - Removing pwm.o(i.t16_pa4_init), (180 bytes). - Removing pwm.o(.data), (32 bytes). Removing system_es8p5066.o(.rev16_text), (4 bytes). Removing system_es8p5066.o(.revsh_text), (4 bytes). + Removing startup_es8p5066.o(HEAP), (0 bytes). Removing es8p5066_iap_table.o(.rev16_text), (4 bytes). Removing es8p5066_iap_table.o(.revsh_text), (4 bytes). Removing es8p5066_iap_table.o(i.IAPRead), (46 bytes). @@ -818,24 +767,20 @@ Removing Unused input sections from the image. Removing lib_wdt.o(i.WWDT_GetValue), (12 bytes). Removing lib_wdt.o(i.WWDT_Init), (160 bytes). Removing lib_wdt.o(i.WWDT_SetReloadValue), (16 bytes). - Removing startup_es8p5066.o(HEAP), (0 bytes). - Removing irqhandler.o(.rev16_text), (4 bytes). - Removing irqhandler.o(.revsh_text), (4 bytes). - Removing adc_1.o(.rev16_text), (4 bytes). - Removing adc_1.o(.revsh_text), (4 bytes). + Removing adc.o(.rev16_text), (4 bytes). + Removing adc.o(.revsh_text), (4 bytes). Removing gpio.o(.rev16_text), (4 bytes). Removing gpio.o(.revsh_text), (4 bytes). Removing systicket.o(.rev16_text), (4 bytes). Removing systicket.o(.revsh_text), (4 bytes). - Removing uart0_1.o(.rev16_text), (4 bytes). - Removing uart0_1.o(.revsh_text), (4 bytes). - Removing key_1.o(.rev16_text), (4 bytes). - Removing key_1.o(.revsh_text), (4 bytes). + Removing uart0.o(.rev16_text), (4 bytes). + Removing uart0.o(.revsh_text), (4 bytes). + Removing key.o(.rev16_text), (4 bytes). + Removing key.o(.revsh_text), (4 bytes). Removing pwm_1.o(.rev16_text), (4 bytes). Removing pwm_1.o(.revsh_text), (4 bytes). - Removing dfixi.o(.text), (72 bytes). -222 unused section(s) (total 6936 bytes) removed from the image. +206 unused section(s) (total 6266 bytes) removed from the image. ============================================================================== @@ -846,37 +791,37 @@ Image Symbol Table Symbol Name Value Ov Type Size Object(Section) RESET 0x00000000 Section 192 startup_es8p5066.o(RESET) - ../clib/microlib/division.c 0x00000000 Number 0 uldiv.o ABSOLUTE ../clib/microlib/division.c 0x00000000 Number 0 uidiv.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE + ../clib/microlib/division.c 0x00000000 Number 0 uldiv.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry12b.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry12a.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry12a.o ABSOLUTE + ../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE ../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE ../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE - ../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf2.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf1.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf0.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfa.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf8.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfa.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf7.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf6.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf5.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf4.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf3.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf1.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf0.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf2.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf6.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE ../clib/microlib/printf/stubs.s 0x00000000 Number 0 stubs.o ABSOLUTE ../clib/microlib/stdio/streams.c 0x00000000 Number 0 stdout.o ABSOLUTE ../clib/microlib/string/strcmp.c 0x00000000 Number 0 strcmp.o ABSOLUTE @@ -884,25 +829,24 @@ Image Symbol Table ../fplib/microlib/d2f.c 0x00000000 Number 0 d2f.o ABSOLUTE ../fplib/microlib/f2d.c 0x00000000 Number 0 f2d.o ABSOLUTE ../fplib/microlib/fpadd.c 0x00000000 Number 0 dadd.o ABSOLUTE - ../fplib/microlib/fpdiv.c 0x00000000 Number 0 fdiv.o ABSOLUTE ../fplib/microlib/fpdiv.c 0x00000000 Number 0 ddiv.o ABSOLUTE - ../fplib/microlib/fpepilogue.c 0x00000000 Number 0 fepilogue.o ABSOLUTE + ../fplib/microlib/fpdiv.c 0x00000000 Number 0 fdiv.o ABSOLUTE ../fplib/microlib/fpepilogue.c 0x00000000 Number 0 depilogue.o ABSOLUTE - ../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixui.o ABSOLUTE + ../fplib/microlib/fpepilogue.c 0x00000000 Number 0 fepilogue.o ABSOLUTE ../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixul.o ABSOLUTE - ../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixi.o ABSOLUTE + ../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixui.o ABSOLUTE ../fplib/microlib/fpfix.c 0x00000000 Number 0 ffixui.o ABSOLUTE - ../fplib/microlib/fpflt.c 0x00000000 Number 0 ffltui.o ABSOLUTE ../fplib/microlib/fpflt.c 0x00000000 Number 0 dflti.o ABSOLUTE + ../fplib/microlib/fpflt.c 0x00000000 Number 0 ffltui.o ABSOLUTE ../fplib/microlib/fpflt.c 0x00000000 Number 0 dfltui.o ABSOLUTE ../fplib/microlib/fpmul.c 0x00000000 Number 0 fmul.o ABSOLUTE ../fplib/microlib/fpmul.c 0x00000000 Number 0 dmul.o ABSOLUTE - ..\APP\light.c 0x00000000 Number 0 light.o ABSOLUTE ..\APP\main.c 0x00000000 Number 0 main.o ABSOLUTE - ..\APP\ozone_pwm_control.c 0x00000000 Number 0 ozone_pwm_control.o ABSOLUTE ..\APP\port.c 0x00000000 Number 0 port.o ABSOLUTE - ..\APP\pwm.c 0x00000000 Number 0 pwm.o ABSOLUTE + ..\APP\service\light_control_service.c 0x00000000 Number 0 light_control_service.o ABSOLUTE + ..\APP\service\ozone_control_service.c 0x00000000 Number 0 ozone_control_service.o ABSOLUTE ..\APP\test.c 0x00000000 Number 0 test.o ABSOLUTE + ..\CMSIS\startup_ES8P5066.s 0x00000000 Number 0 startup_es8p5066.o ABSOLUTE ..\CMSIS\system_es8p5066.c 0x00000000 Number 0 system_es8p5066.o ABSOLUTE ..\Library\Source\es8p5066_iap_table.c 0x00000000 Number 0 es8p5066_iap_table.o ABSOLUTE ..\Library\Source\lib_adc.c 0x00000000 Number 0 lib_adc.o ABSOLUTE @@ -915,11 +859,8 @@ Image Symbol Table ..\Library\Source\lib_timer.c 0x00000000 Number 0 lib_timer.o ABSOLUTE ..\Library\Source\lib_uart.c 0x00000000 Number 0 lib_uart.o ABSOLUTE ..\Library\Source\lib_wdt.c 0x00000000 Number 0 lib_wdt.o ABSOLUTE - ..\MDK_StartUp\startup_ES8P5066.s 0x00000000 Number 0 startup_es8p5066.o ABSOLUTE - ..\PlatForm\irqhandler.c 0x00000000 Number 0 irqhandler.o ABSOLUTE ..\\APP\\main.c 0x00000000 Number 0 main.o ABSOLUTE ..\\APP\\port.c 0x00000000 Number 0 port.o ABSOLUTE - ..\\APP\\pwm.c 0x00000000 Number 0 pwm.o ABSOLUTE ..\\APP\\test.c 0x00000000 Number 0 test.o ABSOLUTE ..\\CMSIS\\system_es8p5066.c 0x00000000 Number 0 system_es8p5066.o ABSOLUTE ..\\Library\\Source\\es8p5066_iap_table.c 0x00000000 Number 0 es8p5066_iap_table.o ABSOLUTE @@ -933,19 +874,18 @@ Image Symbol Table ..\\Library\\Source\\lib_timer.c 0x00000000 Number 0 lib_timer.o ABSOLUTE ..\\Library\\Source\\lib_uart.c 0x00000000 Number 0 lib_uart.o ABSOLUTE ..\\Library\\Source\\lib_wdt.c 0x00000000 Number 0 lib_wdt.o ABSOLUTE - ..\\PlatForm\\irqhandler.c 0x00000000 Number 0 irqhandler.o ABSOLUTE - ..\\zes8p5066lib\\adc.c 0x00000000 Number 0 adc_1.o ABSOLUTE + ..\\zes8p5066lib\\adc.c 0x00000000 Number 0 adc.o ABSOLUTE ..\\zes8p5066lib\\gpio.c 0x00000000 Number 0 gpio.o ABSOLUTE - ..\\zes8p5066lib\\key.c 0x00000000 Number 0 key_1.o ABSOLUTE + ..\\zes8p5066lib\\key.c 0x00000000 Number 0 key.o ABSOLUTE ..\\zes8p5066lib\\pwm.c 0x00000000 Number 0 pwm_1.o ABSOLUTE ..\\zes8p5066lib\\systicket.c 0x00000000 Number 0 systicket.o ABSOLUTE - ..\\zes8p5066lib\\uart0.c 0x00000000 Number 0 uart0_1.o ABSOLUTE - ..\zes8p5066lib\adc.c 0x00000000 Number 0 adc_1.o ABSOLUTE + ..\\zes8p5066lib\\uart0.c 0x00000000 Number 0 uart0.o ABSOLUTE + ..\zes8p5066lib\adc.c 0x00000000 Number 0 adc.o ABSOLUTE ..\zes8p5066lib\gpio.c 0x00000000 Number 0 gpio.o ABSOLUTE - ..\zes8p5066lib\key.c 0x00000000 Number 0 key_1.o ABSOLUTE + ..\zes8p5066lib\key.c 0x00000000 Number 0 key.o ABSOLUTE ..\zes8p5066lib\pwm.c 0x00000000 Number 0 pwm_1.o ABSOLUTE ..\zes8p5066lib\systicket.c 0x00000000 Number 0 systicket.o ABSOLUTE - ..\zes8p5066lib\uart0.c 0x00000000 Number 0 uart0_1.o ABSOLUTE + ..\zes8p5066lib\uart0.c 0x00000000 Number 0 uart0.o ABSOLUTE cdcmple.s 0x00000000 Number 0 cdcmple.o ABSOLUTE cdrcmple.s 0x00000000 Number 0 cdrcmple.o ABSOLUTE dc.s 0x00000000 Number 0 dc.o ABSOLUTE @@ -1011,114 +951,111 @@ Image Symbol Table i.GPIO_SetSingalTypeFromPin 0x00001370 Section 0 lib_gpio.o(i.GPIO_SetSingalTypeFromPin) i.GPIO_WriteBit 0x000013d8 Section 0 lib_gpio.o(i.GPIO_WriteBit) i.HRC_Config 0x00001424 Section 0 lib_scu.o(i.HRC_Config) - i.HardFault_IRQHandler 0x000014f0 Section 0 irqhandler.o(i.HardFault_IRQHandler) - i.NMI_IRQHandler 0x000014f4 Section 0 irqhandler.o(i.NMI_IRQHandler) - i.NVIC_Init 0x000014f8 Section 0 lib_scs.o(i.NVIC_Init) - i.PendSV_IRQHandler 0x0000155c Section 0 irqhandler.o(i.PendSV_IRQHandler) - i.SCU_SysClkSelect 0x00001560 Section 0 lib_scu.o(i.SCU_SysClkSelect) - i.SVC_IRQHandler 0x0000158c Section 0 irqhandler.o(i.SVC_IRQHandler) - i.SysTick_IRQHandler 0x00001590 Section 0 systicket.o(i.SysTick_IRQHandler) - i.SysTick_Init 0x000015a0 Section 0 lib_scs.o(i.SysTick_Init) - i.SystemInit 0x000015e0 Section 0 system_es8p5066.o(i.SystemInit) - i.T16Nx_BaseInit 0x00001604 Section 0 lib_timer.o(i.T16Nx_BaseInit) - i.T16Nx_Disable 0x00001668 Section 0 lib_timer.o(i.T16Nx_Disable) - i.T16Nx_Enable 0x00001672 Section 0 lib_timer.o(i.T16Nx_Enable) - i.T16Nx_GetTOP0 0x0000167e Section 0 lib_timer.o(i.T16Nx_GetTOP0) - i.T16Nx_GetTOP1 0x00001686 Section 0 lib_timer.o(i.T16Nx_GetTOP1) - i.T16Nx_MAT0ITConfig 0x0000168e Section 0 lib_timer.o(i.T16Nx_MAT0ITConfig) - i.T16Nx_MAT0Out0Config 0x000016a6 Section 0 lib_timer.o(i.T16Nx_MAT0Out0Config) - i.T16Nx_MAT1ITConfig 0x000016be Section 0 lib_timer.o(i.T16Nx_MAT1ITConfig) - i.T16Nx_MAT1Out0Config 0x000016d6 Section 0 lib_timer.o(i.T16Nx_MAT1Out0Config) - i.T16Nx_MAT2ITConfig 0x000016ee Section 0 lib_timer.o(i.T16Nx_MAT2ITConfig) - i.T16Nx_MAT2Out1Config 0x00001706 Section 0 lib_timer.o(i.T16Nx_MAT2Out1Config) - i.T16Nx_MAT3ITConfig 0x0000171e Section 0 lib_timer.o(i.T16Nx_MAT3ITConfig) - i.T16Nx_MAT3Out1Config 0x00001736 Section 0 lib_timer.o(i.T16Nx_MAT3Out1Config) - i.T16Nx_PMWOutInit 0x0000174e Section 0 lib_timer.o(i.T16Nx_PMWOutInit) - i.T16Nx_SetCNT0 0x000017ce Section 0 lib_timer.o(i.T16Nx_SetCNT0) - i.T16Nx_SetCNT1 0x000017f2 Section 0 lib_timer.o(i.T16Nx_SetCNT1) - i.T16Nx_SetMAT0 0x00001816 Section 0 lib_timer.o(i.T16Nx_SetMAT0) - i.T16Nx_SetMAT1 0x00001824 Section 0 lib_timer.o(i.T16Nx_SetMAT1) - i.T16Nx_SetMAT2 0x00001832 Section 0 lib_timer.o(i.T16Nx_SetMAT2) - i.T16Nx_SetMAT3 0x00001840 Section 0 lib_timer.o(i.T16Nx_SetMAT3) - i.T16Nx_SetTOP0 0x0000184e Section 0 lib_timer.o(i.T16Nx_SetTOP0) - i.T16Nx_SetTOP1 0x0000185c Section 0 lib_timer.o(i.T16Nx_SetTOP1) - i.UART_ClearITPendingBit 0x0000186a Section 0 lib_uart.o(i.UART_ClearITPendingBit) - i.UART_GetFlagStatus 0x0000186e Section 0 lib_uart.o(i.UART_GetFlagStatus) - i.UART_ITConfig 0x0000187e Section 0 lib_uart.o(i.UART_ITConfig) - i.UART_Init 0x00001894 Section 0 lib_uart.o(i.UART_Init) - i.UART_SendByte 0x000019fc Section 0 lib_uart.o(i.UART_SendByte) - i.UART_TBIMConfig 0x00001a02 Section 0 lib_uart.o(i.UART_TBIMConfig) - i.__0printf 0x00001a14 Section 0 printfa.o(i.__0printf) - i.__ARM_clz 0x00001a34 Section 0 depilogue.o(i.__ARM_clz) - i.__ARM_common_switch8 0x00001a62 Section 0 lib_gpio.o(i.__ARM_common_switch8) - i.__scatterload_copy 0x00001a7e Section 14 handlers.o(i.__scatterload_copy) - i.__scatterload_null 0x00001a8c Section 2 handlers.o(i.__scatterload_null) - i.__scatterload_zeroinit 0x00001a8e Section 14 handlers.o(i.__scatterload_zeroinit) - i._fp_digits 0x00001a9c Section 0 printfa.o(i._fp_digits) - _fp_digits 0x00001a9d Thumb Code 344 printfa.o(i._fp_digits) - i._printf_core 0x00001c10 Section 0 printfa.o(i._printf_core) - _printf_core 0x00001c11 Thumb Code 1760 printfa.o(i._printf_core) - i._printf_post_padding 0x00002300 Section 0 printfa.o(i._printf_post_padding) - _printf_post_padding 0x00002301 Thumb Code 32 printfa.o(i._printf_post_padding) - i._printf_pre_padding 0x00002320 Section 0 printfa.o(i._printf_pre_padding) - _printf_pre_padding 0x00002321 Thumb Code 44 printfa.o(i._printf_pre_padding) - i.adc_get_chnum 0x0000234c Section 0 adc_1.o(i.adc_get_chnum) - i.adc_get_value 0x0000243c Section 0 adc_1.o(i.adc_get_value) - i.adc_get_value_by_adcch 0x0000244e Section 0 adc_1.o(i.adc_get_value_by_adcch) - i.adc_get_voltage 0x00002484 Section 0 adc_1.o(i.adc_get_voltage) - i.adc_module_init 0x000024c4 Section 0 adc_1.o(i.adc_module_init) - i.adc_pin_init 0x00002500 Section 0 adc_1.o(i.adc_pin_init) - i.calculate_top 0x00002528 Section 0 pwm_1.o(i.calculate_top) - calculate_top 0x00002529 Thumb Code 78 pwm_1.o(i.calculate_top) - i.fputc 0x00002580 Section 0 lib_printf.o(i.fputc) - i.main 0x000025cc Section 0 main.o(i.main) - i.onkey 0x00002740 Section 0 main.o(i.onkey) - i.port_adc_get_fan_power 0x000027e8 Section 0 port.o(i.port_adc_get_fan_power) - i.port_adc_get_ozone_generator_power 0x0000280c Section 0 port.o(i.port_adc_get_ozone_generator_power) - i.port_debug_set 0x0000283c Section 0 port.o(i.port_debug_set) - i.port_fan_get 0x0000284e Section 0 port.o(i.port_fan_get) - i.port_fan_set 0x00002860 Section 0 port.o(i.port_fan_set) - i.port_gpio_get_interval_key_state 0x0000287a Section 0 port.o(i.port_gpio_get_interval_key_state) - i.port_gpio_get_level_key_state 0x0000288c Section 0 port.o(i.port_gpio_get_level_key_state) - i.port_gpio_get_power_key_state 0x0000289e Section 0 port.o(i.port_gpio_get_power_key_state) - i.port_gpio_get_timer_key_state 0x000028b0 Section 0 port.o(i.port_gpio_get_timer_key_state) - i.port_init 0x000028c4 Section 0 port.o(i.port_init) - i.port_led0_set 0x000029e0 Section 0 port.o(i.port_led0_set) - i.port_led1_set 0x000029f2 Section 0 port.o(i.port_led1_set) - i.port_led2_set 0x00002a04 Section 0 port.o(i.port_led2_set) - i.port_led3_set 0x00002a16 Section 0 port.o(i.port_led3_set) - i.port_led_b_set 0x00002a28 Section 0 port.o(i.port_led_b_set) - i.port_led_g_set 0x00002a3a Section 0 port.o(i.port_led_g_set) - i.port_led_r_set 0x00002a4c Section 0 port.o(i.port_led_r_set) - i.port_ozone_pwm_set_duty 0x00002a60 Section 0 port.o(i.port_ozone_pwm_set_duty) - i.port_ozone_pwm_start 0x00002a80 Section 0 port.o(i.port_ozone_pwm_start) - i.prv_zkey_process_each_after_filter 0x00002a90 Section 0 key_1.o(i.prv_zkey_process_each_after_filter) - prv_zkey_process_each_after_filter 0x00002a91 Thumb Code 86 key_1.o(i.prv_zkey_process_each_after_filter) - i.systicket_delay_ms 0x00002aec Section 0 systicket.o(i.systicket_delay_ms) - i.systicket_do_debug_light_state 0x00002b08 Section 0 main.o(i.systicket_do_debug_light_state) - i.systicket_get_now_ms 0x00002b50 Section 0 systicket.o(i.systicket_get_now_ms) - i.systicket_haspassedms 0x00002b5c Section 0 systicket.o(i.systicket_haspassedms) - i.systicket_init 0x00002b78 Section 0 systicket.o(i.systicket_init) - i.test_all_light 0x00002bb8 Section 0 test.o(i.test_all_light) - i.uart0_init 0x00002cfc Section 0 uart0_1.o(i.uart0_init) - i.uart0_init_pin 0x00002d80 Section 0 uart0_1.o(i.uart0_init_pin) - uart0_init_pin 0x00002d81 Thumb Code 146 uart0_1.o(i.uart0_init_pin) - i.zgpio_get_default_input_config 0x00002e14 Section 0 gpio.o(i.zgpio_get_default_input_config) - i.zgpio_get_default_ode_output_config 0x00002e30 Section 0 gpio.o(i.zgpio_get_default_ode_output_config) - i.zgpio_get_default_output_config 0x00002e50 Section 0 gpio.o(i.zgpio_get_default_output_config) - i.zgpio_init_all_gpio 0x00002e6c Section 0 gpio.o(i.zgpio_init_all_gpio) - i.zgpio_init_as_input 0x00002e6e Section 0 gpio.o(i.zgpio_init_as_input) - i.zgpio_init_as_output 0x00002e7e Section 0 gpio.o(i.zgpio_init_as_output) - i.zkey_do_loop_in_each_period 0x00002e98 Section 0 key_1.o(i.zkey_do_loop_in_each_period) - i.zkey_init 0x00002ed4 Section 0 key_1.o(i.zkey_init) - i.zkey_process_each 0x00002f48 Section 0 key_1.o(i.zkey_process_each) - i.zpwm_init 0x00002f86 Section 0 pwm_1.o(i.zpwm_init) - i.zpwm_set_duty 0x00003060 Section 0 pwm_1.o(i.zpwm_set_duty) - i.zpwm_set_duty_ns 0x00003118 Section 0 pwm_1.o(i.zpwm_set_duty_ns) - i.zpwm_set_freq 0x000031b8 Section 0 pwm_1.o(i.zpwm_set_freq) - i.zpwm_start 0x00003202 Section 0 pwm_1.o(i.zpwm_start) - i.zpwm_stop 0x0000325e Section 0 pwm_1.o(i.zpwm_stop) - .conststring 0x000032b8 Section 45 main.o(.conststring) + i.NVIC_Init 0x000014f0 Section 0 lib_scs.o(i.NVIC_Init) + i.SCU_SysClkSelect 0x00001554 Section 0 lib_scu.o(i.SCU_SysClkSelect) + i.SysTick_IRQHandler 0x00001580 Section 0 systicket.o(i.SysTick_IRQHandler) + i.SysTick_Init 0x00001590 Section 0 lib_scs.o(i.SysTick_Init) + i.SystemInit 0x000015d0 Section 0 system_es8p5066.o(i.SystemInit) + i.T16Nx_BaseInit 0x000015f4 Section 0 lib_timer.o(i.T16Nx_BaseInit) + i.T16Nx_Disable 0x00001658 Section 0 lib_timer.o(i.T16Nx_Disable) + i.T16Nx_Enable 0x00001662 Section 0 lib_timer.o(i.T16Nx_Enable) + i.T16Nx_GetTOP0 0x0000166e Section 0 lib_timer.o(i.T16Nx_GetTOP0) + i.T16Nx_GetTOP1 0x00001676 Section 0 lib_timer.o(i.T16Nx_GetTOP1) + i.T16Nx_MAT0ITConfig 0x0000167e Section 0 lib_timer.o(i.T16Nx_MAT0ITConfig) + i.T16Nx_MAT0Out0Config 0x00001696 Section 0 lib_timer.o(i.T16Nx_MAT0Out0Config) + i.T16Nx_MAT1ITConfig 0x000016ae Section 0 lib_timer.o(i.T16Nx_MAT1ITConfig) + i.T16Nx_MAT1Out0Config 0x000016c6 Section 0 lib_timer.o(i.T16Nx_MAT1Out0Config) + i.T16Nx_MAT2ITConfig 0x000016de Section 0 lib_timer.o(i.T16Nx_MAT2ITConfig) + i.T16Nx_MAT2Out1Config 0x000016f6 Section 0 lib_timer.o(i.T16Nx_MAT2Out1Config) + i.T16Nx_MAT3ITConfig 0x0000170e Section 0 lib_timer.o(i.T16Nx_MAT3ITConfig) + i.T16Nx_MAT3Out1Config 0x00001726 Section 0 lib_timer.o(i.T16Nx_MAT3Out1Config) + i.T16Nx_PMWOutInit 0x0000173e Section 0 lib_timer.o(i.T16Nx_PMWOutInit) + i.T16Nx_SetCNT0 0x000017be Section 0 lib_timer.o(i.T16Nx_SetCNT0) + i.T16Nx_SetCNT1 0x000017e2 Section 0 lib_timer.o(i.T16Nx_SetCNT1) + i.T16Nx_SetMAT0 0x00001806 Section 0 lib_timer.o(i.T16Nx_SetMAT0) + i.T16Nx_SetMAT1 0x00001814 Section 0 lib_timer.o(i.T16Nx_SetMAT1) + i.T16Nx_SetMAT2 0x00001822 Section 0 lib_timer.o(i.T16Nx_SetMAT2) + i.T16Nx_SetMAT3 0x00001830 Section 0 lib_timer.o(i.T16Nx_SetMAT3) + i.T16Nx_SetTOP0 0x0000183e Section 0 lib_timer.o(i.T16Nx_SetTOP0) + i.T16Nx_SetTOP1 0x0000184c Section 0 lib_timer.o(i.T16Nx_SetTOP1) + i.UART_ClearITPendingBit 0x0000185a Section 0 lib_uart.o(i.UART_ClearITPendingBit) + i.UART_GetFlagStatus 0x0000185e Section 0 lib_uart.o(i.UART_GetFlagStatus) + i.UART_ITConfig 0x0000186e Section 0 lib_uart.o(i.UART_ITConfig) + i.UART_Init 0x00001884 Section 0 lib_uart.o(i.UART_Init) + i.UART_SendByte 0x000019ec Section 0 lib_uart.o(i.UART_SendByte) + i.UART_TBIMConfig 0x000019f2 Section 0 lib_uart.o(i.UART_TBIMConfig) + i.__0printf 0x00001a04 Section 0 printfa.o(i.__0printf) + i.__ARM_clz 0x00001a24 Section 0 depilogue.o(i.__ARM_clz) + i.__ARM_common_switch8 0x00001a52 Section 0 lib_gpio.o(i.__ARM_common_switch8) + i.__scatterload_copy 0x00001a6e Section 14 handlers.o(i.__scatterload_copy) + i.__scatterload_null 0x00001a7c Section 2 handlers.o(i.__scatterload_null) + i.__scatterload_zeroinit 0x00001a7e Section 14 handlers.o(i.__scatterload_zeroinit) + i._fp_digits 0x00001a8c Section 0 printfa.o(i._fp_digits) + _fp_digits 0x00001a8d Thumb Code 344 printfa.o(i._fp_digits) + i._printf_core 0x00001c00 Section 0 printfa.o(i._printf_core) + _printf_core 0x00001c01 Thumb Code 1760 printfa.o(i._printf_core) + i._printf_post_padding 0x000022f0 Section 0 printfa.o(i._printf_post_padding) + _printf_post_padding 0x000022f1 Thumb Code 32 printfa.o(i._printf_post_padding) + i._printf_pre_padding 0x00002310 Section 0 printfa.o(i._printf_pre_padding) + _printf_pre_padding 0x00002311 Thumb Code 44 printfa.o(i._printf_pre_padding) + i.adc_get_chnum 0x0000233c Section 0 adc.o(i.adc_get_chnum) + i.adc_get_value 0x0000242c Section 0 adc.o(i.adc_get_value) + i.adc_get_value_by_adcch 0x0000243e Section 0 adc.o(i.adc_get_value_by_adcch) + i.adc_get_voltage 0x00002474 Section 0 adc.o(i.adc_get_voltage) + i.adc_module_init 0x000024b4 Section 0 adc.o(i.adc_module_init) + i.adc_pin_init 0x000024f0 Section 0 adc.o(i.adc_pin_init) + i.calculate_top 0x00002518 Section 0 pwm_1.o(i.calculate_top) + calculate_top 0x00002519 Thumb Code 78 pwm_1.o(i.calculate_top) + i.fputc 0x00002570 Section 0 lib_printf.o(i.fputc) + i.init_all_subdevice_state 0x000025bc Section 0 main.o(i.init_all_subdevice_state) + i.main 0x000025f8 Section 0 main.o(i.main) + i.onkey 0x0000273c Section 0 main.o(i.onkey) + i.port_adc_get_fan_power 0x000027e4 Section 0 port.o(i.port_adc_get_fan_power) + i.port_adc_get_ozone_generator_power 0x00002808 Section 0 port.o(i.port_adc_get_ozone_generator_power) + i.port_debug_set 0x00002838 Section 0 port.o(i.port_debug_set) + i.port_fan_get 0x0000284a Section 0 port.o(i.port_fan_get) + i.port_fan_set 0x0000285c Section 0 port.o(i.port_fan_set) + i.port_gpio_get_interval_key_state 0x00002876 Section 0 port.o(i.port_gpio_get_interval_key_state) + i.port_gpio_get_level_key_state 0x00002888 Section 0 port.o(i.port_gpio_get_level_key_state) + i.port_gpio_get_power_key_state 0x0000289a Section 0 port.o(i.port_gpio_get_power_key_state) + i.port_gpio_get_timer_key_state 0x000028ac Section 0 port.o(i.port_gpio_get_timer_key_state) + i.port_init 0x000028c0 Section 0 port.o(i.port_init) + i.port_led0_set 0x000029dc Section 0 port.o(i.port_led0_set) + i.port_led1_set 0x000029ee Section 0 port.o(i.port_led1_set) + i.port_led2_set 0x00002a00 Section 0 port.o(i.port_led2_set) + i.port_led3_set 0x00002a12 Section 0 port.o(i.port_led3_set) + i.port_led_b_set 0x00002a24 Section 0 port.o(i.port_led_b_set) + i.port_led_g_set 0x00002a36 Section 0 port.o(i.port_led_g_set) + i.port_led_r_set 0x00002a48 Section 0 port.o(i.port_led_r_set) + i.port_ozone_pwm_set_duty 0x00002a5c Section 0 port.o(i.port_ozone_pwm_set_duty) + i.port_ozone_pwm_start 0x00002a7c Section 0 port.o(i.port_ozone_pwm_start) + i.prv_zkey_process_each_after_filter 0x00002a8c Section 0 key.o(i.prv_zkey_process_each_after_filter) + prv_zkey_process_each_after_filter 0x00002a8d Thumb Code 86 key.o(i.prv_zkey_process_each_after_filter) + i.systicket_delay_ms 0x00002ae8 Section 0 systicket.o(i.systicket_delay_ms) + i.systicket_do_debug_light_state 0x00002b04 Section 0 main.o(i.systicket_do_debug_light_state) + i.systicket_get_now_ms 0x00002b4c Section 0 systicket.o(i.systicket_get_now_ms) + i.systicket_haspassedms 0x00002b58 Section 0 systicket.o(i.systicket_haspassedms) + i.systicket_init 0x00002b74 Section 0 systicket.o(i.systicket_init) + i.test_all_light 0x00002bb4 Section 0 test.o(i.test_all_light) + i.uart0_init 0x00002cf8 Section 0 uart0.o(i.uart0_init) + i.uart0_init_pin 0x00002d7c Section 0 uart0.o(i.uart0_init_pin) + uart0_init_pin 0x00002d7d Thumb Code 146 uart0.o(i.uart0_init_pin) + i.zgpio_get_default_input_config 0x00002e10 Section 0 gpio.o(i.zgpio_get_default_input_config) + i.zgpio_get_default_ode_output_config 0x00002e2c Section 0 gpio.o(i.zgpio_get_default_ode_output_config) + i.zgpio_get_default_output_config 0x00002e4c Section 0 gpio.o(i.zgpio_get_default_output_config) + i.zgpio_init_all_gpio 0x00002e68 Section 0 gpio.o(i.zgpio_init_all_gpio) + i.zgpio_init_as_input 0x00002e6a Section 0 gpio.o(i.zgpio_init_as_input) + i.zgpio_init_as_output 0x00002e7a Section 0 gpio.o(i.zgpio_init_as_output) + i.zkey_do_loop_in_each_period 0x00002e94 Section 0 key.o(i.zkey_do_loop_in_each_period) + i.zkey_init 0x00002ed0 Section 0 key.o(i.zkey_init) + i.zkey_process_each 0x00002f44 Section 0 key.o(i.zkey_process_each) + i.zpwm_init 0x00002f82 Section 0 pwm_1.o(i.zpwm_init) + i.zpwm_set_duty 0x0000305c Section 0 pwm_1.o(i.zpwm_set_duty) + i.zpwm_set_duty_ns 0x00003114 Section 0 pwm_1.o(i.zpwm_set_duty_ns) + i.zpwm_set_freq 0x000031b4 Section 0 pwm_1.o(i.zpwm_set_freq) + i.zpwm_start 0x000031fe Section 0 pwm_1.o(i.zpwm_start) + i.zpwm_stop 0x0000325a Section 0 pwm_1.o(i.zpwm_stop) + .conststring 0x000032b4 Section 45 main.o(.conststring) .data 0x20000000 Section 144 main.o(.data) s_keys 0x20000004 Data 112 main.o(.data) lastprocess 0x20000080 Data 4 main.o(.data) @@ -1130,16 +1067,16 @@ Image Symbol Table debug_led_state 0x20000094 Data 1 test.o(.data) num 0x20000098 Data 4 test.o(.data) .data 0x2000009c Section 4 system_es8p5066.o(.data) - .data 0x200000a0 Section 1 adc_1.o(.data) - g_default_adc_ch 0x200000a0 Data 1 adc_1.o(.data) + .data 0x200000a0 Section 1 adc.o(.data) + g_default_adc_ch 0x200000a0 Data 1 adc.o(.data) .data 0x200000a1 Section 21 gpio.o(.data) default_config 0x200000a1 Data 7 gpio.o(.data) default_config 0x200000a8 Data 7 gpio.o(.data) default_config 0x200000af Data 7 gpio.o(.data) .data 0x200000b8 Section 4 systicket.o(.data) - .data 0x200000bc Section 5 key_1.o(.data) - s_module 0x200000bc Data 4 key_1.o(.data) - s_inited 0x200000c0 Data 1 key_1.o(.data) + .data 0x200000bc Section 5 key.o(.data) + s_module 0x200000bc Data 4 key.o(.data) + s_inited 0x200000c0 Data 1 key.o(.data) .data 0x200000c4 Section 4 stdout.o(.data) .bss 0x200000c8 Section 40 port.o(.bss) STACK 0x200000f0 Section 1024 startup_es8p5066.o(STACK) @@ -1209,6 +1146,10 @@ Image Symbol Table __rt_final_cpp 0x000000d5 Thumb Code 0 entry10a.o(.ARM.Collect$$$$0000000F) __rt_final_exit 0x000000d5 Thumb Code 0 entry11a.o(.ARM.Collect$$$$00000011) Reset_IRQHandler 0x000000d9 Thumb Code 8 startup_es8p5066.o(.text) + NMI_IRQHandler 0x000000e1 Thumb Code 2 startup_es8p5066.o(.text) + HardFault_IRQHandler 0x000000e3 Thumb Code 2 startup_es8p5066.o(.text) + SVC_IRQHandler 0x000000e5 Thumb Code 2 startup_es8p5066.o(.text) + PendSV_IRQHandler 0x000000e7 Thumb Code 2 startup_es8p5066.o(.text) ADC_IRQHandler 0x000000eb Thumb Code 0 startup_es8p5066.o(.text) CCM_IRQHandler 0x000000eb Thumb Code 0 startup_es8p5066.o(.text) I2C0_IRQHandler 0x000000eb Thumb Code 0 startup_es8p5066.o(.text) @@ -1292,105 +1233,102 @@ Image Symbol Table GPIO_SetSingalTypeFromPin 0x00001371 Thumb Code 98 lib_gpio.o(i.GPIO_SetSingalTypeFromPin) GPIO_WriteBit 0x000013d9 Thumb Code 70 lib_gpio.o(i.GPIO_WriteBit) HRC_Config 0x00001425 Thumb Code 194 lib_scu.o(i.HRC_Config) - HardFault_IRQHandler 0x000014f1 Thumb Code 4 irqhandler.o(i.HardFault_IRQHandler) - NMI_IRQHandler 0x000014f5 Thumb Code 2 irqhandler.o(i.NMI_IRQHandler) - NVIC_Init 0x000014f9 Thumb Code 94 lib_scs.o(i.NVIC_Init) - PendSV_IRQHandler 0x0000155d Thumb Code 2 irqhandler.o(i.PendSV_IRQHandler) - SCU_SysClkSelect 0x00001561 Thumb Code 34 lib_scu.o(i.SCU_SysClkSelect) - SVC_IRQHandler 0x0000158d Thumb Code 2 irqhandler.o(i.SVC_IRQHandler) - SysTick_IRQHandler 0x00001591 Thumb Code 12 systicket.o(i.SysTick_IRQHandler) - SysTick_Init 0x000015a1 Thumb Code 60 lib_scs.o(i.SysTick_Init) - SystemInit 0x000015e1 Thumb Code 26 system_es8p5066.o(i.SystemInit) - T16Nx_BaseInit 0x00001605 Thumb Code 100 lib_timer.o(i.T16Nx_BaseInit) - T16Nx_Disable 0x00001669 Thumb Code 10 lib_timer.o(i.T16Nx_Disable) - T16Nx_Enable 0x00001673 Thumb Code 12 lib_timer.o(i.T16Nx_Enable) - T16Nx_GetTOP0 0x0000167f Thumb Code 8 lib_timer.o(i.T16Nx_GetTOP0) - T16Nx_GetTOP1 0x00001687 Thumb Code 8 lib_timer.o(i.T16Nx_GetTOP1) - T16Nx_MAT0ITConfig 0x0000168f Thumb Code 24 lib_timer.o(i.T16Nx_MAT0ITConfig) - T16Nx_MAT0Out0Config 0x000016a7 Thumb Code 24 lib_timer.o(i.T16Nx_MAT0Out0Config) - T16Nx_MAT1ITConfig 0x000016bf Thumb Code 24 lib_timer.o(i.T16Nx_MAT1ITConfig) - T16Nx_MAT1Out0Config 0x000016d7 Thumb Code 24 lib_timer.o(i.T16Nx_MAT1Out0Config) - T16Nx_MAT2ITConfig 0x000016ef Thumb Code 24 lib_timer.o(i.T16Nx_MAT2ITConfig) - T16Nx_MAT2Out1Config 0x00001707 Thumb Code 24 lib_timer.o(i.T16Nx_MAT2Out1Config) - T16Nx_MAT3ITConfig 0x0000171f Thumb Code 24 lib_timer.o(i.T16Nx_MAT3ITConfig) - T16Nx_MAT3Out1Config 0x00001737 Thumb Code 24 lib_timer.o(i.T16Nx_MAT3Out1Config) - T16Nx_PMWOutInit 0x0000174f Thumb Code 128 lib_timer.o(i.T16Nx_PMWOutInit) - T16Nx_SetCNT0 0x000017cf Thumb Code 36 lib_timer.o(i.T16Nx_SetCNT0) - T16Nx_SetCNT1 0x000017f3 Thumb Code 36 lib_timer.o(i.T16Nx_SetCNT1) - T16Nx_SetMAT0 0x00001817 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT0) - T16Nx_SetMAT1 0x00001825 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT1) - T16Nx_SetMAT2 0x00001833 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT2) - T16Nx_SetMAT3 0x00001841 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT3) - T16Nx_SetTOP0 0x0000184f Thumb Code 14 lib_timer.o(i.T16Nx_SetTOP0) - T16Nx_SetTOP1 0x0000185d Thumb Code 14 lib_timer.o(i.T16Nx_SetTOP1) - UART_ClearITPendingBit 0x0000186b Thumb Code 4 lib_uart.o(i.UART_ClearITPendingBit) - UART_GetFlagStatus 0x0000186f Thumb Code 16 lib_uart.o(i.UART_GetFlagStatus) - UART_ITConfig 0x0000187f Thumb Code 20 lib_uart.o(i.UART_ITConfig) - UART_Init 0x00001895 Thumb Code 350 lib_uart.o(i.UART_Init) - UART_SendByte 0x000019fd Thumb Code 6 lib_uart.o(i.UART_SendByte) - UART_TBIMConfig 0x00001a03 Thumb Code 16 lib_uart.o(i.UART_TBIMConfig) - __0printf 0x00001a15 Thumb Code 24 printfa.o(i.__0printf) - __1printf 0x00001a15 Thumb Code 0 printfa.o(i.__0printf) - __2printf 0x00001a15 Thumb Code 0 printfa.o(i.__0printf) - __c89printf 0x00001a15 Thumb Code 0 printfa.o(i.__0printf) - printf 0x00001a15 Thumb Code 0 printfa.o(i.__0printf) - __ARM_clz 0x00001a35 Thumb Code 46 depilogue.o(i.__ARM_clz) - __ARM_common_switch8 0x00001a63 Thumb Code 28 lib_gpio.o(i.__ARM_common_switch8) - __scatterload_copy 0x00001a7f Thumb Code 14 handlers.o(i.__scatterload_copy) - __scatterload_null 0x00001a8d Thumb Code 2 handlers.o(i.__scatterload_null) - __scatterload_zeroinit 0x00001a8f Thumb Code 14 handlers.o(i.__scatterload_zeroinit) - adc_get_chnum 0x0000234d Thumb Code 184 adc_1.o(i.adc_get_chnum) - adc_get_value 0x0000243d Thumb Code 18 adc_1.o(i.adc_get_value) - adc_get_value_by_adcch 0x0000244f Thumb Code 52 adc_1.o(i.adc_get_value_by_adcch) - adc_get_voltage 0x00002485 Thumb Code 50 adc_1.o(i.adc_get_voltage) - adc_module_init 0x000024c5 Thumb Code 56 adc_1.o(i.adc_module_init) - adc_pin_init 0x00002501 Thumb Code 36 adc_1.o(i.adc_pin_init) - fputc 0x00002581 Thumb Code 66 lib_printf.o(i.fputc) - main 0x000025cd Thumb Code 228 main.o(i.main) - onkey 0x00002741 Thumb Code 110 main.o(i.onkey) - port_adc_get_fan_power 0x000027e9 Thumb Code 30 port.o(i.port_adc_get_fan_power) - port_adc_get_ozone_generator_power 0x0000280d Thumb Code 42 port.o(i.port_adc_get_ozone_generator_power) - port_debug_set 0x0000283d Thumb Code 18 port.o(i.port_debug_set) - port_fan_get 0x0000284f Thumb Code 18 port.o(i.port_fan_get) - port_fan_set 0x00002861 Thumb Code 26 port.o(i.port_fan_set) - port_gpio_get_interval_key_state 0x0000287b Thumb Code 18 port.o(i.port_gpio_get_interval_key_state) - port_gpio_get_level_key_state 0x0000288d Thumb Code 18 port.o(i.port_gpio_get_level_key_state) - port_gpio_get_power_key_state 0x0000289f Thumb Code 18 port.o(i.port_gpio_get_power_key_state) - port_gpio_get_timer_key_state 0x000028b1 Thumb Code 18 port.o(i.port_gpio_get_timer_key_state) - port_init 0x000028c5 Thumb Code 276 port.o(i.port_init) - port_led0_set 0x000029e1 Thumb Code 18 port.o(i.port_led0_set) - port_led1_set 0x000029f3 Thumb Code 18 port.o(i.port_led1_set) - port_led2_set 0x00002a05 Thumb Code 18 port.o(i.port_led2_set) - port_led3_set 0x00002a17 Thumb Code 18 port.o(i.port_led3_set) - port_led_b_set 0x00002a29 Thumb Code 18 port.o(i.port_led_b_set) - port_led_g_set 0x00002a3b Thumb Code 18 port.o(i.port_led_g_set) - port_led_r_set 0x00002a4d Thumb Code 18 port.o(i.port_led_r_set) - port_ozone_pwm_set_duty 0x00002a61 Thumb Code 28 port.o(i.port_ozone_pwm_set_duty) - port_ozone_pwm_start 0x00002a81 Thumb Code 12 port.o(i.port_ozone_pwm_start) - systicket_delay_ms 0x00002aed Thumb Code 26 systicket.o(i.systicket_delay_ms) - systicket_do_debug_light_state 0x00002b09 Thumb Code 64 main.o(i.systicket_do_debug_light_state) - systicket_get_now_ms 0x00002b51 Thumb Code 6 systicket.o(i.systicket_get_now_ms) - systicket_haspassedms 0x00002b5d Thumb Code 28 systicket.o(i.systicket_haspassedms) - systicket_init 0x00002b79 Thumb Code 54 systicket.o(i.systicket_init) - test_all_light 0x00002bb9 Thumb Code 310 test.o(i.test_all_light) - uart0_init 0x00002cfd Thumb Code 128 uart0_1.o(i.uart0_init) - zgpio_get_default_input_config 0x00002e15 Thumb Code 22 gpio.o(i.zgpio_get_default_input_config) - zgpio_get_default_ode_output_config 0x00002e31 Thumb Code 26 gpio.o(i.zgpio_get_default_ode_output_config) - zgpio_get_default_output_config 0x00002e51 Thumb Code 22 gpio.o(i.zgpio_get_default_output_config) - zgpio_init_all_gpio 0x00002e6d Thumb Code 2 gpio.o(i.zgpio_init_all_gpio) - zgpio_init_as_input 0x00002e6f Thumb Code 16 gpio.o(i.zgpio_init_as_input) - zgpio_init_as_output 0x00002e7f Thumb Code 26 gpio.o(i.zgpio_init_as_output) - zkey_do_loop_in_each_period 0x00002e99 Thumb Code 50 key_1.o(i.zkey_do_loop_in_each_period) - zkey_init 0x00002ed5 Thumb Code 108 key_1.o(i.zkey_init) - zkey_process_each 0x00002f49 Thumb Code 62 key_1.o(i.zkey_process_each) - zpwm_init 0x00002f87 Thumb Code 218 pwm_1.o(i.zpwm_init) - zpwm_set_duty 0x00003061 Thumb Code 180 pwm_1.o(i.zpwm_set_duty) - zpwm_set_duty_ns 0x00003119 Thumb Code 150 pwm_1.o(i.zpwm_set_duty_ns) - zpwm_set_freq 0x000031b9 Thumb Code 74 pwm_1.o(i.zpwm_set_freq) - zpwm_start 0x00003203 Thumb Code 92 pwm_1.o(i.zpwm_start) - zpwm_stop 0x0000325f Thumb Code 88 pwm_1.o(i.zpwm_stop) - Region$$Table$$Base 0x000032e8 Number 0 anon$$obj.o(Region$$Table) - Region$$Table$$Limit 0x00003308 Number 0 anon$$obj.o(Region$$Table) + NVIC_Init 0x000014f1 Thumb Code 94 lib_scs.o(i.NVIC_Init) + SCU_SysClkSelect 0x00001555 Thumb Code 34 lib_scu.o(i.SCU_SysClkSelect) + SysTick_IRQHandler 0x00001581 Thumb Code 12 systicket.o(i.SysTick_IRQHandler) + SysTick_Init 0x00001591 Thumb Code 60 lib_scs.o(i.SysTick_Init) + SystemInit 0x000015d1 Thumb Code 26 system_es8p5066.o(i.SystemInit) + T16Nx_BaseInit 0x000015f5 Thumb Code 100 lib_timer.o(i.T16Nx_BaseInit) + T16Nx_Disable 0x00001659 Thumb Code 10 lib_timer.o(i.T16Nx_Disable) + T16Nx_Enable 0x00001663 Thumb Code 12 lib_timer.o(i.T16Nx_Enable) + T16Nx_GetTOP0 0x0000166f Thumb Code 8 lib_timer.o(i.T16Nx_GetTOP0) + T16Nx_GetTOP1 0x00001677 Thumb Code 8 lib_timer.o(i.T16Nx_GetTOP1) + T16Nx_MAT0ITConfig 0x0000167f Thumb Code 24 lib_timer.o(i.T16Nx_MAT0ITConfig) + T16Nx_MAT0Out0Config 0x00001697 Thumb Code 24 lib_timer.o(i.T16Nx_MAT0Out0Config) + T16Nx_MAT1ITConfig 0x000016af Thumb Code 24 lib_timer.o(i.T16Nx_MAT1ITConfig) + T16Nx_MAT1Out0Config 0x000016c7 Thumb Code 24 lib_timer.o(i.T16Nx_MAT1Out0Config) + T16Nx_MAT2ITConfig 0x000016df Thumb Code 24 lib_timer.o(i.T16Nx_MAT2ITConfig) + T16Nx_MAT2Out1Config 0x000016f7 Thumb Code 24 lib_timer.o(i.T16Nx_MAT2Out1Config) + T16Nx_MAT3ITConfig 0x0000170f Thumb Code 24 lib_timer.o(i.T16Nx_MAT3ITConfig) + T16Nx_MAT3Out1Config 0x00001727 Thumb Code 24 lib_timer.o(i.T16Nx_MAT3Out1Config) + T16Nx_PMWOutInit 0x0000173f Thumb Code 128 lib_timer.o(i.T16Nx_PMWOutInit) + T16Nx_SetCNT0 0x000017bf Thumb Code 36 lib_timer.o(i.T16Nx_SetCNT0) + T16Nx_SetCNT1 0x000017e3 Thumb Code 36 lib_timer.o(i.T16Nx_SetCNT1) + T16Nx_SetMAT0 0x00001807 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT0) + T16Nx_SetMAT1 0x00001815 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT1) + T16Nx_SetMAT2 0x00001823 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT2) + T16Nx_SetMAT3 0x00001831 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT3) + T16Nx_SetTOP0 0x0000183f Thumb Code 14 lib_timer.o(i.T16Nx_SetTOP0) + T16Nx_SetTOP1 0x0000184d Thumb Code 14 lib_timer.o(i.T16Nx_SetTOP1) + UART_ClearITPendingBit 0x0000185b Thumb Code 4 lib_uart.o(i.UART_ClearITPendingBit) + UART_GetFlagStatus 0x0000185f Thumb Code 16 lib_uart.o(i.UART_GetFlagStatus) + UART_ITConfig 0x0000186f Thumb Code 20 lib_uart.o(i.UART_ITConfig) + UART_Init 0x00001885 Thumb Code 350 lib_uart.o(i.UART_Init) + UART_SendByte 0x000019ed Thumb Code 6 lib_uart.o(i.UART_SendByte) + UART_TBIMConfig 0x000019f3 Thumb Code 16 lib_uart.o(i.UART_TBIMConfig) + __0printf 0x00001a05 Thumb Code 24 printfa.o(i.__0printf) + __1printf 0x00001a05 Thumb Code 0 printfa.o(i.__0printf) + __2printf 0x00001a05 Thumb Code 0 printfa.o(i.__0printf) + __c89printf 0x00001a05 Thumb Code 0 printfa.o(i.__0printf) + printf 0x00001a05 Thumb Code 0 printfa.o(i.__0printf) + __ARM_clz 0x00001a25 Thumb Code 46 depilogue.o(i.__ARM_clz) + __ARM_common_switch8 0x00001a53 Thumb Code 28 lib_gpio.o(i.__ARM_common_switch8) + __scatterload_copy 0x00001a6f Thumb Code 14 handlers.o(i.__scatterload_copy) + __scatterload_null 0x00001a7d Thumb Code 2 handlers.o(i.__scatterload_null) + __scatterload_zeroinit 0x00001a7f Thumb Code 14 handlers.o(i.__scatterload_zeroinit) + adc_get_chnum 0x0000233d Thumb Code 184 adc.o(i.adc_get_chnum) + adc_get_value 0x0000242d Thumb Code 18 adc.o(i.adc_get_value) + adc_get_value_by_adcch 0x0000243f Thumb Code 52 adc.o(i.adc_get_value_by_adcch) + adc_get_voltage 0x00002475 Thumb Code 50 adc.o(i.adc_get_voltage) + adc_module_init 0x000024b5 Thumb Code 56 adc.o(i.adc_module_init) + adc_pin_init 0x000024f1 Thumb Code 36 adc.o(i.adc_pin_init) + fputc 0x00002571 Thumb Code 66 lib_printf.o(i.fputc) + init_all_subdevice_state 0x000025bd Thumb Code 58 main.o(i.init_all_subdevice_state) + main 0x000025f9 Thumb Code 178 main.o(i.main) + onkey 0x0000273d Thumb Code 110 main.o(i.onkey) + port_adc_get_fan_power 0x000027e5 Thumb Code 30 port.o(i.port_adc_get_fan_power) + port_adc_get_ozone_generator_power 0x00002809 Thumb Code 42 port.o(i.port_adc_get_ozone_generator_power) + port_debug_set 0x00002839 Thumb Code 18 port.o(i.port_debug_set) + port_fan_get 0x0000284b Thumb Code 18 port.o(i.port_fan_get) + port_fan_set 0x0000285d Thumb Code 26 port.o(i.port_fan_set) + port_gpio_get_interval_key_state 0x00002877 Thumb Code 18 port.o(i.port_gpio_get_interval_key_state) + port_gpio_get_level_key_state 0x00002889 Thumb Code 18 port.o(i.port_gpio_get_level_key_state) + port_gpio_get_power_key_state 0x0000289b Thumb Code 18 port.o(i.port_gpio_get_power_key_state) + port_gpio_get_timer_key_state 0x000028ad Thumb Code 18 port.o(i.port_gpio_get_timer_key_state) + port_init 0x000028c1 Thumb Code 276 port.o(i.port_init) + port_led0_set 0x000029dd Thumb Code 18 port.o(i.port_led0_set) + port_led1_set 0x000029ef Thumb Code 18 port.o(i.port_led1_set) + port_led2_set 0x00002a01 Thumb Code 18 port.o(i.port_led2_set) + port_led3_set 0x00002a13 Thumb Code 18 port.o(i.port_led3_set) + port_led_b_set 0x00002a25 Thumb Code 18 port.o(i.port_led_b_set) + port_led_g_set 0x00002a37 Thumb Code 18 port.o(i.port_led_g_set) + port_led_r_set 0x00002a49 Thumb Code 18 port.o(i.port_led_r_set) + port_ozone_pwm_set_duty 0x00002a5d Thumb Code 28 port.o(i.port_ozone_pwm_set_duty) + port_ozone_pwm_start 0x00002a7d Thumb Code 12 port.o(i.port_ozone_pwm_start) + systicket_delay_ms 0x00002ae9 Thumb Code 26 systicket.o(i.systicket_delay_ms) + systicket_do_debug_light_state 0x00002b05 Thumb Code 64 main.o(i.systicket_do_debug_light_state) + systicket_get_now_ms 0x00002b4d Thumb Code 6 systicket.o(i.systicket_get_now_ms) + systicket_haspassedms 0x00002b59 Thumb Code 28 systicket.o(i.systicket_haspassedms) + systicket_init 0x00002b75 Thumb Code 54 systicket.o(i.systicket_init) + test_all_light 0x00002bb5 Thumb Code 310 test.o(i.test_all_light) + uart0_init 0x00002cf9 Thumb Code 128 uart0.o(i.uart0_init) + zgpio_get_default_input_config 0x00002e11 Thumb Code 22 gpio.o(i.zgpio_get_default_input_config) + zgpio_get_default_ode_output_config 0x00002e2d Thumb Code 26 gpio.o(i.zgpio_get_default_ode_output_config) + zgpio_get_default_output_config 0x00002e4d Thumb Code 22 gpio.o(i.zgpio_get_default_output_config) + zgpio_init_all_gpio 0x00002e69 Thumb Code 2 gpio.o(i.zgpio_init_all_gpio) + zgpio_init_as_input 0x00002e6b Thumb Code 16 gpio.o(i.zgpio_init_as_input) + zgpio_init_as_output 0x00002e7b Thumb Code 26 gpio.o(i.zgpio_init_as_output) + zkey_do_loop_in_each_period 0x00002e95 Thumb Code 50 key.o(i.zkey_do_loop_in_each_period) + zkey_init 0x00002ed1 Thumb Code 108 key.o(i.zkey_init) + zkey_process_each 0x00002f45 Thumb Code 62 key.o(i.zkey_process_each) + zpwm_init 0x00002f83 Thumb Code 218 pwm_1.o(i.zpwm_init) + zpwm_set_duty 0x0000305d Thumb Code 180 pwm_1.o(i.zpwm_set_duty) + zpwm_set_duty_ns 0x00003115 Thumb Code 150 pwm_1.o(i.zpwm_set_duty_ns) + zpwm_set_freq 0x000031b5 Thumb Code 74 pwm_1.o(i.zpwm_set_freq) + zpwm_start 0x000031ff Thumb Code 92 pwm_1.o(i.zpwm_start) + zpwm_stop 0x0000325b Thumb Code 88 pwm_1.o(i.zpwm_stop) + Region$$Table$$Base 0x000032e4 Number 0 anon$$obj.o(Region$$Table) + Region$$Table$$Limit 0x00003304 Number 0 anon$$obj.o(Region$$Table) a 0x20000000 Data 4 main.o(.data) key_module 0x20000074 Data 12 main.o(.data) SystemCoreClock 0x2000009c Data 4 system_es8p5066.o(.data) @@ -1407,209 +1345,204 @@ Memory Map of the image Image Entry point : 0x000000c1 - Load Region LR_IROM1 (Base: 0x00000000, Size: 0x000033d0, Max: 0x00010000, ABSOLUTE) + Load Region LR_IROM1 (Base: 0x00000000, Size: 0x000033cc, Max: 0x00010000, ABSOLUTE) - Execution Region ER_IROM1 (Exec base: 0x00000000, Load base: 0x00000000, Size: 0x00003308, Max: 0x00010000, ABSOLUTE) + Execution Region ER_IROM1 (Exec base: 0x00000000, Load base: 0x00000000, Size: 0x00003304, Max: 0x00010000, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x00000000 0x00000000 0x000000c0 Data RO 1896 RESET startup_es8p5066.o - 0x000000c0 0x000000c0 0x00000000 Code RO 2232 * .ARM.Collect$$$$00000000 mc_p.l(entry.o) - 0x000000c0 0x000000c0 0x00000004 Code RO 2526 .ARM.Collect$$$$00000001 mc_p.l(entry2.o) - 0x000000c4 0x000000c4 0x00000004 Code RO 2529 .ARM.Collect$$$$00000004 mc_p.l(entry5.o) - 0x000000c8 0x000000c8 0x00000000 Code RO 2531 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o) - 0x000000c8 0x000000c8 0x00000000 Code RO 2533 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o) - 0x000000c8 0x000000c8 0x00000008 Code RO 2534 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o) - 0x000000d0 0x000000d0 0x00000004 Code RO 2541 .ARM.Collect$$$$0000000E mc_p.l(entry12b.o) - 0x000000d4 0x000000d4 0x00000000 Code RO 2536 .ARM.Collect$$$$0000000F mc_p.l(entry10a.o) - 0x000000d4 0x000000d4 0x00000000 Code RO 2538 .ARM.Collect$$$$00000011 mc_p.l(entry11a.o) - 0x000000d4 0x000000d4 0x00000004 Code RO 2527 .ARM.Collect$$$$00002712 mc_p.l(entry2.o) - 0x000000d8 0x000000d8 0x0000001c Code RO 1897 .text startup_es8p5066.o - 0x000000f4 0x000000f4 0x0000002c Code RO 2235 .text mc_p.l(uidiv.o) - 0x00000120 0x00000120 0x0000001c Code RO 2237 .text mc_p.l(strcmp.o) - 0x0000013c 0x0000013c 0x0000007a Code RO 2500 .text mf_p.l(fmul.o) - 0x000001b6 0x000001b6 0x0000007c Code RO 2502 .text mf_p.l(fdiv.o) + 0x00000000 0x00000000 0x000000c0 Data RO 382 RESET startup_es8p5066.o + 0x000000c0 0x000000c0 0x00000000 Code RO 2109 * .ARM.Collect$$$$00000000 mc_p.l(entry.o) + 0x000000c0 0x000000c0 0x00000004 Code RO 2401 .ARM.Collect$$$$00000001 mc_p.l(entry2.o) + 0x000000c4 0x000000c4 0x00000004 Code RO 2404 .ARM.Collect$$$$00000004 mc_p.l(entry5.o) + 0x000000c8 0x000000c8 0x00000000 Code RO 2406 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o) + 0x000000c8 0x000000c8 0x00000000 Code RO 2408 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o) + 0x000000c8 0x000000c8 0x00000008 Code RO 2409 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o) + 0x000000d0 0x000000d0 0x00000004 Code RO 2416 .ARM.Collect$$$$0000000E mc_p.l(entry12b.o) + 0x000000d4 0x000000d4 0x00000000 Code RO 2411 .ARM.Collect$$$$0000000F mc_p.l(entry10a.o) + 0x000000d4 0x000000d4 0x00000000 Code RO 2413 .ARM.Collect$$$$00000011 mc_p.l(entry11a.o) + 0x000000d4 0x000000d4 0x00000004 Code RO 2402 .ARM.Collect$$$$00002712 mc_p.l(entry2.o) + 0x000000d8 0x000000d8 0x0000001c Code RO 383 .text startup_es8p5066.o + 0x000000f4 0x000000f4 0x0000002c Code RO 2112 .text mc_p.l(uidiv.o) + 0x00000120 0x00000120 0x0000001c Code RO 2114 .text mc_p.l(strcmp.o) + 0x0000013c 0x0000013c 0x0000007a Code RO 2377 .text mf_p.l(fmul.o) + 0x000001b6 0x000001b6 0x0000007c Code RO 2379 .text mf_p.l(fdiv.o) 0x00000232 0x00000232 0x00000002 PAD - 0x00000234 0x00000234 0x000000d0 Code RO 2504 .text mf_p.l(dmul.o) - 0x00000304 0x00000304 0x000000f0 Code RO 2506 .text mf_p.l(ddiv.o) - 0x000003f4 0x000003f4 0x0000000e Code RO 2508 .text mf_p.l(ffltui.o) + 0x00000234 0x00000234 0x000000d0 Code RO 2381 .text mf_p.l(dmul.o) + 0x00000304 0x00000304 0x000000f0 Code RO 2383 .text mf_p.l(ddiv.o) + 0x000003f4 0x000003f4 0x0000000e Code RO 2385 .text mf_p.l(ffltui.o) 0x00000402 0x00000402 0x00000002 PAD - 0x00000404 0x00000404 0x00000028 Code RO 2510 .text mf_p.l(dflti.o) - 0x0000042c 0x0000042c 0x0000001c Code RO 2512 .text mf_p.l(dfltui.o) - 0x00000448 0x00000448 0x00000028 Code RO 2514 .text mf_p.l(ffixui.o) - 0x00000470 0x00000470 0x0000003c Code RO 2518 .text mf_p.l(dfixui.o) - 0x000004ac 0x000004ac 0x00000028 Code RO 2520 .text mf_p.l(f2d.o) - 0x000004d4 0x000004d4 0x00000028 Code RO 2522 .text mf_p.l(cdcmple.o) - 0x000004fc 0x000004fc 0x00000038 Code RO 2524 .text mf_p.l(d2f.o) - 0x00000534 0x00000534 0x00000060 Code RO 2543 .text mc_p.l(uldiv.o) - 0x00000594 0x00000594 0x00000022 Code RO 2545 .text mc_p.l(llushr.o) - 0x000005b6 0x000005b6 0x00000000 Code RO 2547 .text mc_p.l(iusefp.o) - 0x000005b6 0x000005b6 0x00000082 Code RO 2548 .text mf_p.l(fepilogue.o) - 0x00000638 0x00000638 0x000000be Code RO 2550 .text mf_p.l(depilogue.o) + 0x00000404 0x00000404 0x00000028 Code RO 2387 .text mf_p.l(dflti.o) + 0x0000042c 0x0000042c 0x0000001c Code RO 2389 .text mf_p.l(dfltui.o) + 0x00000448 0x00000448 0x00000028 Code RO 2391 .text mf_p.l(ffixui.o) + 0x00000470 0x00000470 0x0000003c Code RO 2393 .text mf_p.l(dfixui.o) + 0x000004ac 0x000004ac 0x00000028 Code RO 2395 .text mf_p.l(f2d.o) + 0x000004d4 0x000004d4 0x00000028 Code RO 2397 .text mf_p.l(cdcmple.o) + 0x000004fc 0x000004fc 0x00000038 Code RO 2399 .text mf_p.l(d2f.o) + 0x00000534 0x00000534 0x00000060 Code RO 2418 .text mc_p.l(uldiv.o) + 0x00000594 0x00000594 0x00000022 Code RO 2420 .text mc_p.l(llushr.o) + 0x000005b6 0x000005b6 0x00000000 Code RO 2422 .text mc_p.l(iusefp.o) + 0x000005b6 0x000005b6 0x00000082 Code RO 2423 .text mf_p.l(fepilogue.o) + 0x00000638 0x00000638 0x000000be Code RO 2425 .text mf_p.l(depilogue.o) 0x000006f6 0x000006f6 0x00000002 PAD - 0x000006f8 0x000006f8 0x00000168 Code RO 2554 .text mf_p.l(dadd.o) - 0x00000860 0x00000860 0x00000040 Code RO 2556 .text mf_p.l(dfixul.o) - 0x000008a0 0x000008a0 0x00000028 Code RO 2558 .text mf_p.l(cdrcmple.o) - 0x000008c8 0x000008c8 0x00000024 Code RO 2560 .text mc_p.l(init.o) - 0x000008ec 0x000008ec 0x00000020 Code RO 2562 .text mc_p.l(llshl.o) - 0x0000090c 0x0000090c 0x00000026 Code RO 2564 .text mc_p.l(llsshr.o) + 0x000006f8 0x000006f8 0x00000168 Code RO 2429 .text mf_p.l(dadd.o) + 0x00000860 0x00000860 0x00000040 Code RO 2431 .text mf_p.l(dfixul.o) + 0x000008a0 0x000008a0 0x00000028 Code RO 2433 .text mf_p.l(cdrcmple.o) + 0x000008c8 0x000008c8 0x00000024 Code RO 2435 .text mc_p.l(init.o) + 0x000008ec 0x000008ec 0x00000020 Code RO 2437 .text mc_p.l(llshl.o) + 0x0000090c 0x0000090c 0x00000026 Code RO 2439 .text mc_p.l(llsshr.o) 0x00000932 0x00000932 0x00000002 PAD - 0x00000934 0x00000934 0x00000010 Code RO 536 i.ADC_ClearIFStatus lib_adc.o - 0x00000944 0x00000944 0x00000010 Code RO 539 i.ADC_GetConvValue lib_adc.o - 0x00000954 0x00000954 0x00000018 Code RO 541 i.ADC_GetIFStatus lib_adc.o - 0x0000096c 0x0000096c 0x00000150 Code RO 542 i.ADC_Init lib_adc.o - 0x00000abc 0x00000abc 0x00000030 Code RO 543 i.ADC_Reset lib_adc.o - 0x00000aec 0x00000aec 0x00000018 Code RO 544 i.ADC_Set_CH lib_adc.o - 0x00000b04 0x00000b04 0x00000028 Code RO 545 i.ADC_SoftStart lib_adc.o - 0x00000b2c 0x00000b2c 0x00000028 Code RO 546 i.ADC_SoftStop lib_adc.o - 0x00000b54 0x00000b54 0x00000034 Code RO 1065 i.DeviceClockAllEnable lib_scu.o - 0x00000b88 0x00000b88 0x000000b8 Code RO 627 i.GPIO_GetNormalBitOffsetFromPin lib_gpio.o - 0x00000c40 0x00000c40 0x00000086 Code RO 628 i.GPIO_Init lib_gpio.o + 0x00000934 0x00000934 0x00000010 Code RO 461 i.ADC_ClearIFStatus lib_adc.o + 0x00000944 0x00000944 0x00000010 Code RO 464 i.ADC_GetConvValue lib_adc.o + 0x00000954 0x00000954 0x00000018 Code RO 466 i.ADC_GetIFStatus lib_adc.o + 0x0000096c 0x0000096c 0x00000150 Code RO 467 i.ADC_Init lib_adc.o + 0x00000abc 0x00000abc 0x00000030 Code RO 468 i.ADC_Reset lib_adc.o + 0x00000aec 0x00000aec 0x00000018 Code RO 469 i.ADC_Set_CH lib_adc.o + 0x00000b04 0x00000b04 0x00000028 Code RO 470 i.ADC_SoftStart lib_adc.o + 0x00000b2c 0x00000b2c 0x00000028 Code RO 471 i.ADC_SoftStop lib_adc.o + 0x00000b54 0x00000b54 0x00000034 Code RO 990 i.DeviceClockAllEnable lib_scu.o + 0x00000b88 0x00000b88 0x000000b8 Code RO 552 i.GPIO_GetNormalBitOffsetFromPin lib_gpio.o + 0x00000c40 0x00000c40 0x00000086 Code RO 553 i.GPIO_Init lib_gpio.o 0x00000cc6 0x00000cc6 0x00000002 PAD - 0x00000cc8 0x00000cc8 0x00000030 Code RO 629 i.GPIO_ReadBit lib_gpio.o - 0x00000cf8 0x00000cf8 0x00000068 Code RO 632 i.GPIO_SetDSRegFromPin lib_gpio.o - 0x00000d60 0x00000d60 0x0000004c Code RO 633 i.GPIO_SetDirRegFromPin lib_gpio.o - 0x00000dac 0x00000dac 0x000003bc Code RO 634 i.GPIO_SetFuncxRegFromPin lib_gpio.o - 0x00001168 0x00001168 0x00000068 Code RO 635 i.GPIO_SetODERegFromPin lib_gpio.o - 0x000011d0 0x000011d0 0x00000068 Code RO 636 i.GPIO_SetPDERegFromPin lib_gpio.o - 0x00001238 0x00001238 0x00000068 Code RO 637 i.GPIO_SetPUERegFromPin lib_gpio.o - 0x000012a0 0x000012a0 0x00000068 Code RO 638 i.GPIO_SetPortFLTFromPin lib_gpio.o - 0x00001308 0x00001308 0x00000068 Code RO 639 i.GPIO_SetPortTypeFromPin lib_gpio.o - 0x00001370 0x00001370 0x00000068 Code RO 640 i.GPIO_SetSingalTypeFromPin lib_gpio.o - 0x000013d8 0x000013d8 0x0000004c Code RO 643 i.GPIO_WriteBit lib_gpio.o - 0x00001424 0x00001424 0x000000cc Code RO 1068 i.HRC_Config lib_scu.o - 0x000014f0 0x000014f0 0x00000004 Code RO 1903 i.HardFault_IRQHandler irqhandler.o - 0x000014f4 0x000014f4 0x00000002 Code RO 1904 i.NMI_IRQHandler irqhandler.o - 0x000014f6 0x000014f6 0x00000002 PAD - 0x000014f8 0x000014f8 0x00000064 Code RO 1026 i.NVIC_Init lib_scs.o - 0x0000155c 0x0000155c 0x00000002 Code RO 1905 i.PendSV_IRQHandler irqhandler.o - 0x0000155e 0x0000155e 0x00000002 PAD - 0x00001560 0x00001560 0x0000002c Code RO 1077 i.SCU_SysClkSelect lib_scu.o - 0x0000158c 0x0000158c 0x00000002 Code RO 1906 i.SVC_IRQHandler irqhandler.o - 0x0000158e 0x0000158e 0x00000002 PAD - 0x00001590 0x00001590 0x00000010 Code RO 2059 i.SysTick_IRQHandler systicket.o - 0x000015a0 0x000015a0 0x00000040 Code RO 1029 i.SysTick_Init lib_scs.o - 0x000015e0 0x000015e0 0x00000024 Code RO 438 i.SystemInit system_es8p5066.o - 0x00001604 0x00001604 0x00000064 Code RO 1279 i.T16Nx_BaseInit lib_timer.o - 0x00001668 0x00001668 0x0000000a Code RO 1282 i.T16Nx_Disable lib_timer.o - 0x00001672 0x00001672 0x0000000c Code RO 1283 i.T16Nx_Enable lib_timer.o - 0x0000167e 0x0000167e 0x00000008 Code RO 1293 i.T16Nx_GetTOP0 lib_timer.o - 0x00001686 0x00001686 0x00000008 Code RO 1294 i.T16Nx_GetTOP1 lib_timer.o - 0x0000168e 0x0000168e 0x00000018 Code RO 1296 i.T16Nx_MAT0ITConfig lib_timer.o - 0x000016a6 0x000016a6 0x00000018 Code RO 1297 i.T16Nx_MAT0Out0Config lib_timer.o - 0x000016be 0x000016be 0x00000018 Code RO 1298 i.T16Nx_MAT1ITConfig lib_timer.o - 0x000016d6 0x000016d6 0x00000018 Code RO 1299 i.T16Nx_MAT1Out0Config lib_timer.o - 0x000016ee 0x000016ee 0x00000018 Code RO 1300 i.T16Nx_MAT2ITConfig lib_timer.o - 0x00001706 0x00001706 0x00000018 Code RO 1301 i.T16Nx_MAT2Out1Config lib_timer.o - 0x0000171e 0x0000171e 0x00000018 Code RO 1302 i.T16Nx_MAT3ITConfig lib_timer.o - 0x00001736 0x00001736 0x00000018 Code RO 1303 i.T16Nx_MAT3Out1Config lib_timer.o - 0x0000174e 0x0000174e 0x00000080 Code RO 1304 i.T16Nx_PMWOutInit lib_timer.o - 0x000017ce 0x000017ce 0x00000024 Code RO 1309 i.T16Nx_SetCNT0 lib_timer.o - 0x000017f2 0x000017f2 0x00000024 Code RO 1310 i.T16Nx_SetCNT1 lib_timer.o - 0x00001816 0x00001816 0x0000000e Code RO 1311 i.T16Nx_SetMAT0 lib_timer.o - 0x00001824 0x00001824 0x0000000e Code RO 1312 i.T16Nx_SetMAT1 lib_timer.o - 0x00001832 0x00001832 0x0000000e Code RO 1313 i.T16Nx_SetMAT2 lib_timer.o - 0x00001840 0x00001840 0x0000000e Code RO 1314 i.T16Nx_SetMAT3 lib_timer.o - 0x0000184e 0x0000184e 0x0000000e Code RO 1317 i.T16Nx_SetTOP0 lib_timer.o - 0x0000185c 0x0000185c 0x0000000e Code RO 1318 i.T16Nx_SetTOP1 lib_timer.o - 0x0000186a 0x0000186a 0x00000004 Code RO 1715 i.UART_ClearITPendingBit lib_uart.o - 0x0000186e 0x0000186e 0x00000010 Code RO 1716 i.UART_GetFlagStatus lib_uart.o - 0x0000187e 0x0000187e 0x00000014 Code RO 1719 i.UART_ITConfig lib_uart.o - 0x00001892 0x00001892 0x00000002 PAD - 0x00001894 0x00001894 0x00000168 Code RO 1720 i.UART_Init lib_uart.o - 0x000019fc 0x000019fc 0x00000006 Code RO 1725 i.UART_SendByte lib_uart.o - 0x00001a02 0x00001a02 0x00000010 Code RO 1728 i.UART_TBIMConfig lib_uart.o - 0x00001a12 0x00001a12 0x00000002 PAD - 0x00001a14 0x00001a14 0x00000020 Code RO 2472 i.__0printf mc_p.l(printfa.o) - 0x00001a34 0x00001a34 0x0000002e Code RO 2552 i.__ARM_clz mf_p.l(depilogue.o) - 0x00001a62 0x00001a62 0x0000001c Code RO 858 i.__ARM_common_switch8 lib_gpio.o - 0x00001a7e 0x00001a7e 0x0000000e Code RO 2568 i.__scatterload_copy mc_p.l(handlers.o) - 0x00001a8c 0x00001a8c 0x00000002 Code RO 2569 i.__scatterload_null mc_p.l(handlers.o) - 0x00001a8e 0x00001a8e 0x0000000e Code RO 2570 i.__scatterload_zeroinit mc_p.l(handlers.o) - 0x00001a9c 0x00001a9c 0x00000174 Code RO 2479 i._fp_digits mc_p.l(printfa.o) - 0x00001c10 0x00001c10 0x000006f0 Code RO 2480 i._printf_core mc_p.l(printfa.o) - 0x00002300 0x00002300 0x00000020 Code RO 2481 i._printf_post_padding mc_p.l(printfa.o) - 0x00002320 0x00002320 0x0000002c Code RO 2482 i._printf_pre_padding mc_p.l(printfa.o) - 0x0000234c 0x0000234c 0x000000f0 Code RO 1944 i.adc_get_chnum adc_1.o - 0x0000243c 0x0000243c 0x00000012 Code RO 1945 i.adc_get_value adc_1.o - 0x0000244e 0x0000244e 0x00000034 Code RO 1946 i.adc_get_value_by_adcch adc_1.o - 0x00002482 0x00002482 0x00000002 PAD - 0x00002484 0x00002484 0x00000040 Code RO 1947 i.adc_get_voltage adc_1.o - 0x000024c4 0x000024c4 0x0000003c Code RO 1948 i.adc_module_init adc_1.o - 0x00002500 0x00002500 0x00000028 Code RO 1949 i.adc_pin_init adc_1.o - 0x00002528 0x00002528 0x00000058 Code RO 2179 i.calculate_top pwm_1.o - 0x00002580 0x00002580 0x0000004c Code RO 999 i.fputc lib_printf.o - 0x000025cc 0x000025cc 0x00000174 Code RO 3 i.main main.o - 0x00002740 0x00002740 0x000000a8 Code RO 4 i.onkey main.o - 0x000027e8 0x000027e8 0x00000024 Code RO 134 i.port_adc_get_fan_power port.o - 0x0000280c 0x0000280c 0x00000030 Code RO 136 i.port_adc_get_ozone_generator_power port.o - 0x0000283c 0x0000283c 0x00000012 Code RO 138 i.port_debug_set port.o - 0x0000284e 0x0000284e 0x00000012 Code RO 139 i.port_fan_get port.o - 0x00002860 0x00002860 0x0000001a Code RO 140 i.port_fan_set port.o - 0x0000287a 0x0000287a 0x00000012 Code RO 141 i.port_gpio_get_interval_key_state port.o - 0x0000288c 0x0000288c 0x00000012 Code RO 142 i.port_gpio_get_level_key_state port.o - 0x0000289e 0x0000289e 0x00000012 Code RO 143 i.port_gpio_get_power_key_state port.o - 0x000028b0 0x000028b0 0x00000012 Code RO 144 i.port_gpio_get_timer_key_state port.o - 0x000028c2 0x000028c2 0x00000002 PAD - 0x000028c4 0x000028c4 0x0000011c Code RO 145 i.port_init port.o - 0x000029e0 0x000029e0 0x00000012 Code RO 147 i.port_led0_set port.o - 0x000029f2 0x000029f2 0x00000012 Code RO 149 i.port_led1_set port.o - 0x00002a04 0x00002a04 0x00000012 Code RO 151 i.port_led2_set port.o - 0x00002a16 0x00002a16 0x00000012 Code RO 153 i.port_led3_set port.o - 0x00002a28 0x00002a28 0x00000012 Code RO 154 i.port_led_b_set port.o - 0x00002a3a 0x00002a3a 0x00000012 Code RO 155 i.port_led_g_set port.o - 0x00002a4c 0x00002a4c 0x00000012 Code RO 156 i.port_led_r_set port.o - 0x00002a5e 0x00002a5e 0x00000002 PAD - 0x00002a60 0x00002a60 0x00000020 Code RO 157 i.port_ozone_pwm_set_duty port.o - 0x00002a80 0x00002a80 0x00000010 Code RO 158 i.port_ozone_pwm_start port.o - 0x00002a90 0x00002a90 0x0000005c Code RO 2134 i.prv_zkey_process_each_after_filter key_1.o - 0x00002aec 0x00002aec 0x0000001a Code RO 2060 i.systicket_delay_ms systicket.o - 0x00002b06 0x00002b06 0x00000002 PAD - 0x00002b08 0x00002b08 0x00000048 Code RO 5 i.systicket_do_debug_light_state main.o - 0x00002b50 0x00002b50 0x0000000c Code RO 2061 i.systicket_get_now_ms systicket.o - 0x00002b5c 0x00002b5c 0x0000001c Code RO 2062 i.systicket_haspassedms systicket.o - 0x00002b78 0x00002b78 0x00000040 Code RO 2063 i.systicket_init systicket.o - 0x00002bb8 0x00002bb8 0x00000144 Code RO 341 i.test_all_light test.o - 0x00002cfc 0x00002cfc 0x00000084 Code RO 2106 i.uart0_init uart0_1.o - 0x00002d80 0x00002d80 0x00000092 Code RO 2107 i.uart0_init_pin uart0_1.o - 0x00002e12 0x00002e12 0x00000002 PAD - 0x00002e14 0x00002e14 0x0000001c Code RO 2005 i.zgpio_get_default_input_config gpio.o - 0x00002e30 0x00002e30 0x00000020 Code RO 2006 i.zgpio_get_default_ode_output_config gpio.o - 0x00002e50 0x00002e50 0x0000001c Code RO 2007 i.zgpio_get_default_output_config gpio.o - 0x00002e6c 0x00002e6c 0x00000002 Code RO 2008 i.zgpio_init_all_gpio gpio.o - 0x00002e6e 0x00002e6e 0x00000010 Code RO 2009 i.zgpio_init_as_input gpio.o - 0x00002e7e 0x00002e7e 0x0000001a Code RO 2010 i.zgpio_init_as_output gpio.o - 0x00002e98 0x00002e98 0x0000003c Code RO 2135 i.zkey_do_loop_in_each_period key_1.o - 0x00002ed4 0x00002ed4 0x00000074 Code RO 2136 i.zkey_init key_1.o - 0x00002f48 0x00002f48 0x0000003e Code RO 2137 i.zkey_process_each key_1.o - 0x00002f86 0x00002f86 0x000000da Code RO 2180 i.zpwm_init pwm_1.o - 0x00003060 0x00003060 0x000000b8 Code RO 2181 i.zpwm_set_duty pwm_1.o - 0x00003118 0x00003118 0x000000a0 Code RO 2182 i.zpwm_set_duty_ns pwm_1.o - 0x000031b8 0x000031b8 0x0000004a Code RO 2183 i.zpwm_set_freq pwm_1.o - 0x00003202 0x00003202 0x0000005c Code RO 2184 i.zpwm_start pwm_1.o - 0x0000325e 0x0000325e 0x00000058 Code RO 2185 i.zpwm_stop pwm_1.o - 0x000032b6 0x000032b6 0x00000002 PAD - 0x000032b8 0x000032b8 0x0000002d Data RO 6 .conststring main.o - 0x000032e5 0x000032e5 0x00000003 PAD - 0x000032e8 0x000032e8 0x00000020 Data RO 2566 Region$$Table anon$$obj.o + 0x00000cc8 0x00000cc8 0x00000030 Code RO 554 i.GPIO_ReadBit lib_gpio.o + 0x00000cf8 0x00000cf8 0x00000068 Code RO 557 i.GPIO_SetDSRegFromPin lib_gpio.o + 0x00000d60 0x00000d60 0x0000004c Code RO 558 i.GPIO_SetDirRegFromPin lib_gpio.o + 0x00000dac 0x00000dac 0x000003bc Code RO 559 i.GPIO_SetFuncxRegFromPin lib_gpio.o + 0x00001168 0x00001168 0x00000068 Code RO 560 i.GPIO_SetODERegFromPin lib_gpio.o + 0x000011d0 0x000011d0 0x00000068 Code RO 561 i.GPIO_SetPDERegFromPin lib_gpio.o + 0x00001238 0x00001238 0x00000068 Code RO 562 i.GPIO_SetPUERegFromPin lib_gpio.o + 0x000012a0 0x000012a0 0x00000068 Code RO 563 i.GPIO_SetPortFLTFromPin lib_gpio.o + 0x00001308 0x00001308 0x00000068 Code RO 564 i.GPIO_SetPortTypeFromPin lib_gpio.o + 0x00001370 0x00001370 0x00000068 Code RO 565 i.GPIO_SetSingalTypeFromPin lib_gpio.o + 0x000013d8 0x000013d8 0x0000004c Code RO 568 i.GPIO_WriteBit lib_gpio.o + 0x00001424 0x00001424 0x000000cc Code RO 993 i.HRC_Config lib_scu.o + 0x000014f0 0x000014f0 0x00000064 Code RO 951 i.NVIC_Init lib_scs.o + 0x00001554 0x00001554 0x0000002c Code RO 1002 i.SCU_SysClkSelect lib_scu.o + 0x00001580 0x00001580 0x00000010 Code RO 1936 i.SysTick_IRQHandler systicket.o + 0x00001590 0x00001590 0x00000040 Code RO 954 i.SysTick_Init lib_scs.o + 0x000015d0 0x000015d0 0x00000024 Code RO 356 i.SystemInit system_es8p5066.o + 0x000015f4 0x000015f4 0x00000064 Code RO 1204 i.T16Nx_BaseInit lib_timer.o + 0x00001658 0x00001658 0x0000000a Code RO 1207 i.T16Nx_Disable lib_timer.o + 0x00001662 0x00001662 0x0000000c Code RO 1208 i.T16Nx_Enable lib_timer.o + 0x0000166e 0x0000166e 0x00000008 Code RO 1218 i.T16Nx_GetTOP0 lib_timer.o + 0x00001676 0x00001676 0x00000008 Code RO 1219 i.T16Nx_GetTOP1 lib_timer.o + 0x0000167e 0x0000167e 0x00000018 Code RO 1221 i.T16Nx_MAT0ITConfig lib_timer.o + 0x00001696 0x00001696 0x00000018 Code RO 1222 i.T16Nx_MAT0Out0Config lib_timer.o + 0x000016ae 0x000016ae 0x00000018 Code RO 1223 i.T16Nx_MAT1ITConfig lib_timer.o + 0x000016c6 0x000016c6 0x00000018 Code RO 1224 i.T16Nx_MAT1Out0Config lib_timer.o + 0x000016de 0x000016de 0x00000018 Code RO 1225 i.T16Nx_MAT2ITConfig lib_timer.o + 0x000016f6 0x000016f6 0x00000018 Code RO 1226 i.T16Nx_MAT2Out1Config lib_timer.o + 0x0000170e 0x0000170e 0x00000018 Code RO 1227 i.T16Nx_MAT3ITConfig lib_timer.o + 0x00001726 0x00001726 0x00000018 Code RO 1228 i.T16Nx_MAT3Out1Config lib_timer.o + 0x0000173e 0x0000173e 0x00000080 Code RO 1229 i.T16Nx_PMWOutInit lib_timer.o + 0x000017be 0x000017be 0x00000024 Code RO 1234 i.T16Nx_SetCNT0 lib_timer.o + 0x000017e2 0x000017e2 0x00000024 Code RO 1235 i.T16Nx_SetCNT1 lib_timer.o + 0x00001806 0x00001806 0x0000000e Code RO 1236 i.T16Nx_SetMAT0 lib_timer.o + 0x00001814 0x00001814 0x0000000e Code RO 1237 i.T16Nx_SetMAT1 lib_timer.o + 0x00001822 0x00001822 0x0000000e Code RO 1238 i.T16Nx_SetMAT2 lib_timer.o + 0x00001830 0x00001830 0x0000000e Code RO 1239 i.T16Nx_SetMAT3 lib_timer.o + 0x0000183e 0x0000183e 0x0000000e Code RO 1242 i.T16Nx_SetTOP0 lib_timer.o + 0x0000184c 0x0000184c 0x0000000e Code RO 1243 i.T16Nx_SetTOP1 lib_timer.o + 0x0000185a 0x0000185a 0x00000004 Code RO 1640 i.UART_ClearITPendingBit lib_uart.o + 0x0000185e 0x0000185e 0x00000010 Code RO 1641 i.UART_GetFlagStatus lib_uart.o + 0x0000186e 0x0000186e 0x00000014 Code RO 1644 i.UART_ITConfig lib_uart.o + 0x00001882 0x00001882 0x00000002 PAD + 0x00001884 0x00001884 0x00000168 Code RO 1645 i.UART_Init lib_uart.o + 0x000019ec 0x000019ec 0x00000006 Code RO 1650 i.UART_SendByte lib_uart.o + 0x000019f2 0x000019f2 0x00000010 Code RO 1653 i.UART_TBIMConfig lib_uart.o + 0x00001a02 0x00001a02 0x00000002 PAD + 0x00001a04 0x00001a04 0x00000020 Code RO 2349 i.__0printf mc_p.l(printfa.o) + 0x00001a24 0x00001a24 0x0000002e Code RO 2427 i.__ARM_clz mf_p.l(depilogue.o) + 0x00001a52 0x00001a52 0x0000001c Code RO 783 i.__ARM_common_switch8 lib_gpio.o + 0x00001a6e 0x00001a6e 0x0000000e Code RO 2443 i.__scatterload_copy mc_p.l(handlers.o) + 0x00001a7c 0x00001a7c 0x00000002 Code RO 2444 i.__scatterload_null mc_p.l(handlers.o) + 0x00001a7e 0x00001a7e 0x0000000e Code RO 2445 i.__scatterload_zeroinit mc_p.l(handlers.o) + 0x00001a8c 0x00001a8c 0x00000174 Code RO 2356 i._fp_digits mc_p.l(printfa.o) + 0x00001c00 0x00001c00 0x000006f0 Code RO 2357 i._printf_core mc_p.l(printfa.o) + 0x000022f0 0x000022f0 0x00000020 Code RO 2358 i._printf_post_padding mc_p.l(printfa.o) + 0x00002310 0x00002310 0x0000002c Code RO 2359 i._printf_pre_padding mc_p.l(printfa.o) + 0x0000233c 0x0000233c 0x000000f0 Code RO 1821 i.adc_get_chnum adc.o + 0x0000242c 0x0000242c 0x00000012 Code RO 1822 i.adc_get_value adc.o + 0x0000243e 0x0000243e 0x00000034 Code RO 1823 i.adc_get_value_by_adcch adc.o + 0x00002472 0x00002472 0x00000002 PAD + 0x00002474 0x00002474 0x00000040 Code RO 1824 i.adc_get_voltage adc.o + 0x000024b4 0x000024b4 0x0000003c Code RO 1825 i.adc_module_init adc.o + 0x000024f0 0x000024f0 0x00000028 Code RO 1826 i.adc_pin_init adc.o + 0x00002518 0x00002518 0x00000058 Code RO 2056 i.calculate_top pwm_1.o + 0x00002570 0x00002570 0x0000004c Code RO 924 i.fputc lib_printf.o + 0x000025bc 0x000025bc 0x0000003a Code RO 3 i.init_all_subdevice_state main.o + 0x000025f6 0x000025f6 0x00000002 PAD + 0x000025f8 0x000025f8 0x00000144 Code RO 4 i.main main.o + 0x0000273c 0x0000273c 0x000000a8 Code RO 5 i.onkey main.o + 0x000027e4 0x000027e4 0x00000024 Code RO 137 i.port_adc_get_fan_power port.o + 0x00002808 0x00002808 0x00000030 Code RO 139 i.port_adc_get_ozone_generator_power port.o + 0x00002838 0x00002838 0x00000012 Code RO 141 i.port_debug_set port.o + 0x0000284a 0x0000284a 0x00000012 Code RO 142 i.port_fan_get port.o + 0x0000285c 0x0000285c 0x0000001a Code RO 143 i.port_fan_set port.o + 0x00002876 0x00002876 0x00000012 Code RO 144 i.port_gpio_get_interval_key_state port.o + 0x00002888 0x00002888 0x00000012 Code RO 145 i.port_gpio_get_level_key_state port.o + 0x0000289a 0x0000289a 0x00000012 Code RO 146 i.port_gpio_get_power_key_state port.o + 0x000028ac 0x000028ac 0x00000012 Code RO 147 i.port_gpio_get_timer_key_state port.o + 0x000028be 0x000028be 0x00000002 PAD + 0x000028c0 0x000028c0 0x0000011c Code RO 148 i.port_init port.o + 0x000029dc 0x000029dc 0x00000012 Code RO 150 i.port_led0_set port.o + 0x000029ee 0x000029ee 0x00000012 Code RO 152 i.port_led1_set port.o + 0x00002a00 0x00002a00 0x00000012 Code RO 154 i.port_led2_set port.o + 0x00002a12 0x00002a12 0x00000012 Code RO 156 i.port_led3_set port.o + 0x00002a24 0x00002a24 0x00000012 Code RO 157 i.port_led_b_set port.o + 0x00002a36 0x00002a36 0x00000012 Code RO 158 i.port_led_g_set port.o + 0x00002a48 0x00002a48 0x00000012 Code RO 159 i.port_led_r_set port.o + 0x00002a5a 0x00002a5a 0x00000002 PAD + 0x00002a5c 0x00002a5c 0x00000020 Code RO 160 i.port_ozone_pwm_set_duty port.o + 0x00002a7c 0x00002a7c 0x00000010 Code RO 161 i.port_ozone_pwm_start port.o + 0x00002a8c 0x00002a8c 0x0000005c Code RO 2011 i.prv_zkey_process_each_after_filter key.o + 0x00002ae8 0x00002ae8 0x0000001a Code RO 1937 i.systicket_delay_ms systicket.o + 0x00002b02 0x00002b02 0x00000002 PAD + 0x00002b04 0x00002b04 0x00000048 Code RO 6 i.systicket_do_debug_light_state main.o + 0x00002b4c 0x00002b4c 0x0000000c Code RO 1938 i.systicket_get_now_ms systicket.o + 0x00002b58 0x00002b58 0x0000001c Code RO 1939 i.systicket_haspassedms systicket.o + 0x00002b74 0x00002b74 0x00000040 Code RO 1940 i.systicket_init systicket.o + 0x00002bb4 0x00002bb4 0x00000144 Code RO 329 i.test_all_light test.o + 0x00002cf8 0x00002cf8 0x00000084 Code RO 1983 i.uart0_init uart0.o + 0x00002d7c 0x00002d7c 0x00000092 Code RO 1984 i.uart0_init_pin uart0.o + 0x00002e0e 0x00002e0e 0x00000002 PAD + 0x00002e10 0x00002e10 0x0000001c Code RO 1882 i.zgpio_get_default_input_config gpio.o + 0x00002e2c 0x00002e2c 0x00000020 Code RO 1883 i.zgpio_get_default_ode_output_config gpio.o + 0x00002e4c 0x00002e4c 0x0000001c Code RO 1884 i.zgpio_get_default_output_config gpio.o + 0x00002e68 0x00002e68 0x00000002 Code RO 1885 i.zgpio_init_all_gpio gpio.o + 0x00002e6a 0x00002e6a 0x00000010 Code RO 1886 i.zgpio_init_as_input gpio.o + 0x00002e7a 0x00002e7a 0x0000001a Code RO 1887 i.zgpio_init_as_output gpio.o + 0x00002e94 0x00002e94 0x0000003c Code RO 2012 i.zkey_do_loop_in_each_period key.o + 0x00002ed0 0x00002ed0 0x00000074 Code RO 2013 i.zkey_init key.o + 0x00002f44 0x00002f44 0x0000003e Code RO 2014 i.zkey_process_each key.o + 0x00002f82 0x00002f82 0x000000da Code RO 2057 i.zpwm_init pwm_1.o + 0x0000305c 0x0000305c 0x000000b8 Code RO 2058 i.zpwm_set_duty pwm_1.o + 0x00003114 0x00003114 0x000000a0 Code RO 2059 i.zpwm_set_duty_ns pwm_1.o + 0x000031b4 0x000031b4 0x0000004a Code RO 2060 i.zpwm_set_freq pwm_1.o + 0x000031fe 0x000031fe 0x0000005c Code RO 2061 i.zpwm_start pwm_1.o + 0x0000325a 0x0000325a 0x00000058 Code RO 2062 i.zpwm_stop pwm_1.o + 0x000032b2 0x000032b2 0x00000002 PAD + 0x000032b4 0x000032b4 0x0000002d Data RO 7 .conststring main.o + 0x000032e1 0x000032e1 0x00000003 PAD + 0x000032e4 0x000032e4 0x00000020 Data RO 2441 Region$$Table anon$$obj.o - Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x00003308, Size: 0x000004f0, Max: 0x00001000, ABSOLUTE) + Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x00003304, Size: 0x000004f0, Max: 0x00001000, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x20000000 0x00003308 0x00000090 Data RW 7 .data main.o - 0x20000090 0x00003398 0x0000000c Data RW 342 .data test.o - 0x2000009c 0x000033a4 0x00000004 Data RW 439 .data system_es8p5066.o - 0x200000a0 0x000033a8 0x00000001 Data RW 1950 .data adc_1.o - 0x200000a1 0x000033a9 0x00000015 Data RW 2011 .data gpio.o - 0x200000b6 0x000033be 0x00000002 PAD - 0x200000b8 0x000033c0 0x00000004 Data RW 2064 .data systicket.o - 0x200000bc 0x000033c4 0x00000005 Data RW 2138 .data key_1.o - 0x200000c1 0x000033c9 0x00000003 PAD - 0x200000c4 0x000033cc 0x00000004 Data RW 2542 .data mc_p.l(stdout.o) - 0x200000c8 - 0x00000028 Zero RW 160 .bss port.o - 0x200000f0 - 0x00000400 Zero RW 1894 STACK startup_es8p5066.o + 0x20000000 0x00003304 0x00000090 Data RW 8 .data main.o + 0x20000090 0x00003394 0x0000000c Data RW 330 .data test.o + 0x2000009c 0x000033a0 0x00000004 Data RW 357 .data system_es8p5066.o + 0x200000a0 0x000033a4 0x00000001 Data RW 1827 .data adc.o + 0x200000a1 0x000033a5 0x00000015 Data RW 1888 .data gpio.o + 0x200000b6 0x000033ba 0x00000002 PAD + 0x200000b8 0x000033bc 0x00000004 Data RW 1941 .data systicket.o + 0x200000bc 0x000033c0 0x00000005 Data RW 2015 .data key.o + 0x200000c1 0x000033c5 0x00000003 PAD + 0x200000c4 0x000033c8 0x00000004 Data RW 2417 .data mc_p.l(stdout.o) + 0x200000c8 - 0x00000028 Zero RW 163 .bss port.o + 0x200000f0 - 0x00000400 Zero RW 380 STACK startup_es8p5066.o ============================================================================== @@ -1619,10 +1552,9 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug Object Name - 474 78 0 1 0 3812 adc_1.o + 474 78 0 1 0 3812 adc.o 132 18 0 21 0 3532 gpio.o - 10 0 0 0 0 1741 irqhandler.o - 330 24 0 5 0 4890 key_1.o + 330 24 0 5 0 4890 key.o 544 44 0 0 0 4464 lib_adc.o 2230 158 0 0 0 8992 lib_gpio.o 76 10 0 0 0 2488 lib_printf.o @@ -1630,19 +1562,19 @@ Image component sizes 300 30 0 0 0 1675 lib_scu.o 614 0 0 0 0 12111 lib_timer.o 422 10 0 0 0 3820 lib_uart.o - 612 210 45 144 0 73927 main.o + 622 212 45 144 0 74366 main.o 676 28 0 0 40 10773 port.o 904 24 0 0 0 5224 pwm_1.o - 28 8 192 0 1024 656 startup_es8p5066.o + 28 8 192 0 1024 648 startup_es8p5066.o 36 10 0 4 0 723 system_es8p5066.o 146 20 0 4 0 2847 systicket.o 324 14 0 12 0 621 test.o - 278 4 0 0 0 1705 uart0_1.o + 278 4 0 0 0 1705 uart0.o ---------------------------------------------------------------------- - 8324 700 272 196 1064 145528 Object Totals + 8320 702 272 196 1064 144218 Object Totals 0 0 32 0 0 0 (incl. Generated) - 24 0 3 5 0 0 (incl. Padding) + 20 0 3 5 0 0 (incl. Padding) ---------------------------------------------------------------------- @@ -1707,15 +1639,15 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug - 12792 866 272 200 1064 142068 Grand Totals - 12792 866 272 200 1064 142068 ELF Image Totals - 12792 866 272 200 0 0 ROM Totals + 12788 868 272 200 1064 140890 Grand Totals + 12788 868 272 200 1064 140890 ELF Image Totals + 12788 868 272 200 0 0 ROM Totals ============================================================================== - Total RO Size (Code + RO Data) 13064 ( 12.76kB) + Total RO Size (Code + RO Data) 13060 ( 12.75kB) Total RW Size (RW Data + ZI Data) 1264 ( 1.23kB) - Total ROM Size (Code + RO Data + RW Data) 13264 ( 12.95kB) + Total ROM Size (Code + RO Data + RW Data) 13260 ( 12.95kB) ============================================================================== diff --git a/project_ozone/project_o.uvgui.zel b/project_ozone/project_o.uvgui.zel index 1cbab5d..8e431af 100644 --- a/project_ozone/project_o.uvgui.zel +++ b/project_ozone/project_o.uvgui.zel @@ -6,7 +6,7 @@
### uVision Project, (C) Keil Software
- F:\workspace\project_ozone_generator\ozone_generator_es8p5066\APP + F:\workspace\project_ozone_generator\ozone_generator_es8p5066\CMSIS @@ -93,25 +93,25 @@ 0 1 - -32000 - -32000 + -1 + -1 -1 -1 - 136 - -249 - 1196 - 1042 + 48 + 344 + 1789 + 954 0 - 666 - 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000005000000030000000100000048463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C746573742E630000000006746573742E6300000000C5D4F200FFFFFFFF47463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C70776D2E63000000000570776D2E6300000000FFDC7800FFFFFFFF50463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C7A65733870353036366C69625C70776D2E63000000000570776D2E6300000000BECEA100FFFFFFFF48463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C706F72742E630000000006706F72742E6300000000F0A0A100FFFFFFFF51463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C7A65733870353036366C69625C6770696F2E6300000000066770696F2E6300000000BCA8E100FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000002B000000F6000000A4040000AC020000 + 710 + 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000005000000040000000100000048463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C746573742E630000000006746573742E6300000000C5D4F200FFFFFFFF50463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C7A65733870353036366C69625C70776D2E63000000000570776D2E6300000000FFDC7800FFFFFFFF48463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C706F72742E630000000006706F72742E6300000000BECEA100FFFFFFFF51463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C7A65733870353036366C69625C6770696F2E6300000000066770696F2E6300000000F0A0A100FFFFFFFF61463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C736572766963655C6C696768745F636F6E74726F6C5F736572766963652E6300000000176C696768745F636F6E74726F6C5F736572766963652E6300000000BCA8E100FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000007C0200009E000000F506000054020000 @@ -134,7 +134,7 @@ 16 - 19020000D0000000B506000060010000 + 540200009E000000F00600002E010000 @@ -1799,14 +1799,14 @@ 3332 - 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFF4000000DF00000090050000E3000000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E65002000000000000019020000D0000000B506000060010000F40000004F00000090050000DF0000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A004000029020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000C5050000D0000000B5060000AA020000A00400004F000000900500002902000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF180100004F0000001C010000050200000100000002000010040000000100000074FFFFFFE9060000FFFFFFFF05000000ED0300006D000000C3000000C4000000739400000180001000000100000025010000D00000003D02000086020000000000004F00000018010000050200000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000015020000900500001902000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000000000000250100009A020000B50600003E030000000000001902000090050000BD02000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFC802000019020000CC020000BD02000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF00000000050200009505000009020000010000000100001004000000010000002CFDFFFFB800000000000000000000000000000001000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000001000000250100008A020000BA060000D1030000000000000902000095050000500300000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF0000000000000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFF4000000DF00000090050000E3000000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000000000000540200009E000000F00600002E010000F40000004F00000090050000DF0000000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF9C0400004F000000A004000029020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000000600009E000000F006000078020000A00400004F000000900500002902000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF180100004F0000001C010000050200000100000002000010040000000100000074FFFFFFE9060000FFFFFFFF05000000ED0300006D000000C3000000C40000007394000001800010000001000000600100009E0000007802000054020000000000004F00000018010000050200000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000015020000900500001902000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB090000018000800000000000006001000068020000F00600000C030000000000001902000090050000BD02000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFC802000019020000CC020000BD02000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF00000000050200009505000009020000010000000100001004000000010000002CFDFFFFB800000000000000000000000000000001000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF01000077940000018000800000010000006001000058020000F50600009F030000000000000902000095050000500300000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF0000000000000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 59392 File 2537 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050FFFFFFFF0096000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000004000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050FFFFFFFF0096000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -3603,21 +3603,12 @@ 0 100 - 3 + 4 ..\APP\test.c - 22 - 1 - 29 - 1 - - 0 - - - ..\APP\pwm.c 0 1 - 1 + 10 1 0 @@ -3649,6 +3640,15 @@ 0 + + ..\APP\service\light_control_service.c + 18 + 1 + 3 + 1 + + 0 + diff --git a/project_ozone/project_o.uvopt b/project_ozone/project_o.uvopt index 91a9099..32940ca 100644 --- a/project_ozone/project_o.uvopt +++ b/project_ozone/project_o.uvopt @@ -253,8 +253,8 @@ 0 0 0 - ..\APP\light.c - light.c + ..\APP\test.c + test.c 0 0 @@ -265,8 +265,8 @@ 0 0 0 - ..\APP\ozone_pwm_control.c - ozone_pwm_control.c + ..\APP\service\light_control_service.c + light_control_service.c 0 0 @@ -277,20 +277,8 @@ 0 0 0 - ..\APP\test.c - test.c - 0 - 0 - - - 1 - 6 - 1 - 0 - 0 - 0 - ..\APP\pwm.c - pwm.c + ..\APP\service\ozone_control_service.c + ozone_control_service.c 0 0 @@ -304,7 +292,7 @@ 0 2 - 7 + 6 1 0 0 @@ -314,6 +302,18 @@ 0 0 + + 2 + 7 + 2 + 0 + 0 + 0 + ..\CMSIS\startup_ES8P5066.s + startup_ES8P5066.s + 0 + 0 + @@ -457,7 +457,7 @@ - MDK_StartUp + zes8p5066lib 0 0 0 @@ -465,46 +465,6 @@ 4 19 - 2 - 0 - 0 - 0 - ..\MDK_StartUp\startup_ES8P5066.s - startup_ES8P5066.s - 0 - 0 - - - - - PlatForm - 1 - 0 - 0 - 0 - - 5 - 20 - 1 - 0 - 0 - 0 - ..\PlatForm\irqhandler.c - irqhandler.c - 0 - 0 - - - - - zes8p5066lib - 1 - 0 - 0 - 0 - - 6 - 21 1 0 0 @@ -515,8 +475,8 @@ 0 - 6 - 22 + 4 + 20 1 0 0 @@ -527,8 +487,8 @@ 0 - 6 - 23 + 4 + 21 1 0 0 @@ -539,8 +499,8 @@ 0 - 6 - 24 + 4 + 22 1 0 0 @@ -551,8 +511,8 @@ 0 - 6 - 25 + 4 + 23 1 0 0 @@ -563,8 +523,8 @@ 0 - 6 - 26 + 4 + 24 1 0 0 diff --git a/project_ozone/project_o.uvproj b/project_ozone/project_o.uvproj index 13b948e..759c75e 100644 --- a/project_ozone/project_o.uvproj +++ b/project_ozone/project_o.uvproj @@ -433,24 +433,19 @@ ..\APP\port.c - light.c - 1 - ..\APP\light.c - - - ozone_pwm_control.c + test.c 1 - ..\APP\ozone_pwm_control.c + ..\APP\test.c - test.c + light_control_service.c 1 - ..\APP\test.c + ..\APP\service\light_control_service.c - pwm.c + ozone_control_service.c 1 - ..\APP\pwm.c + ..\APP\service\ozone_control_service.c @@ -462,6 +457,11 @@ 1 ..\CMSIS\system_es8p5066.c + + startup_ES8P5066.s + 2 + ..\CMSIS\startup_ES8P5066.s + @@ -525,26 +525,6 @@ - MDK_StartUp - - - startup_ES8P5066.s - 2 - ..\MDK_StartUp\startup_ES8P5066.s - - - - - PlatForm - - - irqhandler.c - 1 - ..\PlatForm\irqhandler.c - - - - zes8p5066lib