diff --git a/APP/main.c b/APP/main.c index 500e597..206cee3 100644 --- a/APP/main.c +++ b/APP/main.c @@ -40,11 +40,16 @@ static uint32_t compute_countdown_num(int countdowns) { if (countdowns) return countdowns / kconst_countdown_step_s + !!(countdowns % kconst_countdown_step_s); } +uint32_t freq = 34000; +uint32_t dutyns = 5000; + static void shutdwon() { printf("power off\n"); thisDevice.poweron = false; port_fan_set(false); //@TODO:关闭臭氧 + port_ozone_pwm_stop(); + port_ozone_pwm_set_duty(freq, dutyns); } static void increase_and_assign_countdonwnum() { @@ -53,6 +58,7 @@ static void increase_and_assign_countdonwnum() { thisDevice.countdonwnum_s = 0; thisDevice.countdonw_setting_num = 0; lcs_active_input(knone_active); + thisDevice.mode = knormal; } else { thisDevice.countdonwnum_s = (thisDevice.countdonwnum + 1) * kconst_countdown_step_s; thisDevice.countdonwnum = thisDevice.countdonwnum + 1; @@ -114,6 +120,8 @@ static void onkey(zkey_t* key, zkey_state_t key_state) { if (strcmp(key->name, "timerkey") == 0 && zks_rising_edge == key_state) { if (!thisDevice.poweron) return; printf("on %s \n", key->name); + port_fan_set(true); + // TODO:启动臭氧 if (!lcs_input_is_active(kchange_countdonw_time_input)) { lcs_active_input(kchange_countdonw_time_input); if (thisDevice.mode != ktimingMode || thisDevice.countdonwnum_s == 0) { @@ -129,6 +137,9 @@ static void onkey(zkey_t* key, zkey_state_t key_state) { if (strcmp(key->name, "intervalkey") == 0 && zks_rising_edge == key_state) { if (!thisDevice.poweron) return; printf("on %s \n", key->name); + // TODO:启动臭氧 + + port_fan_set(true); if (!lcs_input_is_active(kchange_intermittentmode_time_input)) { lcs_active_input(kchange_intermittentmode_time_input); @@ -351,7 +362,6 @@ void printf_ozone_freq_and_power_table() { while (true) { } } -#endif // void printf_ozone_freq_and_power_table() { // /** @@ -462,6 +472,12 @@ void checkdevice() { * 设备异常检查: * 频率调节到达极限,也无法匹配上频率 * + * + * 1. 先在25k->40k之间找到谐振点 + * 2. 拟合谐振点到往前5k的曲线,计算其斜率 + * 3. 拟合40k往前5k曲线的斜率 + * + * */ printf("checkdevice\r\n"); float indicator_1 = 0; @@ -532,6 +548,7 @@ void checkdevice() { resonant_frequency = minpowerfreq; } } +#endif void init_all_subdevice_state() { port_debug_set(false); @@ -570,9 +587,8 @@ int main(void) { * @brief * 频率从20k起步,递增50hz,每次等待100ms计算功率 */ - - printf_ozone_freq_and_power_table(); - + // printf_ozone_freq_and_power_table(); + // ozone_control_init(); while (true) { //按键扫描逻辑 DO_IT_EACH_MS(KEY_PERIOD) { zkey_do_loop_in_each_period(NULL); } diff --git a/APP/service/frequency_sweep_service.c b/APP/service/frequency_sweep_service.c new file mode 100644 index 0000000..caef818 --- /dev/null +++ b/APP/service/frequency_sweep_service.c @@ -0,0 +1,135 @@ +#include "frequency_sweep_service.h" + +#include "zes8p5066lib/basic.h" +#include "zes8p5066lib/systicket.h" + +/*********************************************************************************************************************** + * ====================================================卡尔曼滤波===================================================== * + ***********************************************************************************************************************/ +typedef struct { + float LastP; //上次估算协方差 初始化值为0.02 + float Now_P; //当前估算协方差 初始化值为0 + float out; //卡尔曼滤波器输出 初始化值为0 + float Kg; //卡尔曼增益 初始化值为0 + float Q; //过程噪声协方差 初始化值为0.001 + float R; //观测噪声协方差 初始化值为0.543 +} KFP; // Kalman Filter parameter + +// 2. 以高度为例 定义卡尔曼结构体并初始化参数 +/** + *卡尔曼滤波器 + *@param KFP *kfp 卡尔曼结构体参数 + * float input 需要滤波的参数的测量值(即传感器的采集值) + *@return 滤波后的参数(最优值) + */ +float kalmanFilter(KFP* kfp, float input) { + //预测协方差方程:k时刻系统估算协方差 = k-1时刻的系统协方差 + 过程噪声协方差 + kfp->Now_P = kfp->LastP + kfp->Q; + //卡尔曼增益方程:卡尔曼增益 = k时刻系统估算协方差 / (k时刻系统估算协方差 + 观测噪声协方差) + kfp->Kg = kfp->Now_P / (kfp->Now_P + kfp->R); + //更新最优值方程:k时刻状态变量的最优值 = 状态变量的预测值 + 卡尔曼增益 * (测量值 - 状态变量的预测值) + kfp->out = kfp->out + kfp->Kg * (input - kfp->out); //因为这一次的预测值就是上一次的输出值 + //更新协方差方程: 本次的系统协方差付给 kfp->LastP 威下一次运算准备。 + kfp->LastP = (1 - kfp->Kg) * kfp->Now_P; + return kfp->out; +} + +/*********************************************************************************************************************** + * ====================================================THIS_MODULE==================================================== * + ***********************************************************************************************************************/ + +struct { + float power_table[350]; + uint16_t startfreq; + uint16_t endfreq; + uint16_t step; + bool is_schedule; + bool firstloop; + uint16_t nowfreq; + uint32_t startticket; + uint32_t dutyns; +} this; + +KFP KFPConfig = {0.02, 0, 0, 0, 0.05, 0.543}; + +/*********************************************************************************************************************** + * ====================================================PowerTable===================================================== * + ***********************************************************************************************************************/ +static void mf_setpower(uint16_t freq, float power) { + uint16_t index = (freq - this.startfreq) / this.step; + + if (index >= ZARR_SIZE(this.power_table)) return; + this.power_table[index] = power; +} +static float mf_getpower(uint16_t freq) { + uint16_t index = (freq - this.startfreq) / this.step; + + if (index >= ZARR_SIZE(this.power_table)) return 0; + if (index > (this.endfreq - this.startfreq) / this.step) { + return 0; + } + return this.power_table[index]; +} + +static float mf_get_ozone_power() { + float powersum = 0; + for (size_t i = 0; i < 10; i++) { + powersum += port_adc_get_ozone_generator_power(); + } + return powersum / 10; +} +/*********************************************************************************************************************** + * ======================================================Extern======================================================= * + ***********************************************************************************************************************/ +void frequency_sweep_start(uint32_t startfreq, uint32_t step, uint32_t endfreq, uint16_t dutyns) { + this.startfreq = startfreq; + this.endfreq = endfreq; + this.step = step; + this.dutyns = dutyns; + + this.firstloop = true; + this.is_schedule = true; + this.startticket = systicket_get_now_ms(); + this.nowfreq = this.startfreq; + printf("cls\n"); +} + +bool frequency_sweep_is_finished() { return !this.is_schedule; } +float frequency_sweep_get_power(uint16_t freq) { return mf_getpower(freq); } +void frequency_sweep_schedule() { + if (!this.is_schedule) { + return; + } + + /// loop + if (systicket_haspassedms(this.startticket) > 1) { + /** + * @brief 设置频率和占空比 + */ + port_ozone_pwm_set_duty(this.nowfreq, this.dutyns); + port_ozone_pwm_start(); + systicket_delay_ms(3); + /** + * @brief 读取当前功率 + */ + float power = mf_get_ozone_power(); + if (this.firstloop) { + KFPConfig.LastP = power; + } + + float afterfileter = kalmanFilter(&KFPConfig, power); + mf_setpower(this.nowfreq, afterfileter); + printf("%d,%f,%f\n", this.nowfreq, afterfileter, power); + /** + * @brief 更新频率 + */ + this.nowfreq += this.step; + if (this.nowfreq > this.endfreq) { + this.is_schedule = false; + } + port_ozone_pwm_stop(); + // + this.firstloop = false; + this.startticket = systicket_get_now_ms(); + } +} \ No newline at end of file diff --git a/APP/service/frequency_sweep_service.h b/APP/service/frequency_sweep_service.h new file mode 100644 index 0000000..88f548e --- /dev/null +++ b/APP/service/frequency_sweep_service.h @@ -0,0 +1,12 @@ +#pragma once +#include +#include + +#include "port.h" +#include "thisdevice.h" + +void frequency_sweep_start(uint32_t startfreq, uint32_t step, uint32_t endfreq, uint16_t dutyns); + +bool frequency_sweep_is_finished(); +float frequency_sweep_get_power(uint16_t freq); +void frequency_sweep_schedule(); \ No newline at end of file diff --git a/APP/service/ozone_control_service.c b/APP/service/ozone_control_service.c index 7d17dd8..bca6d82 100644 --- a/APP/service/ozone_control_service.c +++ b/APP/service/ozone_control_service.c @@ -1,82 +1,97 @@ -#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使能标志位 +#include "ozone_control_service.h" -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; +#include "frequency_sweep_service.h" +#if 0 -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; +float get_ozone_power() { + float powersum = 0; + for (size_t i = 0; i < 20; i++) { + powersum += port_adc_get_ozone_generator_power(); + } + return powersum / 20; } -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(); //更新大周期的开始时间(间歇时间的开始的时间) +static float mf_set_pwm_and_get_power(uint32_t freq, uint32_t dutyns) { + port_ozone_pwm_set_duty(freq, dutyns); + systicket_delay_ms(2); + float power1 = get_ozone_power(); + return power1; } -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 frequency_sweep(uint32_t startfreq, uint32_t step, uint32_t endfreq, uint16_t dutyns) { + /** + * @brief 扫频 + */ + s_power_table_startfreq = startfreq; + s_frequency_sweep_step = step; + s_power_table_endfreq = endfreq; + uint16_t nowfreq = startfreq; -void ozone_pwm_control_module_stop_pwm(void) { s_ozone_pwm_control_enable_falg = false; } + bool firstloop = true; + KFP KFPConfig = {0.02, 0, 0, 0, 0.03, 0.543}; -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); + port_ozone_pwm_set_duty(startfreq, dutyns); + port_ozone_pwm_start(); + systicket_delay_ms(3); + printf("frequency_sweep:startfreq:%d, step:%d, endfreq:%d, dutyns:%d\n", startfreq, step, endfreq, dutyns); + for (size_t i = 0; i < ARRAY_SIZE(s_power_table); i++) { + nowfreq = startfreq + i * s_frequency_sweep_step; + float power = mf_set_pwm_and_get_power(nowfreq, dutyns); + if (firstloop) { + firstloop = false; + KFPConfig.LastP = power; } - } else { - if (prv_pwm_is_enable()) { - printf("set rest\r\n"); - hardware_frequency = s_hardware_frequency; //将关闭之前的频率进行保存 - hardware_duty = s_hardware_duty; //将关闭之前的占空比进行保存 - prv_pwm_stop(); + float afterfileter = kalmanFilter(&KFPConfig, power); + setpower(nowfreq, power); + /** + * @brief dumptable + */ + printf("%d,%f,%f\n", nowfreq, s_power_table[i], afterfileter); + if (nowfreq >= s_power_table_endfreq) { + break; } } + port_ozone_pwm_stop(); +} + +float find_resonant_frequency(uint32_t startfreq, uint32_t endfreq) { + /** + * @brief + */ + float minpower = 0; + + +} +#endif +static struct { bool working; } this; + +void ozone_control_init(ozone_control_config_t* config) { + /** + * @brief 扫描频率 + */ + + while (!frequency_sweep_is_finished()) { + } } -#endif \ No newline at end of file + +void ozone_control_set_level(level_t level); +void ozone_control_start() { + frequency_sweep_start( + /*startfreq:*/ 20000, // + /*step :*/ 100, // + /*endfreq :*/ 40000, // + /*dutyns :*/ 5000 // + ); + this.working = true; +} +void ozone_control_stop() {} + +void ozone_control_schedule() { + // + frequency_sweep_schedule(); + // + + + +} \ No newline at end of file diff --git a/APP/service/ozone_control_service.h b/APP/service/ozone_control_service.h index 74bd5a9..ba8c11a 100644 --- a/APP/service/ozone_control_service.h +++ b/APP/service/ozone_control_service.h @@ -25,7 +25,6 @@ void ozone_control_start(); void ozone_control_stop(); float ozone_control_get_power(); - void ozone_control_schedule(); /** diff --git a/project_ozone/Listings/project_o.map b/project_ozone/Listings/project_o.map index bc8114f..1f16433 100644 --- a/project_ozone/Listings/project_o.map +++ b/project_ozone/Listings/project_o.map @@ -11,9 +11,6 @@ Section Cross References main.o(i.compute_countdown_num) refers to idiv.o(.text) for __aeabi_idivmod main.o(i.do_debug_light_state) refers to port.o(i.port_debug_set) for port_debug_set main.o(i.do_debug_light_state) refers to main.o(.data) for debug_led_state - main.o(i.get_ozone_power) refers to port.o(i.port_adc_get_ozone_generator_power) for port_adc_get_ozone_generator_power - main.o(i.get_ozone_power) refers to fadd.o(.text) for __aeabi_fadd - main.o(i.get_ozone_power) refers to fdiv.o(.text) for __aeabi_fdiv main.o(i.increase_and_assign_countdonwnum) refers to light_control_service.o(i.lcs_active_input) for lcs_active_input main.o(i.increase_and_assign_countdonwnum) refers to systicket.o(i.systicket_get_now_ms) for systicket_get_now_ms main.o(i.increase_and_assign_countdonwnum) refers to thisdevice.o(.bss) for thisDevice @@ -37,7 +34,6 @@ Section Cross References main.o(i.main) refers to key.o(i.zkey_init) for zkey_init main.o(i.main) refers to zsimple_timer.o(i.zsimple_timer_alloc) for zsimple_timer_alloc main.o(i.main) refers to zsimple_timer.o(i.zsimple_timer_trigger_static) for zsimple_timer_trigger_static - main.o(i.main) refers to main.o(i.printf_ozone_freq_and_power_table) for printf_ozone_freq_and_power_table 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.o(i.zkey_do_loop_in_each_period) for zkey_do_loop_in_each_period @@ -56,15 +52,6 @@ Section Cross References main.o(i.onkey) refers to main.o(i.set_countdown) for set_countdown main.o(i.onkey) refers to main.o(i.increase_and_assign_countdonwnum) for increase_and_assign_countdonwnum main.o(i.onkey) refers to thisdevice.o(.bss) for thisDevice - main.o(i.printf_ozone_freq_and_power_table) refers to ffltui.o(.text) for __aeabi_ui2f - main.o(i.printf_ozone_freq_and_power_table) refers to port.o(i.port_ozone_pwm_set_duty) for port_ozone_pwm_set_duty - main.o(i.printf_ozone_freq_and_power_table) refers to port.o(i.port_ozone_pwm_start) for port_ozone_pwm_start - main.o(i.printf_ozone_freq_and_power_table) refers to systicket.o(i.systicket_delay_ms) for systicket_delay_ms - main.o(i.printf_ozone_freq_and_power_table) refers to main.o(i.set_pwm_and_get_power) for set_pwm_and_get_power - main.o(i.printf_ozone_freq_and_power_table) refers to f2d.o(.text) for __aeabi_f2d - main.o(i.printf_ozone_freq_and_power_table) refers to printfa.o(i.__0printf) for __2printf - main.o(i.printf_ozone_freq_and_power_table) refers to port.o(i.port_ozone_pwm_stop) for port_ozone_pwm_stop - main.o(i.printf_ozone_freq_and_power_table) refers to port.o(i.port_fan_set) for port_fan_set main.o(i.process_countdwonevent) refers to main.o(i.compute_countdown) for compute_countdown main.o(i.process_countdwonevent) refers to main.o(i.shutdwon) for shutdwon main.o(i.process_countdwonevent) refers to port.o(i.port_fan_set) for port_fan_set @@ -74,13 +61,13 @@ Section Cross References main.o(i.process_countdwonevent) refers to thisdevice.o(.bss) for thisDevice main.o(i.set_countdown) refers to systicket.o(i.systicket_get_now_ms) for systicket_get_now_ms main.o(i.set_countdown) refers to thisdevice.o(.bss) for thisDevice - main.o(i.set_pwm_and_get_power) refers to ffltui.o(.text) for __aeabi_ui2f - main.o(i.set_pwm_and_get_power) refers to port.o(i.port_ozone_pwm_set_duty) for port_ozone_pwm_set_duty - main.o(i.set_pwm_and_get_power) refers to systicket.o(i.systicket_delay_ms) for systicket_delay_ms - main.o(i.set_pwm_and_get_power) refers to main.o(i.get_ozone_power) for get_ozone_power main.o(i.shutdwon) refers to printfa.o(i.__0printf) for __2printf main.o(i.shutdwon) refers to port.o(i.port_fan_set) for port_fan_set + main.o(i.shutdwon) refers to port.o(i.port_ozone_pwm_stop) for port_ozone_pwm_stop + main.o(i.shutdwon) refers to ffltui.o(.text) for __aeabi_ui2f + main.o(i.shutdwon) refers to port.o(i.port_ozone_pwm_set_duty) for port_ozone_pwm_set_duty main.o(i.shutdwon) refers to thisdevice.o(.bss) for thisDevice + main.o(i.shutdwon) refers to main.o(.data) for freq main.o(.data) refers to main.o(.conststring) for .conststring main.o(.data) refers to port.o(i.port_gpio_get_power_key_state) for port_gpio_get_power_key_state main.o(.data) refers to port.o(i.port_gpio_get_level_key_state) for port_gpio_get_level_key_state @@ -188,6 +175,10 @@ Section Cross References light_control_service.o(i.process_level_light) refers to light_control_service.o(i.mf_set_status_light_state) for mf_set_status_light_state light_control_service.o(i.process_level_light) refers to thisdevice.o(.bss) for thisDevice light_control_service.o(i.process_level_light) refers to light_control_service.o(.data) for lastticket + ozone_control_service.o(i.ozone_control_init) refers to frequency_sweep_service.o(i.frequency_sweep_is_finished) for frequency_sweep_is_finished + ozone_control_service.o(i.ozone_control_schedule) refers to frequency_sweep_service.o(i.frequency_sweep_schedule) for frequency_sweep_schedule + ozone_control_service.o(i.ozone_control_start) refers to frequency_sweep_service.o(i.frequency_sweep_start) for frequency_sweep_start + ozone_control_service.o(i.ozone_control_start) refers to ozone_control_service.o(.data) for this zsimple_timer.o(i.mf_findtimerbyid) refers to zsimple_timer.o(.data) for m_timermem zsimple_timer.o(i.mf_haspassedms) refers to systicket.o(i.systicket_get_now_ms) for systicket_get_now_ms zsimple_timer.o(i.mf_start_trigger) refers to memseta.o(.text) for __aeabi_memclr4 @@ -206,6 +197,35 @@ Section Cross References zsimple_timer.o(i.zsimple_timer_trigger) refers to zsimple_timer.o(i.mf_start_trigger) for mf_start_trigger zsimple_timer.o(i.zsimple_timer_trigger) refers to zsimple_timer.o(.data) for m_timermem zsimple_timer.o(i.zsimple_timer_trigger_static) refers to zsimple_timer.o(i.mf_start_trigger) for mf_start_trigger + frequency_sweep_service.o(i.frequency_sweep_get_power) refers to frequency_sweep_service.o(i.mf_getpower) for mf_getpower + frequency_sweep_service.o(i.frequency_sweep_is_finished) refers to frequency_sweep_service.o(.bss) for this + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to systicket.o(i.systicket_haspassedms) for systicket_haspassedms + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to ffltui.o(.text) for __aeabi_ui2f + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to port.o(i.port_ozone_pwm_set_duty) for port_ozone_pwm_set_duty + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to port.o(i.port_ozone_pwm_start) for port_ozone_pwm_start + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to systicket.o(i.systicket_delay_ms) for systicket_delay_ms + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to frequency_sweep_service.o(i.mf_get_ozone_power) for mf_get_ozone_power + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to frequency_sweep_service.o(i.kalmanFilter) for kalmanFilter + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to frequency_sweep_service.o(i.mf_setpower) for mf_setpower + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to f2d.o(.text) for __aeabi_f2d + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to printfa.o(i.__0printf) for __2printf + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to port.o(i.port_ozone_pwm_stop) for port_ozone_pwm_stop + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to systicket.o(i.systicket_get_now_ms) for systicket_get_now_ms + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to frequency_sweep_service.o(.bss) for this + frequency_sweep_service.o(i.frequency_sweep_schedule) refers to frequency_sweep_service.o(.data) for KFPConfig + frequency_sweep_service.o(i.frequency_sweep_start) refers to systicket.o(i.systicket_get_now_ms) for systicket_get_now_ms + frequency_sweep_service.o(i.frequency_sweep_start) refers to printfa.o(i.__0printf) for __2printf + frequency_sweep_service.o(i.frequency_sweep_start) refers to frequency_sweep_service.o(.bss) for this + frequency_sweep_service.o(i.kalmanFilter) refers to fadd.o(.text) for __aeabi_fadd + frequency_sweep_service.o(i.kalmanFilter) refers to fdiv.o(.text) for __aeabi_fdiv + frequency_sweep_service.o(i.kalmanFilter) refers to fmul.o(.text) for __aeabi_fmul + frequency_sweep_service.o(i.mf_get_ozone_power) refers to port.o(i.port_adc_get_ozone_generator_power) for port_adc_get_ozone_generator_power + frequency_sweep_service.o(i.mf_get_ozone_power) refers to fadd.o(.text) for __aeabi_fadd + frequency_sweep_service.o(i.mf_get_ozone_power) refers to fdiv.o(.text) for __aeabi_fdiv + frequency_sweep_service.o(i.mf_getpower) refers to idiv.o(.text) for __aeabi_idivmod + frequency_sweep_service.o(i.mf_getpower) refers to frequency_sweep_service.o(.bss) for this + frequency_sweep_service.o(i.mf_setpower) refers to idiv.o(.text) for __aeabi_idivmod + frequency_sweep_service.o(i.mf_setpower) refers to frequency_sweep_service.o(.bss) for this 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 @@ -686,6 +706,7 @@ Removing Unused input sections from the image. Removing port.o(.revsh_text), (4 bytes). Removing port.o(i.port_adc_get_fan_power), (36 bytes). Removing port.o(i.port_adc_get_fan_voltage), (14 bytes). + Removing port.o(i.port_adc_get_ozone_generator_power), (52 bytes). Removing port.o(i.port_adc_get_ozone_generator_voltage), (14 bytes). Removing port.o(i.port_led0_get_state), (20 bytes). Removing port.o(i.port_led1_get_state), (20 bytes). @@ -694,16 +715,36 @@ Removing Unused input sections from the image. Removing port.o(i.port_led_b_get), (20 bytes). Removing port.o(i.port_led_g_get), (20 bytes). Removing port.o(i.port_led_r_get), (20 bytes). + Removing port.o(i.port_ozone_pwm_start), (16 bytes). Removing test.o(.rev16_text), (4 bytes). Removing test.o(.revsh_text), (4 bytes). Removing test.o(i.test_all_light), (324 bytes). Removing test.o(.data), (12 bytes). Removing light_control_service.o(.rev16_text), (4 bytes). Removing light_control_service.o(.revsh_text), (4 bytes). + Removing ozone_control_service.o(.rev16_text), (4 bytes). + Removing ozone_control_service.o(.revsh_text), (4 bytes). + Removing ozone_control_service.o(i.ozone_control_init), (16 bytes). + Removing ozone_control_service.o(i.ozone_control_schedule), (8 bytes). + Removing ozone_control_service.o(i.ozone_control_start), (32 bytes). + Removing ozone_control_service.o(i.ozone_control_stop), (2 bytes). + Removing ozone_control_service.o(.data), (1 bytes). Removing zsimple_timer.o(i.mf_findtimerbyid), (68 bytes). Removing zsimple_timer.o(i.zsimple_timer_stop), (22 bytes). Removing zsimple_timer.o(i.zsimple_timer_stop_static), (10 bytes). Removing zsimple_timer.o(i.zsimple_timer_trigger), (168 bytes). + Removing frequency_sweep_service.o(.rev16_text), (4 bytes). + Removing frequency_sweep_service.o(.revsh_text), (4 bytes). + Removing frequency_sweep_service.o(i.frequency_sweep_get_power), (12 bytes). + Removing frequency_sweep_service.o(i.frequency_sweep_is_finished), (20 bytes). + Removing frequency_sweep_service.o(i.frequency_sweep_schedule), (228 bytes). + Removing frequency_sweep_service.o(i.frequency_sweep_start), (76 bytes). + Removing frequency_sweep_service.o(i.kalmanFilter), (86 bytes). + Removing frequency_sweep_service.o(i.mf_get_ozone_power), (44 bytes). + Removing frequency_sweep_service.o(i.mf_getpower), (72 bytes). + Removing frequency_sweep_service.o(i.mf_setpower), (48 bytes). + Removing frequency_sweep_service.o(.bss), (1420 bytes). + Removing frequency_sweep_service.o(.data), (24 bytes). Removing system_es8p5066.o(.rev16_text), (4 bytes). Removing system_es8p5066.o(.revsh_text), (4 bytes). Removing startup_es8p5066.o(HEAP), (0 bytes). @@ -721,9 +762,15 @@ Removing Unused input sections from the image. Removing lib_adc.o(.rev16_text), (4 bytes). Removing lib_adc.o(.revsh_text), (4 bytes). Removing lib_adc.o(i.ADC_ACPConfig), (308 bytes). + Removing lib_adc.o(i.ADC_ClearIFStatus), (16 bytes). Removing lib_adc.o(i.ADC_GetACPMeanValue), (16 bytes). Removing lib_adc.o(i.ADC_GetConvStatus), (24 bytes). + Removing lib_adc.o(i.ADC_GetConvValue), (16 bytes). Removing lib_adc.o(i.ADC_GetIEStatus), (24 bytes). + Removing lib_adc.o(i.ADC_GetIFStatus), (24 bytes). + Removing lib_adc.o(i.ADC_Set_CH), (24 bytes). + Removing lib_adc.o(i.ADC_SoftStart), (40 bytes). + Removing lib_adc.o(i.ADC_SoftStop), (40 bytes). Removing lib_adc.o(i.ADC_Start), (36 bytes). Removing lib_gpio.o(.rev16_text), (4 bytes). Removing lib_gpio.o(.revsh_text), (4 bytes). @@ -887,18 +934,24 @@ Removing Unused input sections from the image. Removing lib_wdt.o(i.WWDT_SetReloadValue), (16 bytes). Removing adc.o(.rev16_text), (4 bytes). Removing adc.o(.revsh_text), (4 bytes). + Removing adc.o(i.adc_get_value), (18 bytes). + Removing adc.o(i.adc_get_value_by_adcch), (52 bytes). + Removing adc.o(i.adc_get_voltage), (64 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 systicket.o(i.systicket_delay_ms), (26 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 pwm_1.o(i.zpwm_start), (92 bytes). + Removing fadd.o(.text), (178 bytes). -217 unused section(s) (total 6958 bytes) removed from the image. +250 unused section(s) (total 9721 bytes) removed from the image. ============================================================================== @@ -909,38 +962,38 @@ 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/division.c 0x00000000 Number 0 idiv.o ABSOLUTE - ../clib/microlib/division.c 0x00000000 Number 0 uldiv.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry12b.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 entry.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry12a.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.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/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE - ../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE - ../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry12b.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE ../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE + ../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE + ../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf7.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf3.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf1.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf2.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf0.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 printf4.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf5.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 printf4.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf3.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/memset.c 0x00000000 Number 0 memseta.o ABSOLUTE @@ -948,15 +1001,15 @@ Image Symbol Table ../clib/microlib/stubs.s 0x00000000 Number 0 iusefp.o ABSOLUTE ../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/fpadd.c 0x00000000 Number 0 fadd.o ABSOLUTE + ../fplib/microlib/fpadd.c 0x00000000 Number 0 dadd.o ABSOLUTE ../fplib/microlib/fpdiv.c 0x00000000 Number 0 ddiv.o ABSOLUTE ../fplib/microlib/fpdiv.c 0x00000000 Number 0 fdiv.o ABSOLUTE ../fplib/microlib/fpepilogue.c 0x00000000 Number 0 fepilogue.o ABSOLUTE ../fplib/microlib/fpepilogue.c 0x00000000 Number 0 depilogue.o ABSOLUTE - ../fplib/microlib/fpfix.c 0x00000000 Number 0 ffixui.o ABSOLUTE - ../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixul.o ABSOLUTE ../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixui.o ABSOLUTE + ../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixul.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 dfltui.o ABSOLUTE @@ -964,6 +1017,7 @@ Image Symbol Table ../fplib/microlib/fpmul.c 0x00000000 Number 0 dmul.o ABSOLUTE ..\APP\main.c 0x00000000 Number 0 main.o ABSOLUTE ..\APP\port.c 0x00000000 Number 0 port.o ABSOLUTE + ..\APP\service\frequency_sweep_service.c 0x00000000 Number 0 frequency_sweep_service.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\service\thisdevice.c 0x00000000 Number 0 thisdevice.o ABSOLUTE @@ -983,7 +1037,9 @@ Image Symbol Table ..\Library\Source\lib_wdt.c 0x00000000 Number 0 lib_wdt.o ABSOLUTE ..\\APP\\main.c 0x00000000 Number 0 main.o ABSOLUTE ..\\APP\\port.c 0x00000000 Number 0 port.o ABSOLUTE + ..\\APP\\service\\frequency_sweep_service.c 0x00000000 Number 0 frequency_sweep_service.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\\system_es8p5066.c 0x00000000 Number 0 system_es8p5066.o ABSOLUTE ..\\Library\\Source\\es8p5066_iap_table.c 0x00000000 Number 0 es8p5066_iap_table.o ABSOLUTE @@ -1031,224 +1087,207 @@ Image Symbol Table .text 0x00000120 Section 0 idiv.o(.text) .text 0x00000148 Section 0 memseta.o(.text) .text 0x0000016c Section 0 strcmp.o(.text) - .text 0x00000188 Section 0 fadd.o(.text) - .text 0x0000023a Section 0 fmul.o(.text) - .text 0x000002b4 Section 0 fdiv.o(.text) - .text 0x00000330 Section 0 dmul.o(.text) - .text 0x00000400 Section 0 ddiv.o(.text) - .text 0x000004f0 Section 0 ffltui.o(.text) - .text 0x00000500 Section 0 dflti.o(.text) - .text 0x00000528 Section 0 dfltui.o(.text) - .text 0x00000544 Section 0 ffixui.o(.text) - .text 0x0000056c Section 0 dfixui.o(.text) - .text 0x000005a8 Section 0 f2d.o(.text) - .text 0x000005d0 Section 40 cdcmple.o(.text) - .text 0x000005f8 Section 0 d2f.o(.text) - .text 0x00000630 Section 0 uldiv.o(.text) - .text 0x00000690 Section 0 llushr.o(.text) - .text 0x000006b2 Section 0 iusefp.o(.text) - .text 0x000006b2 Section 0 fepilogue.o(.text) - .text 0x00000734 Section 0 depilogue.o(.text) - .text 0x000007f4 Section 0 dadd.o(.text) - .text 0x0000095c Section 0 dfixul.o(.text) - .text 0x0000099c Section 40 cdrcmple.o(.text) - .text 0x000009c4 Section 36 init.o(.text) - .text 0x000009e8 Section 0 llshl.o(.text) - .text 0x00000a08 Section 0 llsshr.o(.text) - i.ADC_ClearIFStatus 0x00000a30 Section 0 lib_adc.o(i.ADC_ClearIFStatus) - i.ADC_GetConvValue 0x00000a40 Section 0 lib_adc.o(i.ADC_GetConvValue) - i.ADC_GetIFStatus 0x00000a50 Section 0 lib_adc.o(i.ADC_GetIFStatus) - i.ADC_Init 0x00000a68 Section 0 lib_adc.o(i.ADC_Init) - i.ADC_Reset 0x00000bb8 Section 0 lib_adc.o(i.ADC_Reset) - i.ADC_Set_CH 0x00000be8 Section 0 lib_adc.o(i.ADC_Set_CH) - i.ADC_SoftStart 0x00000c00 Section 0 lib_adc.o(i.ADC_SoftStart) - i.ADC_SoftStop 0x00000c28 Section 0 lib_adc.o(i.ADC_SoftStop) - i.DeviceClockAllEnable 0x00000c50 Section 0 lib_scu.o(i.DeviceClockAllEnable) - i.GPIO_GetNormalBitOffsetFromPin 0x00000c84 Section 0 lib_gpio.o(i.GPIO_GetNormalBitOffsetFromPin) - i.GPIO_Init 0x00000d3c Section 0 lib_gpio.o(i.GPIO_Init) - i.GPIO_ReadBit 0x00000dc4 Section 0 lib_gpio.o(i.GPIO_ReadBit) - i.GPIO_SetDSRegFromPin 0x00000df4 Section 0 lib_gpio.o(i.GPIO_SetDSRegFromPin) - i.GPIO_SetDirRegFromPin 0x00000e5c Section 0 lib_gpio.o(i.GPIO_SetDirRegFromPin) - i.GPIO_SetFuncxRegFromPin 0x00000ea8 Section 0 lib_gpio.o(i.GPIO_SetFuncxRegFromPin) - i.GPIO_SetODERegFromPin 0x00001264 Section 0 lib_gpio.o(i.GPIO_SetODERegFromPin) - i.GPIO_SetPDERegFromPin 0x000012cc Section 0 lib_gpio.o(i.GPIO_SetPDERegFromPin) - i.GPIO_SetPUERegFromPin 0x00001334 Section 0 lib_gpio.o(i.GPIO_SetPUERegFromPin) - i.GPIO_SetPortFLTFromPin 0x0000139c Section 0 lib_gpio.o(i.GPIO_SetPortFLTFromPin) - i.GPIO_SetPortTypeFromPin 0x00001404 Section 0 lib_gpio.o(i.GPIO_SetPortTypeFromPin) - i.GPIO_SetSingalTypeFromPin 0x0000146c Section 0 lib_gpio.o(i.GPIO_SetSingalTypeFromPin) - i.GPIO_WriteBit 0x000014d4 Section 0 lib_gpio.o(i.GPIO_WriteBit) - i.HRC_Config 0x00001520 Section 0 lib_scu.o(i.HRC_Config) - i.NVIC_Init 0x000015ec Section 0 lib_scs.o(i.NVIC_Init) - i.SCU_SysClkSelect 0x00001650 Section 0 lib_scu.o(i.SCU_SysClkSelect) - i.SysTick_IRQHandler 0x0000167c Section 0 systicket.o(i.SysTick_IRQHandler) - i.SysTick_Init 0x0000168c Section 0 lib_scs.o(i.SysTick_Init) - i.SystemInit 0x000016cc Section 0 system_es8p5066.o(i.SystemInit) - i.T16Nx_BaseInit 0x000016f0 Section 0 lib_timer.o(i.T16Nx_BaseInit) - i.T16Nx_Disable 0x00001754 Section 0 lib_timer.o(i.T16Nx_Disable) - i.T16Nx_Enable 0x0000175e Section 0 lib_timer.o(i.T16Nx_Enable) - i.T16Nx_GetTOP0 0x0000176a Section 0 lib_timer.o(i.T16Nx_GetTOP0) - i.T16Nx_GetTOP1 0x00001772 Section 0 lib_timer.o(i.T16Nx_GetTOP1) - i.T16Nx_MAT0ITConfig 0x0000177a Section 0 lib_timer.o(i.T16Nx_MAT0ITConfig) - i.T16Nx_MAT0Out0Config 0x00001792 Section 0 lib_timer.o(i.T16Nx_MAT0Out0Config) - i.T16Nx_MAT1ITConfig 0x000017aa Section 0 lib_timer.o(i.T16Nx_MAT1ITConfig) - i.T16Nx_MAT1Out0Config 0x000017c2 Section 0 lib_timer.o(i.T16Nx_MAT1Out0Config) - i.T16Nx_MAT2ITConfig 0x000017da Section 0 lib_timer.o(i.T16Nx_MAT2ITConfig) - i.T16Nx_MAT2Out1Config 0x000017f2 Section 0 lib_timer.o(i.T16Nx_MAT2Out1Config) - i.T16Nx_MAT3ITConfig 0x0000180a Section 0 lib_timer.o(i.T16Nx_MAT3ITConfig) - i.T16Nx_MAT3Out1Config 0x00001822 Section 0 lib_timer.o(i.T16Nx_MAT3Out1Config) - i.T16Nx_PMWOutInit 0x0000183a Section 0 lib_timer.o(i.T16Nx_PMWOutInit) - i.T16Nx_SetCNT0 0x000018ba Section 0 lib_timer.o(i.T16Nx_SetCNT0) - i.T16Nx_SetCNT1 0x000018de Section 0 lib_timer.o(i.T16Nx_SetCNT1) - i.T16Nx_SetMAT0 0x00001902 Section 0 lib_timer.o(i.T16Nx_SetMAT0) - i.T16Nx_SetMAT1 0x00001910 Section 0 lib_timer.o(i.T16Nx_SetMAT1) - i.T16Nx_SetMAT2 0x0000191e Section 0 lib_timer.o(i.T16Nx_SetMAT2) - i.T16Nx_SetMAT3 0x0000192c Section 0 lib_timer.o(i.T16Nx_SetMAT3) - i.T16Nx_SetTOP0 0x0000193a Section 0 lib_timer.o(i.T16Nx_SetTOP0) - i.T16Nx_SetTOP1 0x00001948 Section 0 lib_timer.o(i.T16Nx_SetTOP1) - i.UART_ClearITPendingBit 0x00001956 Section 0 lib_uart.o(i.UART_ClearITPendingBit) - i.UART_GetFlagStatus 0x0000195a Section 0 lib_uart.o(i.UART_GetFlagStatus) - i.UART_ITConfig 0x0000196a Section 0 lib_uart.o(i.UART_ITConfig) - i.UART_Init 0x00001980 Section 0 lib_uart.o(i.UART_Init) - i.UART_SendByte 0x00001ae8 Section 0 lib_uart.o(i.UART_SendByte) - i.UART_TBIMConfig 0x00001aee Section 0 lib_uart.o(i.UART_TBIMConfig) - i.__0printf 0x00001b00 Section 0 printfa.o(i.__0printf) - i.__ARM_clz 0x00001b20 Section 0 depilogue.o(i.__ARM_clz) - i.__ARM_common_switch8 0x00001b4e Section 0 lib_gpio.o(i.__ARM_common_switch8) - i.__scatterload_copy 0x00001b6a Section 14 handlers.o(i.__scatterload_copy) - i.__scatterload_null 0x00001b78 Section 2 handlers.o(i.__scatterload_null) - i.__scatterload_zeroinit 0x00001b7a Section 14 handlers.o(i.__scatterload_zeroinit) - i._fp_digits 0x00001b88 Section 0 printfa.o(i._fp_digits) - _fp_digits 0x00001b89 Thumb Code 344 printfa.o(i._fp_digits) - i._printf_core 0x00001cfc Section 0 printfa.o(i._printf_core) - _printf_core 0x00001cfd Thumb Code 1760 printfa.o(i._printf_core) - i._printf_post_padding 0x000023ec Section 0 printfa.o(i._printf_post_padding) - _printf_post_padding 0x000023ed Thumb Code 32 printfa.o(i._printf_post_padding) - i._printf_pre_padding 0x0000240c Section 0 printfa.o(i._printf_pre_padding) - _printf_pre_padding 0x0000240d Thumb Code 44 printfa.o(i._printf_pre_padding) - i.adc_get_chnum 0x00002438 Section 0 adc.o(i.adc_get_chnum) - i.adc_get_value 0x00002528 Section 0 adc.o(i.adc_get_value) - i.adc_get_value_by_adcch 0x0000253a Section 0 adc.o(i.adc_get_value_by_adcch) - i.adc_get_voltage 0x00002570 Section 0 adc.o(i.adc_get_voltage) - i.adc_module_init 0x000025b0 Section 0 adc.o(i.adc_module_init) - i.adc_pin_init 0x000025ec Section 0 adc.o(i.adc_pin_init) - i.calculate_top 0x00002614 Section 0 pwm_1.o(i.calculate_top) - calculate_top 0x00002615 Thumb Code 78 pwm_1.o(i.calculate_top) - i.close_all_light 0x0000266c Section 0 light_control_service.o(i.close_all_light) - i.compute_countdown 0x00002694 Section 0 main.o(i.compute_countdown) - i.compute_countdown_num 0x000026f0 Section 0 main.o(i.compute_countdown_num) - compute_countdown_num 0x000026f1 Thumb Code 44 main.o(i.compute_countdown_num) - i.do_countdown_flash_light_effect 0x0000271c Section 0 light_control_service.o(i.do_countdown_flash_light_effect) - i.do_debug_light_state 0x000027bc Section 0 main.o(i.do_debug_light_state) - i.fputc 0x000027ec Section 0 lib_printf.o(i.fputc) - i.get_ozone_power 0x00002838 Section 0 main.o(i.get_ozone_power) - i.increase_and_assign_countdonwnum 0x00002864 Section 0 main.o(i.increase_and_assign_countdonwnum) - increase_and_assign_countdonwnum 0x00002865 Thumb Code 64 main.o(i.increase_and_assign_countdonwnum) - i.init_all_subdevice_state 0x000028a8 Section 0 main.o(i.init_all_subdevice_state) - i.lcs_active_input 0x000028e4 Section 0 light_control_service.o(i.lcs_active_input) - i.lcs_input_is_active 0x000028fc Section 0 light_control_service.o(i.lcs_input_is_active) - i.lcs_schedule_process 0x00002914 Section 0 light_control_service.o(i.lcs_schedule_process) - i.lcs_shcedule 0x00002954 Section 0 light_control_service.o(i.lcs_shcedule) - i.main 0x00002974 Section 0 main.o(i.main) - i.mf_haspassedms 0x00002a80 Section 0 zsimple_timer.o(i.mf_haspassedms) - mf_haspassedms 0x00002a81 Thumb Code 28 zsimple_timer.o(i.mf_haspassedms) - i.mf_set_status_light_by_level 0x00002a9c Section 0 light_control_service.o(i.mf_set_status_light_by_level) - mf_set_status_light_by_level 0x00002a9d Thumb Code 36 light_control_service.o(i.mf_set_status_light_by_level) - i.mf_set_status_light_state 0x00002ac0 Section 0 light_control_service.o(i.mf_set_status_light_state) - i.mf_start_trigger 0x00002adc Section 0 zsimple_timer.o(i.mf_start_trigger) - mf_start_trigger 0x00002add Thumb Code 78 zsimple_timer.o(i.mf_start_trigger) - i.mf_trigger 0x00002b34 Section 0 zsimple_timer.o(i.mf_trigger) - mf_trigger 0x00002b35 Thumb Code 44 zsimple_timer.o(i.mf_trigger) - i.onkey 0x00002b64 Section 0 main.o(i.onkey) - onkey 0x00002b65 Thumb Code 356 main.o(i.onkey) - i.port_adc_get_ozone_generator_power 0x00002d48 Section 0 port.o(i.port_adc_get_ozone_generator_power) - i.port_debug_set 0x00002d7c Section 0 port.o(i.port_debug_set) - i.port_fan_get 0x00002d8e Section 0 port.o(i.port_fan_get) - i.port_fan_set 0x00002da0 Section 0 port.o(i.port_fan_set) - i.port_gpio_get_interval_key_state 0x00002dba Section 0 port.o(i.port_gpio_get_interval_key_state) - i.port_gpio_get_level_key_state 0x00002dcc Section 0 port.o(i.port_gpio_get_level_key_state) - i.port_gpio_get_power_key_state 0x00002dde Section 0 port.o(i.port_gpio_get_power_key_state) - i.port_gpio_get_timer_key_state 0x00002df0 Section 0 port.o(i.port_gpio_get_timer_key_state) - i.port_init 0x00002e04 Section 0 port.o(i.port_init) - i.port_led0_set 0x00002f20 Section 0 port.o(i.port_led0_set) - i.port_led1_set 0x00002f32 Section 0 port.o(i.port_led1_set) - i.port_led2_set 0x00002f44 Section 0 port.o(i.port_led2_set) - i.port_led3_set 0x00002f56 Section 0 port.o(i.port_led3_set) - i.port_led_b_set 0x00002f68 Section 0 port.o(i.port_led_b_set) - i.port_led_g_set 0x00002f7a Section 0 port.o(i.port_led_g_set) - i.port_led_r_set 0x00002f8c Section 0 port.o(i.port_led_r_set) - i.port_ozone_pwm_set_duty 0x00002fa0 Section 0 port.o(i.port_ozone_pwm_set_duty) - i.port_ozone_pwm_start 0x00002fc0 Section 0 port.o(i.port_ozone_pwm_start) - i.port_ozone_pwm_stop 0x00002fd0 Section 0 port.o(i.port_ozone_pwm_stop) - i.printf_ozone_freq_and_power_table 0x00002fe0 Section 0 main.o(i.printf_ozone_freq_and_power_table) - i.process_countdonwlight 0x00003058 Section 0 light_control_service.o(i.process_countdonwlight) - i.process_countdwonevent 0x000030c8 Section 0 main.o(i.process_countdwonevent) - i.process_level_light 0x00003140 Section 0 light_control_service.o(i.process_level_light) - i.prv_zkey_process_each_after_filter 0x000031bc Section 0 key.o(i.prv_zkey_process_each_after_filter) - prv_zkey_process_each_after_filter 0x000031bd Thumb Code 86 key.o(i.prv_zkey_process_each_after_filter) - i.set_countdown 0x00003218 Section 0 main.o(i.set_countdown) - set_countdown 0x00003219 Thumb Code 34 main.o(i.set_countdown) - i.set_pwm_and_get_power 0x00003240 Section 0 main.o(i.set_pwm_and_get_power) - i.shutdwon 0x00003264 Section 0 main.o(i.shutdwon) - shutdwon 0x00003265 Thumb Code 20 main.o(i.shutdwon) - i.systicket_delay_ms 0x00003288 Section 0 systicket.o(i.systicket_delay_ms) - i.systicket_get_now_ms 0x000032a4 Section 0 systicket.o(i.systicket_get_now_ms) - i.systicket_haspassedms 0x000032b0 Section 0 systicket.o(i.systicket_haspassedms) - i.systicket_init 0x000032cc Section 0 systicket.o(i.systicket_init) - i.uart0_init 0x0000330c Section 0 uart0.o(i.uart0_init) - i.uart0_init_pin 0x00003390 Section 0 uart0.o(i.uart0_init_pin) - uart0_init_pin 0x00003391 Thumb Code 146 uart0.o(i.uart0_init_pin) - i.zgpio_get_default_input_config 0x00003424 Section 0 gpio.o(i.zgpio_get_default_input_config) - i.zgpio_get_default_ode_output_config 0x00003440 Section 0 gpio.o(i.zgpio_get_default_ode_output_config) - i.zgpio_get_default_output_config 0x00003460 Section 0 gpio.o(i.zgpio_get_default_output_config) - i.zgpio_init_all_gpio 0x0000347c Section 0 gpio.o(i.zgpio_init_all_gpio) - i.zgpio_init_as_input 0x0000347e Section 0 gpio.o(i.zgpio_init_as_input) - i.zgpio_init_as_output 0x0000348e Section 0 gpio.o(i.zgpio_init_as_output) - i.zkey_do_loop_in_each_period 0x000034a8 Section 0 key.o(i.zkey_do_loop_in_each_period) - i.zkey_init 0x000034e4 Section 0 key.o(i.zkey_init) - i.zkey_process_each 0x00003558 Section 0 key.o(i.zkey_process_each) - i.zpwm_init 0x00003596 Section 0 pwm_1.o(i.zpwm_init) - i.zpwm_set_duty 0x00003670 Section 0 pwm_1.o(i.zpwm_set_duty) - i.zpwm_set_duty_ns 0x00003728 Section 0 pwm_1.o(i.zpwm_set_duty_ns) - i.zpwm_set_freq 0x000037c8 Section 0 pwm_1.o(i.zpwm_set_freq) - i.zpwm_start 0x00003812 Section 0 pwm_1.o(i.zpwm_start) - i.zpwm_stop 0x0000386e Section 0 pwm_1.o(i.zpwm_stop) - i.zsimple_timer_alloc 0x000038c8 Section 0 zsimple_timer.o(i.zsimple_timer_alloc) - i.zsimple_timer_module_init 0x0000395c Section 0 zsimple_timer.o(i.zsimple_timer_module_init) - i.zsimple_timer_schedule 0x000039bc Section 0 zsimple_timer.o(i.zsimple_timer_schedule) - i.zsimple_timer_trigger_static 0x000039fc Section 0 zsimple_timer.o(i.zsimple_timer_trigger_static) - .conststring 0x00003a1c Section 45 main.o(.conststring) - .data 0x20000000 Section 136 main.o(.data) + .text 0x00000188 Section 0 fmul.o(.text) + .text 0x00000202 Section 0 fdiv.o(.text) + .text 0x00000280 Section 0 dmul.o(.text) + .text 0x00000350 Section 0 ddiv.o(.text) + .text 0x00000440 Section 0 ffltui.o(.text) + .text 0x00000450 Section 0 dflti.o(.text) + .text 0x00000478 Section 0 dfltui.o(.text) + .text 0x00000494 Section 0 ffixui.o(.text) + .text 0x000004bc Section 0 dfixui.o(.text) + .text 0x000004f8 Section 0 f2d.o(.text) + .text 0x00000520 Section 40 cdcmple.o(.text) + .text 0x00000548 Section 0 d2f.o(.text) + .text 0x00000580 Section 0 uldiv.o(.text) + .text 0x000005e0 Section 0 llushr.o(.text) + .text 0x00000602 Section 0 fepilogue.o(.text) + .text 0x00000602 Section 0 iusefp.o(.text) + .text 0x00000684 Section 0 depilogue.o(.text) + .text 0x00000744 Section 0 dadd.o(.text) + .text 0x000008ac Section 0 dfixul.o(.text) + .text 0x000008ec Section 40 cdrcmple.o(.text) + .text 0x00000914 Section 36 init.o(.text) + .text 0x00000938 Section 0 llshl.o(.text) + .text 0x00000958 Section 0 llsshr.o(.text) + i.ADC_Init 0x00000980 Section 0 lib_adc.o(i.ADC_Init) + i.ADC_Reset 0x00000ad0 Section 0 lib_adc.o(i.ADC_Reset) + i.DeviceClockAllEnable 0x00000b00 Section 0 lib_scu.o(i.DeviceClockAllEnable) + i.GPIO_GetNormalBitOffsetFromPin 0x00000b34 Section 0 lib_gpio.o(i.GPIO_GetNormalBitOffsetFromPin) + i.GPIO_Init 0x00000bec Section 0 lib_gpio.o(i.GPIO_Init) + i.GPIO_ReadBit 0x00000c74 Section 0 lib_gpio.o(i.GPIO_ReadBit) + i.GPIO_SetDSRegFromPin 0x00000ca4 Section 0 lib_gpio.o(i.GPIO_SetDSRegFromPin) + i.GPIO_SetDirRegFromPin 0x00000d0c Section 0 lib_gpio.o(i.GPIO_SetDirRegFromPin) + i.GPIO_SetFuncxRegFromPin 0x00000d58 Section 0 lib_gpio.o(i.GPIO_SetFuncxRegFromPin) + i.GPIO_SetODERegFromPin 0x00001114 Section 0 lib_gpio.o(i.GPIO_SetODERegFromPin) + i.GPIO_SetPDERegFromPin 0x0000117c Section 0 lib_gpio.o(i.GPIO_SetPDERegFromPin) + i.GPIO_SetPUERegFromPin 0x000011e4 Section 0 lib_gpio.o(i.GPIO_SetPUERegFromPin) + i.GPIO_SetPortFLTFromPin 0x0000124c Section 0 lib_gpio.o(i.GPIO_SetPortFLTFromPin) + i.GPIO_SetPortTypeFromPin 0x000012b4 Section 0 lib_gpio.o(i.GPIO_SetPortTypeFromPin) + i.GPIO_SetSingalTypeFromPin 0x0000131c Section 0 lib_gpio.o(i.GPIO_SetSingalTypeFromPin) + i.GPIO_WriteBit 0x00001384 Section 0 lib_gpio.o(i.GPIO_WriteBit) + i.HRC_Config 0x000013d0 Section 0 lib_scu.o(i.HRC_Config) + i.NVIC_Init 0x0000149c Section 0 lib_scs.o(i.NVIC_Init) + i.SCU_SysClkSelect 0x00001500 Section 0 lib_scu.o(i.SCU_SysClkSelect) + i.SysTick_IRQHandler 0x0000152c Section 0 systicket.o(i.SysTick_IRQHandler) + i.SysTick_Init 0x0000153c Section 0 lib_scs.o(i.SysTick_Init) + i.SystemInit 0x0000157c Section 0 system_es8p5066.o(i.SystemInit) + i.T16Nx_BaseInit 0x000015a0 Section 0 lib_timer.o(i.T16Nx_BaseInit) + i.T16Nx_Disable 0x00001604 Section 0 lib_timer.o(i.T16Nx_Disable) + i.T16Nx_Enable 0x0000160e Section 0 lib_timer.o(i.T16Nx_Enable) + i.T16Nx_GetTOP0 0x0000161a Section 0 lib_timer.o(i.T16Nx_GetTOP0) + i.T16Nx_GetTOP1 0x00001622 Section 0 lib_timer.o(i.T16Nx_GetTOP1) + i.T16Nx_MAT0ITConfig 0x0000162a Section 0 lib_timer.o(i.T16Nx_MAT0ITConfig) + i.T16Nx_MAT0Out0Config 0x00001642 Section 0 lib_timer.o(i.T16Nx_MAT0Out0Config) + i.T16Nx_MAT1ITConfig 0x0000165a Section 0 lib_timer.o(i.T16Nx_MAT1ITConfig) + i.T16Nx_MAT1Out0Config 0x00001672 Section 0 lib_timer.o(i.T16Nx_MAT1Out0Config) + i.T16Nx_MAT2ITConfig 0x0000168a Section 0 lib_timer.o(i.T16Nx_MAT2ITConfig) + i.T16Nx_MAT2Out1Config 0x000016a2 Section 0 lib_timer.o(i.T16Nx_MAT2Out1Config) + i.T16Nx_MAT3ITConfig 0x000016ba Section 0 lib_timer.o(i.T16Nx_MAT3ITConfig) + i.T16Nx_MAT3Out1Config 0x000016d2 Section 0 lib_timer.o(i.T16Nx_MAT3Out1Config) + i.T16Nx_PMWOutInit 0x000016ea Section 0 lib_timer.o(i.T16Nx_PMWOutInit) + i.T16Nx_SetCNT0 0x0000176a Section 0 lib_timer.o(i.T16Nx_SetCNT0) + i.T16Nx_SetCNT1 0x0000178e Section 0 lib_timer.o(i.T16Nx_SetCNT1) + i.T16Nx_SetMAT0 0x000017b2 Section 0 lib_timer.o(i.T16Nx_SetMAT0) + i.T16Nx_SetMAT1 0x000017c0 Section 0 lib_timer.o(i.T16Nx_SetMAT1) + i.T16Nx_SetMAT2 0x000017ce Section 0 lib_timer.o(i.T16Nx_SetMAT2) + i.T16Nx_SetMAT3 0x000017dc Section 0 lib_timer.o(i.T16Nx_SetMAT3) + i.T16Nx_SetTOP0 0x000017ea Section 0 lib_timer.o(i.T16Nx_SetTOP0) + i.T16Nx_SetTOP1 0x000017f8 Section 0 lib_timer.o(i.T16Nx_SetTOP1) + i.UART_ClearITPendingBit 0x00001806 Section 0 lib_uart.o(i.UART_ClearITPendingBit) + i.UART_GetFlagStatus 0x0000180a Section 0 lib_uart.o(i.UART_GetFlagStatus) + i.UART_ITConfig 0x0000181a Section 0 lib_uart.o(i.UART_ITConfig) + i.UART_Init 0x00001830 Section 0 lib_uart.o(i.UART_Init) + i.UART_SendByte 0x00001998 Section 0 lib_uart.o(i.UART_SendByte) + i.UART_TBIMConfig 0x0000199e Section 0 lib_uart.o(i.UART_TBIMConfig) + i.__0printf 0x000019b0 Section 0 printfa.o(i.__0printf) + i.__ARM_clz 0x000019d0 Section 0 depilogue.o(i.__ARM_clz) + i.__ARM_common_switch8 0x000019fe Section 0 lib_gpio.o(i.__ARM_common_switch8) + i.__scatterload_copy 0x00001a1a Section 14 handlers.o(i.__scatterload_copy) + i.__scatterload_null 0x00001a28 Section 2 handlers.o(i.__scatterload_null) + i.__scatterload_zeroinit 0x00001a2a Section 14 handlers.o(i.__scatterload_zeroinit) + i._fp_digits 0x00001a38 Section 0 printfa.o(i._fp_digits) + _fp_digits 0x00001a39 Thumb Code 344 printfa.o(i._fp_digits) + i._printf_core 0x00001bac Section 0 printfa.o(i._printf_core) + _printf_core 0x00001bad Thumb Code 1760 printfa.o(i._printf_core) + i._printf_post_padding 0x0000229c Section 0 printfa.o(i._printf_post_padding) + _printf_post_padding 0x0000229d Thumb Code 32 printfa.o(i._printf_post_padding) + i._printf_pre_padding 0x000022bc Section 0 printfa.o(i._printf_pre_padding) + _printf_pre_padding 0x000022bd Thumb Code 44 printfa.o(i._printf_pre_padding) + i.adc_get_chnum 0x000022e8 Section 0 adc.o(i.adc_get_chnum) + i.adc_module_init 0x000023d8 Section 0 adc.o(i.adc_module_init) + i.adc_pin_init 0x00002414 Section 0 adc.o(i.adc_pin_init) + i.calculate_top 0x0000243c Section 0 pwm_1.o(i.calculate_top) + calculate_top 0x0000243d Thumb Code 78 pwm_1.o(i.calculate_top) + i.close_all_light 0x00002494 Section 0 light_control_service.o(i.close_all_light) + i.compute_countdown 0x000024bc Section 0 main.o(i.compute_countdown) + i.compute_countdown_num 0x00002518 Section 0 main.o(i.compute_countdown_num) + compute_countdown_num 0x00002519 Thumb Code 44 main.o(i.compute_countdown_num) + i.do_countdown_flash_light_effect 0x00002544 Section 0 light_control_service.o(i.do_countdown_flash_light_effect) + i.do_debug_light_state 0x000025e4 Section 0 main.o(i.do_debug_light_state) + i.fputc 0x00002614 Section 0 lib_printf.o(i.fputc) + i.increase_and_assign_countdonwnum 0x00002660 Section 0 main.o(i.increase_and_assign_countdonwnum) + increase_and_assign_countdonwnum 0x00002661 Thumb Code 70 main.o(i.increase_and_assign_countdonwnum) + i.init_all_subdevice_state 0x000026ac Section 0 main.o(i.init_all_subdevice_state) + i.lcs_active_input 0x000026e8 Section 0 light_control_service.o(i.lcs_active_input) + i.lcs_input_is_active 0x00002700 Section 0 light_control_service.o(i.lcs_input_is_active) + i.lcs_schedule_process 0x00002718 Section 0 light_control_service.o(i.lcs_schedule_process) + i.lcs_shcedule 0x00002758 Section 0 light_control_service.o(i.lcs_shcedule) + i.main 0x00002778 Section 0 main.o(i.main) + i.mf_haspassedms 0x00002880 Section 0 zsimple_timer.o(i.mf_haspassedms) + mf_haspassedms 0x00002881 Thumb Code 28 zsimple_timer.o(i.mf_haspassedms) + i.mf_set_status_light_by_level 0x0000289c Section 0 light_control_service.o(i.mf_set_status_light_by_level) + mf_set_status_light_by_level 0x0000289d Thumb Code 36 light_control_service.o(i.mf_set_status_light_by_level) + i.mf_set_status_light_state 0x000028c0 Section 0 light_control_service.o(i.mf_set_status_light_state) + i.mf_start_trigger 0x000028dc Section 0 zsimple_timer.o(i.mf_start_trigger) + mf_start_trigger 0x000028dd Thumb Code 78 zsimple_timer.o(i.mf_start_trigger) + i.mf_trigger 0x00002934 Section 0 zsimple_timer.o(i.mf_trigger) + mf_trigger 0x00002935 Thumb Code 44 zsimple_timer.o(i.mf_trigger) + i.onkey 0x00002964 Section 0 main.o(i.onkey) + onkey 0x00002965 Thumb Code 368 main.o(i.onkey) + i.port_debug_set 0x00002b54 Section 0 port.o(i.port_debug_set) + i.port_fan_get 0x00002b66 Section 0 port.o(i.port_fan_get) + i.port_fan_set 0x00002b78 Section 0 port.o(i.port_fan_set) + i.port_gpio_get_interval_key_state 0x00002b92 Section 0 port.o(i.port_gpio_get_interval_key_state) + i.port_gpio_get_level_key_state 0x00002ba4 Section 0 port.o(i.port_gpio_get_level_key_state) + i.port_gpio_get_power_key_state 0x00002bb6 Section 0 port.o(i.port_gpio_get_power_key_state) + i.port_gpio_get_timer_key_state 0x00002bc8 Section 0 port.o(i.port_gpio_get_timer_key_state) + i.port_init 0x00002bdc Section 0 port.o(i.port_init) + i.port_led0_set 0x00002cf8 Section 0 port.o(i.port_led0_set) + i.port_led1_set 0x00002d0a Section 0 port.o(i.port_led1_set) + i.port_led2_set 0x00002d1c Section 0 port.o(i.port_led2_set) + i.port_led3_set 0x00002d2e Section 0 port.o(i.port_led3_set) + i.port_led_b_set 0x00002d40 Section 0 port.o(i.port_led_b_set) + i.port_led_g_set 0x00002d52 Section 0 port.o(i.port_led_g_set) + i.port_led_r_set 0x00002d64 Section 0 port.o(i.port_led_r_set) + i.port_ozone_pwm_set_duty 0x00002d78 Section 0 port.o(i.port_ozone_pwm_set_duty) + i.port_ozone_pwm_stop 0x00002d98 Section 0 port.o(i.port_ozone_pwm_stop) + i.process_countdonwlight 0x00002da8 Section 0 light_control_service.o(i.process_countdonwlight) + i.process_countdwonevent 0x00002e18 Section 0 main.o(i.process_countdwonevent) + i.process_level_light 0x00002e90 Section 0 light_control_service.o(i.process_level_light) + i.prv_zkey_process_each_after_filter 0x00002f0c Section 0 key.o(i.prv_zkey_process_each_after_filter) + prv_zkey_process_each_after_filter 0x00002f0d Thumb Code 86 key.o(i.prv_zkey_process_each_after_filter) + i.set_countdown 0x00002f68 Section 0 main.o(i.set_countdown) + set_countdown 0x00002f69 Thumb Code 34 main.o(i.set_countdown) + i.shutdwon 0x00002f90 Section 0 main.o(i.shutdwon) + shutdwon 0x00002f91 Thumb Code 44 main.o(i.shutdwon) + i.systicket_get_now_ms 0x00002fd4 Section 0 systicket.o(i.systicket_get_now_ms) + i.systicket_haspassedms 0x00002fe0 Section 0 systicket.o(i.systicket_haspassedms) + i.systicket_init 0x00002ffc Section 0 systicket.o(i.systicket_init) + i.uart0_init 0x0000303c Section 0 uart0.o(i.uart0_init) + i.uart0_init_pin 0x000030c0 Section 0 uart0.o(i.uart0_init_pin) + uart0_init_pin 0x000030c1 Thumb Code 146 uart0.o(i.uart0_init_pin) + i.zgpio_get_default_input_config 0x00003154 Section 0 gpio.o(i.zgpio_get_default_input_config) + i.zgpio_get_default_ode_output_config 0x00003170 Section 0 gpio.o(i.zgpio_get_default_ode_output_config) + i.zgpio_get_default_output_config 0x00003190 Section 0 gpio.o(i.zgpio_get_default_output_config) + i.zgpio_init_all_gpio 0x000031ac Section 0 gpio.o(i.zgpio_init_all_gpio) + i.zgpio_init_as_input 0x000031ae Section 0 gpio.o(i.zgpio_init_as_input) + i.zgpio_init_as_output 0x000031be Section 0 gpio.o(i.zgpio_init_as_output) + i.zkey_do_loop_in_each_period 0x000031d8 Section 0 key.o(i.zkey_do_loop_in_each_period) + i.zkey_init 0x00003214 Section 0 key.o(i.zkey_init) + i.zkey_process_each 0x00003288 Section 0 key.o(i.zkey_process_each) + i.zpwm_init 0x000032c6 Section 0 pwm_1.o(i.zpwm_init) + i.zpwm_set_duty 0x000033a0 Section 0 pwm_1.o(i.zpwm_set_duty) + i.zpwm_set_duty_ns 0x00003458 Section 0 pwm_1.o(i.zpwm_set_duty_ns) + i.zpwm_set_freq 0x000034f8 Section 0 pwm_1.o(i.zpwm_set_freq) + i.zpwm_stop 0x00003542 Section 0 pwm_1.o(i.zpwm_stop) + i.zsimple_timer_alloc 0x0000359c Section 0 zsimple_timer.o(i.zsimple_timer_alloc) + i.zsimple_timer_module_init 0x00003630 Section 0 zsimple_timer.o(i.zsimple_timer_module_init) + i.zsimple_timer_schedule 0x00003690 Section 0 zsimple_timer.o(i.zsimple_timer_schedule) + i.zsimple_timer_trigger_static 0x000036d0 Section 0 zsimple_timer.o(i.zsimple_timer_trigger_static) + .conststring 0x000036f0 Section 45 main.o(.conststring) + .data 0x20000000 Section 144 main.o(.data) s_keys 0x20000000 Data 112 main.o(.data) - debug_led_state 0x20000080 Data 1 main.o(.data) - __ticket 0x20000084 Data 4 main.o(.data) - .data 0x20000088 Section 20 light_control_service.o(.data) - lastticket 0x20000088 Data 4 light_control_service.o(.data) - statenow 0x2000008c Data 1 light_control_service.o(.data) + debug_led_state 0x20000088 Data 1 main.o(.data) + __ticket 0x2000008c Data 4 main.o(.data) + .data 0x20000090 Section 20 light_control_service.o(.data) lastticket 0x20000090 Data 4 light_control_service.o(.data) statenow 0x20000094 Data 1 light_control_service.o(.data) - ticket 0x20000098 Data 4 light_control_service.o(.data) - .data 0x2000009c Section 16 zsimple_timer.o(.data) - m_timerId 0x2000009c Data 4 zsimple_timer.o(.data) - m_timermem 0x200000a0 Data 4 zsimple_timer.o(.data) - m_numtimer 0x200000a4 Data 4 zsimple_timer.o(.data) - m_getticket 0x200000a8 Data 4 zsimple_timer.o(.data) - .data 0x200000ac Section 4 system_es8p5066.o(.data) - .data 0x200000b0 Section 1 adc.o(.data) - g_default_adc_ch 0x200000b0 Data 1 adc.o(.data) - .data 0x200000b1 Section 21 gpio.o(.data) - default_config 0x200000b1 Data 7 gpio.o(.data) - default_config 0x200000b8 Data 7 gpio.o(.data) - default_config 0x200000bf Data 7 gpio.o(.data) - .data 0x200000c8 Section 4 systicket.o(.data) - .data 0x200000cc Section 5 key.o(.data) - s_module 0x200000cc Data 4 key.o(.data) - s_inited 0x200000d0 Data 1 key.o(.data) - .data 0x200000d4 Section 4 stdout.o(.data) - .bss 0x200000d8 Section 1920 main.o(.bss) - zsimple_timer_mem 0x200000d8 Data 320 main.o(.bss) - .bss 0x20000858 Section 40 port.o(.bss) - .bss 0x20000880 Section 28 thisdevice.o(.bss) - STACK 0x200008a0 Section 1024 startup_es8p5066.o(STACK) + lastticket 0x20000098 Data 4 light_control_service.o(.data) + statenow 0x2000009c Data 1 light_control_service.o(.data) + ticket 0x200000a0 Data 4 light_control_service.o(.data) + .data 0x200000a4 Section 16 zsimple_timer.o(.data) + m_timerId 0x200000a4 Data 4 zsimple_timer.o(.data) + m_timermem 0x200000a8 Data 4 zsimple_timer.o(.data) + m_numtimer 0x200000ac Data 4 zsimple_timer.o(.data) + m_getticket 0x200000b0 Data 4 zsimple_timer.o(.data) + .data 0x200000b4 Section 4 system_es8p5066.o(.data) + .data 0x200000b8 Section 1 adc.o(.data) + g_default_adc_ch 0x200000b8 Data 1 adc.o(.data) + .data 0x200000b9 Section 21 gpio.o(.data) + default_config 0x200000b9 Data 7 gpio.o(.data) + default_config 0x200000c0 Data 7 gpio.o(.data) + default_config 0x200000c7 Data 7 gpio.o(.data) + .data 0x200000d0 Section 4 systicket.o(.data) + .data 0x200000d4 Section 5 key.o(.data) + s_module 0x200000d4 Data 4 key.o(.data) + s_inited 0x200000d8 Data 1 key.o(.data) + .data 0x200000dc Section 4 stdout.o(.data) + .bss 0x200000e0 Section 320 main.o(.bss) + zsimple_timer_mem 0x200000e0 Data 320 main.o(.bss) + .bss 0x20000220 Section 40 port.o(.bss) + .bss 0x20000248 Section 28 thisdevice.o(.bss) + STACK 0x20000268 Section 1024 startup_es8p5066.o(STACK) Global Symbols @@ -1356,185 +1395,167 @@ Image Symbol Table __aeabi_memclr8 0x00000157 Thumb Code 0 memseta.o(.text) _memset$wrapper 0x0000015b Thumb Code 18 memseta.o(.text) strcmp 0x0000016d Thumb Code 28 strcmp.o(.text) - __aeabi_fadd 0x00000189 Thumb Code 162 fadd.o(.text) - __aeabi_fsub 0x0000022b Thumb Code 8 fadd.o(.text) - __aeabi_frsub 0x00000233 Thumb Code 8 fadd.o(.text) - __aeabi_fmul 0x0000023b Thumb Code 122 fmul.o(.text) - __aeabi_fdiv 0x000002b5 Thumb Code 124 fdiv.o(.text) - __aeabi_dmul 0x00000331 Thumb Code 202 dmul.o(.text) - __aeabi_ddiv 0x00000401 Thumb Code 234 ddiv.o(.text) - __aeabi_ui2f 0x000004f1 Thumb Code 14 ffltui.o(.text) - __aeabi_i2d 0x00000501 Thumb Code 34 dflti.o(.text) - __aeabi_ui2d 0x00000529 Thumb Code 24 dfltui.o(.text) - __aeabi_f2uiz 0x00000545 Thumb Code 40 ffixui.o(.text) - __aeabi_d2uiz 0x0000056d Thumb Code 50 dfixui.o(.text) - __aeabi_f2d 0x000005a9 Thumb Code 40 f2d.o(.text) - __aeabi_cdcmpeq 0x000005d1 Thumb Code 0 cdcmple.o(.text) - __aeabi_cdcmple 0x000005d1 Thumb Code 38 cdcmple.o(.text) - __aeabi_d2f 0x000005f9 Thumb Code 56 d2f.o(.text) - __aeabi_uldivmod 0x00000631 Thumb Code 96 uldiv.o(.text) - __aeabi_llsr 0x00000691 Thumb Code 34 llushr.o(.text) - _ll_ushift_r 0x00000691 Thumb Code 0 llushr.o(.text) - __I$use$fp 0x000006b3 Thumb Code 0 iusefp.o(.text) - _float_round 0x000006b3 Thumb Code 16 fepilogue.o(.text) - _float_epilogue 0x000006c3 Thumb Code 114 fepilogue.o(.text) - _double_round 0x00000735 Thumb Code 26 depilogue.o(.text) - _double_epilogue 0x0000074f Thumb Code 164 depilogue.o(.text) - __aeabi_dadd 0x000007f5 Thumb Code 330 dadd.o(.text) - __aeabi_dsub 0x0000093f Thumb Code 12 dadd.o(.text) - __aeabi_drsub 0x0000094b Thumb Code 12 dadd.o(.text) - __aeabi_d2ulz 0x0000095d Thumb Code 54 dfixul.o(.text) - __aeabi_cdrcmple 0x0000099d Thumb Code 38 cdrcmple.o(.text) - __scatterload 0x000009c5 Thumb Code 28 init.o(.text) - __scatterload_rt2 0x000009c5 Thumb Code 0 init.o(.text) - __aeabi_llsl 0x000009e9 Thumb Code 32 llshl.o(.text) - _ll_shift_l 0x000009e9 Thumb Code 0 llshl.o(.text) - __aeabi_lasr 0x00000a09 Thumb Code 38 llsshr.o(.text) - _ll_sshift_r 0x00000a09 Thumb Code 0 llsshr.o(.text) - ADC_ClearIFStatus 0x00000a31 Thumb Code 10 lib_adc.o(i.ADC_ClearIFStatus) - ADC_GetConvValue 0x00000a41 Thumb Code 10 lib_adc.o(i.ADC_GetConvValue) - ADC_GetIFStatus 0x00000a51 Thumb Code 20 lib_adc.o(i.ADC_GetIFStatus) - ADC_Init 0x00000a69 Thumb Code 332 lib_adc.o(i.ADC_Init) - ADC_Reset 0x00000bb9 Thumb Code 38 lib_adc.o(i.ADC_Reset) - ADC_Set_CH 0x00000be9 Thumb Code 20 lib_adc.o(i.ADC_Set_CH) - ADC_SoftStart 0x00000c01 Thumb Code 36 lib_adc.o(i.ADC_SoftStart) - ADC_SoftStop 0x00000c29 Thumb Code 34 lib_adc.o(i.ADC_SoftStop) - DeviceClockAllEnable 0x00000c51 Thumb Code 42 lib_scu.o(i.DeviceClockAllEnable) - GPIO_GetNormalBitOffsetFromPin 0x00000c85 Thumb Code 184 lib_gpio.o(i.GPIO_GetNormalBitOffsetFromPin) - GPIO_Init 0x00000d3d Thumb Code 134 lib_gpio.o(i.GPIO_Init) - GPIO_ReadBit 0x00000dc5 Thumb Code 42 lib_gpio.o(i.GPIO_ReadBit) - GPIO_SetDSRegFromPin 0x00000df5 Thumb Code 98 lib_gpio.o(i.GPIO_SetDSRegFromPin) - GPIO_SetDirRegFromPin 0x00000e5d Thumb Code 70 lib_gpio.o(i.GPIO_SetDirRegFromPin) - GPIO_SetFuncxRegFromPin 0x00000ea9 Thumb Code 950 lib_gpio.o(i.GPIO_SetFuncxRegFromPin) - GPIO_SetODERegFromPin 0x00001265 Thumb Code 98 lib_gpio.o(i.GPIO_SetODERegFromPin) - GPIO_SetPDERegFromPin 0x000012cd Thumb Code 98 lib_gpio.o(i.GPIO_SetPDERegFromPin) - GPIO_SetPUERegFromPin 0x00001335 Thumb Code 98 lib_gpio.o(i.GPIO_SetPUERegFromPin) - GPIO_SetPortFLTFromPin 0x0000139d Thumb Code 98 lib_gpio.o(i.GPIO_SetPortFLTFromPin) - GPIO_SetPortTypeFromPin 0x00001405 Thumb Code 98 lib_gpio.o(i.GPIO_SetPortTypeFromPin) - GPIO_SetSingalTypeFromPin 0x0000146d Thumb Code 98 lib_gpio.o(i.GPIO_SetSingalTypeFromPin) - GPIO_WriteBit 0x000014d5 Thumb Code 70 lib_gpio.o(i.GPIO_WriteBit) - HRC_Config 0x00001521 Thumb Code 194 lib_scu.o(i.HRC_Config) - NVIC_Init 0x000015ed Thumb Code 94 lib_scs.o(i.NVIC_Init) - SCU_SysClkSelect 0x00001651 Thumb Code 34 lib_scu.o(i.SCU_SysClkSelect) - SysTick_IRQHandler 0x0000167d Thumb Code 12 systicket.o(i.SysTick_IRQHandler) - SysTick_Init 0x0000168d Thumb Code 60 lib_scs.o(i.SysTick_Init) - SystemInit 0x000016cd Thumb Code 26 system_es8p5066.o(i.SystemInit) - T16Nx_BaseInit 0x000016f1 Thumb Code 100 lib_timer.o(i.T16Nx_BaseInit) - T16Nx_Disable 0x00001755 Thumb Code 10 lib_timer.o(i.T16Nx_Disable) - T16Nx_Enable 0x0000175f Thumb Code 12 lib_timer.o(i.T16Nx_Enable) - T16Nx_GetTOP0 0x0000176b Thumb Code 8 lib_timer.o(i.T16Nx_GetTOP0) - T16Nx_GetTOP1 0x00001773 Thumb Code 8 lib_timer.o(i.T16Nx_GetTOP1) - T16Nx_MAT0ITConfig 0x0000177b Thumb Code 24 lib_timer.o(i.T16Nx_MAT0ITConfig) - T16Nx_MAT0Out0Config 0x00001793 Thumb Code 24 lib_timer.o(i.T16Nx_MAT0Out0Config) - T16Nx_MAT1ITConfig 0x000017ab Thumb Code 24 lib_timer.o(i.T16Nx_MAT1ITConfig) - T16Nx_MAT1Out0Config 0x000017c3 Thumb Code 24 lib_timer.o(i.T16Nx_MAT1Out0Config) - T16Nx_MAT2ITConfig 0x000017db Thumb Code 24 lib_timer.o(i.T16Nx_MAT2ITConfig) - T16Nx_MAT2Out1Config 0x000017f3 Thumb Code 24 lib_timer.o(i.T16Nx_MAT2Out1Config) - T16Nx_MAT3ITConfig 0x0000180b Thumb Code 24 lib_timer.o(i.T16Nx_MAT3ITConfig) - T16Nx_MAT3Out1Config 0x00001823 Thumb Code 24 lib_timer.o(i.T16Nx_MAT3Out1Config) - T16Nx_PMWOutInit 0x0000183b Thumb Code 128 lib_timer.o(i.T16Nx_PMWOutInit) - T16Nx_SetCNT0 0x000018bb Thumb Code 36 lib_timer.o(i.T16Nx_SetCNT0) - T16Nx_SetCNT1 0x000018df Thumb Code 36 lib_timer.o(i.T16Nx_SetCNT1) - T16Nx_SetMAT0 0x00001903 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT0) - T16Nx_SetMAT1 0x00001911 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT1) - T16Nx_SetMAT2 0x0000191f Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT2) - T16Nx_SetMAT3 0x0000192d Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT3) - T16Nx_SetTOP0 0x0000193b Thumb Code 14 lib_timer.o(i.T16Nx_SetTOP0) - T16Nx_SetTOP1 0x00001949 Thumb Code 14 lib_timer.o(i.T16Nx_SetTOP1) - UART_ClearITPendingBit 0x00001957 Thumb Code 4 lib_uart.o(i.UART_ClearITPendingBit) - UART_GetFlagStatus 0x0000195b Thumb Code 16 lib_uart.o(i.UART_GetFlagStatus) - UART_ITConfig 0x0000196b Thumb Code 20 lib_uart.o(i.UART_ITConfig) - UART_Init 0x00001981 Thumb Code 350 lib_uart.o(i.UART_Init) - UART_SendByte 0x00001ae9 Thumb Code 6 lib_uart.o(i.UART_SendByte) - UART_TBIMConfig 0x00001aef Thumb Code 16 lib_uart.o(i.UART_TBIMConfig) - __0printf 0x00001b01 Thumb Code 24 printfa.o(i.__0printf) - __1printf 0x00001b01 Thumb Code 0 printfa.o(i.__0printf) - __2printf 0x00001b01 Thumb Code 0 printfa.o(i.__0printf) - __c89printf 0x00001b01 Thumb Code 0 printfa.o(i.__0printf) - printf 0x00001b01 Thumb Code 0 printfa.o(i.__0printf) - __ARM_clz 0x00001b21 Thumb Code 46 depilogue.o(i.__ARM_clz) - __ARM_common_switch8 0x00001b4f Thumb Code 28 lib_gpio.o(i.__ARM_common_switch8) - __scatterload_copy 0x00001b6b Thumb Code 14 handlers.o(i.__scatterload_copy) - __scatterload_null 0x00001b79 Thumb Code 2 handlers.o(i.__scatterload_null) - __scatterload_zeroinit 0x00001b7b Thumb Code 14 handlers.o(i.__scatterload_zeroinit) - adc_get_chnum 0x00002439 Thumb Code 184 adc.o(i.adc_get_chnum) - adc_get_value 0x00002529 Thumb Code 18 adc.o(i.adc_get_value) - adc_get_value_by_adcch 0x0000253b Thumb Code 52 adc.o(i.adc_get_value_by_adcch) - adc_get_voltage 0x00002571 Thumb Code 50 adc.o(i.adc_get_voltage) - adc_module_init 0x000025b1 Thumb Code 56 adc.o(i.adc_module_init) - adc_pin_init 0x000025ed Thumb Code 36 adc.o(i.adc_pin_init) - close_all_light 0x0000266d Thumb Code 38 light_control_service.o(i.close_all_light) - compute_countdown 0x00002695 Thumb Code 86 main.o(i.compute_countdown) - do_countdown_flash_light_effect 0x0000271d Thumb Code 146 light_control_service.o(i.do_countdown_flash_light_effect) - do_debug_light_state 0x000027bd Thumb Code 42 main.o(i.do_debug_light_state) - fputc 0x000027ed Thumb Code 66 lib_printf.o(i.fputc) - get_ozone_power 0x00002839 Thumb Code 38 main.o(i.get_ozone_power) - init_all_subdevice_state 0x000028a9 Thumb Code 58 main.o(i.init_all_subdevice_state) - lcs_active_input 0x000028e5 Thumb Code 18 light_control_service.o(i.lcs_active_input) - lcs_input_is_active 0x000028fd Thumb Code 18 light_control_service.o(i.lcs_input_is_active) - lcs_schedule_process 0x00002915 Thumb Code 56 light_control_service.o(i.lcs_schedule_process) - lcs_shcedule 0x00002955 Thumb Code 28 light_control_service.o(i.lcs_shcedule) - main 0x00002975 Thumb Code 142 main.o(i.main) - mf_set_status_light_state 0x00002ac1 Thumb Code 28 light_control_service.o(i.mf_set_status_light_state) - port_adc_get_ozone_generator_power 0x00002d49 Thumb Code 42 port.o(i.port_adc_get_ozone_generator_power) - port_debug_set 0x00002d7d Thumb Code 18 port.o(i.port_debug_set) - port_fan_get 0x00002d8f Thumb Code 18 port.o(i.port_fan_get) - port_fan_set 0x00002da1 Thumb Code 26 port.o(i.port_fan_set) - port_gpio_get_interval_key_state 0x00002dbb Thumb Code 18 port.o(i.port_gpio_get_interval_key_state) - port_gpio_get_level_key_state 0x00002dcd Thumb Code 18 port.o(i.port_gpio_get_level_key_state) - port_gpio_get_power_key_state 0x00002ddf Thumb Code 18 port.o(i.port_gpio_get_power_key_state) - port_gpio_get_timer_key_state 0x00002df1 Thumb Code 18 port.o(i.port_gpio_get_timer_key_state) - port_init 0x00002e05 Thumb Code 276 port.o(i.port_init) - port_led0_set 0x00002f21 Thumb Code 18 port.o(i.port_led0_set) - port_led1_set 0x00002f33 Thumb Code 18 port.o(i.port_led1_set) - port_led2_set 0x00002f45 Thumb Code 18 port.o(i.port_led2_set) - port_led3_set 0x00002f57 Thumb Code 18 port.o(i.port_led3_set) - port_led_b_set 0x00002f69 Thumb Code 18 port.o(i.port_led_b_set) - port_led_g_set 0x00002f7b Thumb Code 18 port.o(i.port_led_g_set) - port_led_r_set 0x00002f8d Thumb Code 18 port.o(i.port_led_r_set) - port_ozone_pwm_set_duty 0x00002fa1 Thumb Code 28 port.o(i.port_ozone_pwm_set_duty) - port_ozone_pwm_start 0x00002fc1 Thumb Code 12 port.o(i.port_ozone_pwm_start) - port_ozone_pwm_stop 0x00002fd1 Thumb Code 12 port.o(i.port_ozone_pwm_stop) - printf_ozone_freq_and_power_table 0x00002fe1 Thumb Code 104 main.o(i.printf_ozone_freq_and_power_table) - process_countdonwlight 0x00003059 Thumb Code 106 light_control_service.o(i.process_countdonwlight) - process_countdwonevent 0x000030c9 Thumb Code 116 main.o(i.process_countdwonevent) - process_level_light 0x00003141 Thumb Code 110 light_control_service.o(i.process_level_light) - set_pwm_and_get_power 0x00003241 Thumb Code 36 main.o(i.set_pwm_and_get_power) - systicket_delay_ms 0x00003289 Thumb Code 26 systicket.o(i.systicket_delay_ms) - systicket_get_now_ms 0x000032a5 Thumb Code 6 systicket.o(i.systicket_get_now_ms) - systicket_haspassedms 0x000032b1 Thumb Code 28 systicket.o(i.systicket_haspassedms) - systicket_init 0x000032cd Thumb Code 54 systicket.o(i.systicket_init) - uart0_init 0x0000330d Thumb Code 128 uart0.o(i.uart0_init) - zgpio_get_default_input_config 0x00003425 Thumb Code 22 gpio.o(i.zgpio_get_default_input_config) - zgpio_get_default_ode_output_config 0x00003441 Thumb Code 26 gpio.o(i.zgpio_get_default_ode_output_config) - zgpio_get_default_output_config 0x00003461 Thumb Code 22 gpio.o(i.zgpio_get_default_output_config) - zgpio_init_all_gpio 0x0000347d Thumb Code 2 gpio.o(i.zgpio_init_all_gpio) - zgpio_init_as_input 0x0000347f Thumb Code 16 gpio.o(i.zgpio_init_as_input) - zgpio_init_as_output 0x0000348f Thumb Code 26 gpio.o(i.zgpio_init_as_output) - zkey_do_loop_in_each_period 0x000034a9 Thumb Code 50 key.o(i.zkey_do_loop_in_each_period) - zkey_init 0x000034e5 Thumb Code 108 key.o(i.zkey_init) - zkey_process_each 0x00003559 Thumb Code 62 key.o(i.zkey_process_each) - zpwm_init 0x00003597 Thumb Code 218 pwm_1.o(i.zpwm_init) - zpwm_set_duty 0x00003671 Thumb Code 180 pwm_1.o(i.zpwm_set_duty) - zpwm_set_duty_ns 0x00003729 Thumb Code 150 pwm_1.o(i.zpwm_set_duty_ns) - zpwm_set_freq 0x000037c9 Thumb Code 74 pwm_1.o(i.zpwm_set_freq) - zpwm_start 0x00003813 Thumb Code 92 pwm_1.o(i.zpwm_start) - zpwm_stop 0x0000386f Thumb Code 88 pwm_1.o(i.zpwm_stop) - zsimple_timer_alloc 0x000038c9 Thumb Code 76 zsimple_timer.o(i.zsimple_timer_alloc) - zsimple_timer_module_init 0x0000395d Thumb Code 44 zsimple_timer.o(i.zsimple_timer_module_init) - zsimple_timer_schedule 0x000039bd Thumb Code 54 zsimple_timer.o(i.zsimple_timer_schedule) - zsimple_timer_trigger_static 0x000039fd Thumb Code 30 zsimple_timer.o(i.zsimple_timer_trigger_static) - Region$$Table$$Base 0x00003a4c Number 0 anon$$obj.o(Region$$Table) - Region$$Table$$Limit 0x00003a6c Number 0 anon$$obj.o(Region$$Table) + __aeabi_fmul 0x00000189 Thumb Code 122 fmul.o(.text) + __aeabi_fdiv 0x00000203 Thumb Code 124 fdiv.o(.text) + __aeabi_dmul 0x00000281 Thumb Code 202 dmul.o(.text) + __aeabi_ddiv 0x00000351 Thumb Code 234 ddiv.o(.text) + __aeabi_ui2f 0x00000441 Thumb Code 14 ffltui.o(.text) + __aeabi_i2d 0x00000451 Thumb Code 34 dflti.o(.text) + __aeabi_ui2d 0x00000479 Thumb Code 24 dfltui.o(.text) + __aeabi_f2uiz 0x00000495 Thumb Code 40 ffixui.o(.text) + __aeabi_d2uiz 0x000004bd Thumb Code 50 dfixui.o(.text) + __aeabi_f2d 0x000004f9 Thumb Code 40 f2d.o(.text) + __aeabi_cdcmpeq 0x00000521 Thumb Code 0 cdcmple.o(.text) + __aeabi_cdcmple 0x00000521 Thumb Code 38 cdcmple.o(.text) + __aeabi_d2f 0x00000549 Thumb Code 56 d2f.o(.text) + __aeabi_uldivmod 0x00000581 Thumb Code 96 uldiv.o(.text) + __aeabi_llsr 0x000005e1 Thumb Code 34 llushr.o(.text) + _ll_ushift_r 0x000005e1 Thumb Code 0 llushr.o(.text) + __I$use$fp 0x00000603 Thumb Code 0 iusefp.o(.text) + _float_round 0x00000603 Thumb Code 16 fepilogue.o(.text) + _float_epilogue 0x00000613 Thumb Code 114 fepilogue.o(.text) + _double_round 0x00000685 Thumb Code 26 depilogue.o(.text) + _double_epilogue 0x0000069f Thumb Code 164 depilogue.o(.text) + __aeabi_dadd 0x00000745 Thumb Code 330 dadd.o(.text) + __aeabi_dsub 0x0000088f Thumb Code 12 dadd.o(.text) + __aeabi_drsub 0x0000089b Thumb Code 12 dadd.o(.text) + __aeabi_d2ulz 0x000008ad Thumb Code 54 dfixul.o(.text) + __aeabi_cdrcmple 0x000008ed Thumb Code 38 cdrcmple.o(.text) + __scatterload 0x00000915 Thumb Code 28 init.o(.text) + __scatterload_rt2 0x00000915 Thumb Code 0 init.o(.text) + __aeabi_llsl 0x00000939 Thumb Code 32 llshl.o(.text) + _ll_shift_l 0x00000939 Thumb Code 0 llshl.o(.text) + __aeabi_lasr 0x00000959 Thumb Code 38 llsshr.o(.text) + _ll_sshift_r 0x00000959 Thumb Code 0 llsshr.o(.text) + ADC_Init 0x00000981 Thumb Code 332 lib_adc.o(i.ADC_Init) + ADC_Reset 0x00000ad1 Thumb Code 38 lib_adc.o(i.ADC_Reset) + DeviceClockAllEnable 0x00000b01 Thumb Code 42 lib_scu.o(i.DeviceClockAllEnable) + GPIO_GetNormalBitOffsetFromPin 0x00000b35 Thumb Code 184 lib_gpio.o(i.GPIO_GetNormalBitOffsetFromPin) + GPIO_Init 0x00000bed Thumb Code 134 lib_gpio.o(i.GPIO_Init) + GPIO_ReadBit 0x00000c75 Thumb Code 42 lib_gpio.o(i.GPIO_ReadBit) + GPIO_SetDSRegFromPin 0x00000ca5 Thumb Code 98 lib_gpio.o(i.GPIO_SetDSRegFromPin) + GPIO_SetDirRegFromPin 0x00000d0d Thumb Code 70 lib_gpio.o(i.GPIO_SetDirRegFromPin) + GPIO_SetFuncxRegFromPin 0x00000d59 Thumb Code 950 lib_gpio.o(i.GPIO_SetFuncxRegFromPin) + GPIO_SetODERegFromPin 0x00001115 Thumb Code 98 lib_gpio.o(i.GPIO_SetODERegFromPin) + GPIO_SetPDERegFromPin 0x0000117d Thumb Code 98 lib_gpio.o(i.GPIO_SetPDERegFromPin) + GPIO_SetPUERegFromPin 0x000011e5 Thumb Code 98 lib_gpio.o(i.GPIO_SetPUERegFromPin) + GPIO_SetPortFLTFromPin 0x0000124d Thumb Code 98 lib_gpio.o(i.GPIO_SetPortFLTFromPin) + GPIO_SetPortTypeFromPin 0x000012b5 Thumb Code 98 lib_gpio.o(i.GPIO_SetPortTypeFromPin) + GPIO_SetSingalTypeFromPin 0x0000131d Thumb Code 98 lib_gpio.o(i.GPIO_SetSingalTypeFromPin) + GPIO_WriteBit 0x00001385 Thumb Code 70 lib_gpio.o(i.GPIO_WriteBit) + HRC_Config 0x000013d1 Thumb Code 194 lib_scu.o(i.HRC_Config) + NVIC_Init 0x0000149d Thumb Code 94 lib_scs.o(i.NVIC_Init) + SCU_SysClkSelect 0x00001501 Thumb Code 34 lib_scu.o(i.SCU_SysClkSelect) + SysTick_IRQHandler 0x0000152d Thumb Code 12 systicket.o(i.SysTick_IRQHandler) + SysTick_Init 0x0000153d Thumb Code 60 lib_scs.o(i.SysTick_Init) + SystemInit 0x0000157d Thumb Code 26 system_es8p5066.o(i.SystemInit) + T16Nx_BaseInit 0x000015a1 Thumb Code 100 lib_timer.o(i.T16Nx_BaseInit) + T16Nx_Disable 0x00001605 Thumb Code 10 lib_timer.o(i.T16Nx_Disable) + T16Nx_Enable 0x0000160f Thumb Code 12 lib_timer.o(i.T16Nx_Enable) + T16Nx_GetTOP0 0x0000161b Thumb Code 8 lib_timer.o(i.T16Nx_GetTOP0) + T16Nx_GetTOP1 0x00001623 Thumb Code 8 lib_timer.o(i.T16Nx_GetTOP1) + T16Nx_MAT0ITConfig 0x0000162b Thumb Code 24 lib_timer.o(i.T16Nx_MAT0ITConfig) + T16Nx_MAT0Out0Config 0x00001643 Thumb Code 24 lib_timer.o(i.T16Nx_MAT0Out0Config) + T16Nx_MAT1ITConfig 0x0000165b Thumb Code 24 lib_timer.o(i.T16Nx_MAT1ITConfig) + T16Nx_MAT1Out0Config 0x00001673 Thumb Code 24 lib_timer.o(i.T16Nx_MAT1Out0Config) + T16Nx_MAT2ITConfig 0x0000168b Thumb Code 24 lib_timer.o(i.T16Nx_MAT2ITConfig) + T16Nx_MAT2Out1Config 0x000016a3 Thumb Code 24 lib_timer.o(i.T16Nx_MAT2Out1Config) + T16Nx_MAT3ITConfig 0x000016bb Thumb Code 24 lib_timer.o(i.T16Nx_MAT3ITConfig) + T16Nx_MAT3Out1Config 0x000016d3 Thumb Code 24 lib_timer.o(i.T16Nx_MAT3Out1Config) + T16Nx_PMWOutInit 0x000016eb Thumb Code 128 lib_timer.o(i.T16Nx_PMWOutInit) + T16Nx_SetCNT0 0x0000176b Thumb Code 36 lib_timer.o(i.T16Nx_SetCNT0) + T16Nx_SetCNT1 0x0000178f Thumb Code 36 lib_timer.o(i.T16Nx_SetCNT1) + T16Nx_SetMAT0 0x000017b3 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT0) + T16Nx_SetMAT1 0x000017c1 Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT1) + T16Nx_SetMAT2 0x000017cf Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT2) + T16Nx_SetMAT3 0x000017dd Thumb Code 14 lib_timer.o(i.T16Nx_SetMAT3) + T16Nx_SetTOP0 0x000017eb Thumb Code 14 lib_timer.o(i.T16Nx_SetTOP0) + T16Nx_SetTOP1 0x000017f9 Thumb Code 14 lib_timer.o(i.T16Nx_SetTOP1) + UART_ClearITPendingBit 0x00001807 Thumb Code 4 lib_uart.o(i.UART_ClearITPendingBit) + UART_GetFlagStatus 0x0000180b Thumb Code 16 lib_uart.o(i.UART_GetFlagStatus) + UART_ITConfig 0x0000181b Thumb Code 20 lib_uart.o(i.UART_ITConfig) + UART_Init 0x00001831 Thumb Code 350 lib_uart.o(i.UART_Init) + UART_SendByte 0x00001999 Thumb Code 6 lib_uart.o(i.UART_SendByte) + UART_TBIMConfig 0x0000199f Thumb Code 16 lib_uart.o(i.UART_TBIMConfig) + __0printf 0x000019b1 Thumb Code 24 printfa.o(i.__0printf) + __1printf 0x000019b1 Thumb Code 0 printfa.o(i.__0printf) + __2printf 0x000019b1 Thumb Code 0 printfa.o(i.__0printf) + __c89printf 0x000019b1 Thumb Code 0 printfa.o(i.__0printf) + printf 0x000019b1 Thumb Code 0 printfa.o(i.__0printf) + __ARM_clz 0x000019d1 Thumb Code 46 depilogue.o(i.__ARM_clz) + __ARM_common_switch8 0x000019ff Thumb Code 28 lib_gpio.o(i.__ARM_common_switch8) + __scatterload_copy 0x00001a1b Thumb Code 14 handlers.o(i.__scatterload_copy) + __scatterload_null 0x00001a29 Thumb Code 2 handlers.o(i.__scatterload_null) + __scatterload_zeroinit 0x00001a2b Thumb Code 14 handlers.o(i.__scatterload_zeroinit) + adc_get_chnum 0x000022e9 Thumb Code 184 adc.o(i.adc_get_chnum) + adc_module_init 0x000023d9 Thumb Code 56 adc.o(i.adc_module_init) + adc_pin_init 0x00002415 Thumb Code 36 adc.o(i.adc_pin_init) + close_all_light 0x00002495 Thumb Code 38 light_control_service.o(i.close_all_light) + compute_countdown 0x000024bd Thumb Code 86 main.o(i.compute_countdown) + do_countdown_flash_light_effect 0x00002545 Thumb Code 146 light_control_service.o(i.do_countdown_flash_light_effect) + do_debug_light_state 0x000025e5 Thumb Code 42 main.o(i.do_debug_light_state) + fputc 0x00002615 Thumb Code 66 lib_printf.o(i.fputc) + init_all_subdevice_state 0x000026ad Thumb Code 58 main.o(i.init_all_subdevice_state) + lcs_active_input 0x000026e9 Thumb Code 18 light_control_service.o(i.lcs_active_input) + lcs_input_is_active 0x00002701 Thumb Code 18 light_control_service.o(i.lcs_input_is_active) + lcs_schedule_process 0x00002719 Thumb Code 56 light_control_service.o(i.lcs_schedule_process) + lcs_shcedule 0x00002759 Thumb Code 28 light_control_service.o(i.lcs_shcedule) + main 0x00002779 Thumb Code 138 main.o(i.main) + mf_set_status_light_state 0x000028c1 Thumb Code 28 light_control_service.o(i.mf_set_status_light_state) + port_debug_set 0x00002b55 Thumb Code 18 port.o(i.port_debug_set) + port_fan_get 0x00002b67 Thumb Code 18 port.o(i.port_fan_get) + port_fan_set 0x00002b79 Thumb Code 26 port.o(i.port_fan_set) + port_gpio_get_interval_key_state 0x00002b93 Thumb Code 18 port.o(i.port_gpio_get_interval_key_state) + port_gpio_get_level_key_state 0x00002ba5 Thumb Code 18 port.o(i.port_gpio_get_level_key_state) + port_gpio_get_power_key_state 0x00002bb7 Thumb Code 18 port.o(i.port_gpio_get_power_key_state) + port_gpio_get_timer_key_state 0x00002bc9 Thumb Code 18 port.o(i.port_gpio_get_timer_key_state) + port_init 0x00002bdd Thumb Code 276 port.o(i.port_init) + port_led0_set 0x00002cf9 Thumb Code 18 port.o(i.port_led0_set) + port_led1_set 0x00002d0b Thumb Code 18 port.o(i.port_led1_set) + port_led2_set 0x00002d1d Thumb Code 18 port.o(i.port_led2_set) + port_led3_set 0x00002d2f Thumb Code 18 port.o(i.port_led3_set) + port_led_b_set 0x00002d41 Thumb Code 18 port.o(i.port_led_b_set) + port_led_g_set 0x00002d53 Thumb Code 18 port.o(i.port_led_g_set) + port_led_r_set 0x00002d65 Thumb Code 18 port.o(i.port_led_r_set) + port_ozone_pwm_set_duty 0x00002d79 Thumb Code 28 port.o(i.port_ozone_pwm_set_duty) + port_ozone_pwm_stop 0x00002d99 Thumb Code 12 port.o(i.port_ozone_pwm_stop) + process_countdonwlight 0x00002da9 Thumb Code 106 light_control_service.o(i.process_countdonwlight) + process_countdwonevent 0x00002e19 Thumb Code 116 main.o(i.process_countdwonevent) + process_level_light 0x00002e91 Thumb Code 110 light_control_service.o(i.process_level_light) + systicket_get_now_ms 0x00002fd5 Thumb Code 6 systicket.o(i.systicket_get_now_ms) + systicket_haspassedms 0x00002fe1 Thumb Code 28 systicket.o(i.systicket_haspassedms) + systicket_init 0x00002ffd Thumb Code 54 systicket.o(i.systicket_init) + uart0_init 0x0000303d Thumb Code 128 uart0.o(i.uart0_init) + zgpio_get_default_input_config 0x00003155 Thumb Code 22 gpio.o(i.zgpio_get_default_input_config) + zgpio_get_default_ode_output_config 0x00003171 Thumb Code 26 gpio.o(i.zgpio_get_default_ode_output_config) + zgpio_get_default_output_config 0x00003191 Thumb Code 22 gpio.o(i.zgpio_get_default_output_config) + zgpio_init_all_gpio 0x000031ad Thumb Code 2 gpio.o(i.zgpio_init_all_gpio) + zgpio_init_as_input 0x000031af Thumb Code 16 gpio.o(i.zgpio_init_as_input) + zgpio_init_as_output 0x000031bf Thumb Code 26 gpio.o(i.zgpio_init_as_output) + zkey_do_loop_in_each_period 0x000031d9 Thumb Code 50 key.o(i.zkey_do_loop_in_each_period) + zkey_init 0x00003215 Thumb Code 108 key.o(i.zkey_init) + zkey_process_each 0x00003289 Thumb Code 62 key.o(i.zkey_process_each) + zpwm_init 0x000032c7 Thumb Code 218 pwm_1.o(i.zpwm_init) + zpwm_set_duty 0x000033a1 Thumb Code 180 pwm_1.o(i.zpwm_set_duty) + zpwm_set_duty_ns 0x00003459 Thumb Code 150 pwm_1.o(i.zpwm_set_duty_ns) + zpwm_set_freq 0x000034f9 Thumb Code 74 pwm_1.o(i.zpwm_set_freq) + zpwm_stop 0x00003543 Thumb Code 88 pwm_1.o(i.zpwm_stop) + zsimple_timer_alloc 0x0000359d Thumb Code 76 zsimple_timer.o(i.zsimple_timer_alloc) + zsimple_timer_module_init 0x00003631 Thumb Code 44 zsimple_timer.o(i.zsimple_timer_module_init) + zsimple_timer_schedule 0x00003691 Thumb Code 54 zsimple_timer.o(i.zsimple_timer_schedule) + zsimple_timer_trigger_static 0x000036d1 Thumb Code 30 zsimple_timer.o(i.zsimple_timer_trigger_static) + Region$$Table$$Base 0x00003720 Number 0 anon$$obj.o(Region$$Table) + Region$$Table$$Limit 0x00003740 Number 0 anon$$obj.o(Region$$Table) key_module 0x20000070 Data 12 main.o(.data) debuglighttimer 0x2000007c Data 4 main.o(.data) - SystemCoreClock 0x200000ac Data 4 system_es8p5066.o(.data) - g_sys_sick 0x200000c8 Data 4 systicket.o(.data) - __stdout 0x200000d4 Data 4 stdout.o(.data) - power_and_freq_table 0x20000218 Data 1600 main.o(.bss) - g_ozonepwm 0x20000858 Data 40 port.o(.bss) - thisDevice 0x20000880 Data 28 thisdevice.o(.bss) - __initial_sp 0x20000ca0 Data 0 startup_es8p5066.o(STACK) + freq 0x20000080 Data 4 main.o(.data) + dutyns 0x20000084 Data 4 main.o(.data) + SystemCoreClock 0x200000b4 Data 4 system_es8p5066.o(.data) + g_sys_sick 0x200000d0 Data 4 systicket.o(.data) + __stdout 0x200000dc Data 4 stdout.o(.data) + g_ozonepwm 0x20000220 Data 40 port.o(.bss) + thisDevice 0x20000248 Data 28 thisdevice.o(.bss) + __initial_sp 0x20000668 Data 0 startup_es8p5066.o(STACK) @@ -1544,237 +1565,219 @@ Memory Map of the image Image Entry point : 0x000000c1 - Load Region LR_IROM1 (Base: 0x00000000, Size: 0x00003b44, Max: 0x00010000, ABSOLUTE) + Load Region LR_IROM1 (Base: 0x00000000, Size: 0x00003820, Max: 0x00010000, ABSOLUTE) - Execution Region ER_IROM1 (Exec base: 0x00000000, Load base: 0x00000000, Size: 0x00003a6c, Max: 0x00010000, ABSOLUTE) + Execution Region ER_IROM1 (Exec base: 0x00000000, Load base: 0x00000000, Size: 0x00003740, Max: 0x00010000, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x00000000 0x00000000 0x000000c0 Data RO 665 RESET startup_es8p5066.o - 0x000000c0 0x000000c0 0x00000000 Code RO 2392 * .ARM.Collect$$$$00000000 mc_p.l(entry.o) - 0x000000c0 0x000000c0 0x00000004 Code RO 2690 .ARM.Collect$$$$00000001 mc_p.l(entry2.o) - 0x000000c4 0x000000c4 0x00000004 Code RO 2693 .ARM.Collect$$$$00000004 mc_p.l(entry5.o) - 0x000000c8 0x000000c8 0x00000000 Code RO 2695 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o) - 0x000000c8 0x000000c8 0x00000000 Code RO 2697 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o) - 0x000000c8 0x000000c8 0x00000008 Code RO 2698 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o) - 0x000000d0 0x000000d0 0x00000004 Code RO 2705 .ARM.Collect$$$$0000000E mc_p.l(entry12b.o) - 0x000000d4 0x000000d4 0x00000000 Code RO 2700 .ARM.Collect$$$$0000000F mc_p.l(entry10a.o) - 0x000000d4 0x000000d4 0x00000000 Code RO 2702 .ARM.Collect$$$$00000011 mc_p.l(entry11a.o) - 0x000000d4 0x000000d4 0x00000004 Code RO 2691 .ARM.Collect$$$$00002712 mc_p.l(entry2.o) - 0x000000d8 0x000000d8 0x0000001c Code RO 666 .text startup_es8p5066.o - 0x000000f4 0x000000f4 0x0000002c Code RO 2395 .text mc_p.l(uidiv.o) - 0x00000120 0x00000120 0x00000028 Code RO 2397 .text mc_p.l(idiv.o) - 0x00000148 0x00000148 0x00000024 Code RO 2399 .text mc_p.l(memseta.o) - 0x0000016c 0x0000016c 0x0000001c Code RO 2401 .text mc_p.l(strcmp.o) - 0x00000188 0x00000188 0x000000b2 Code RO 2664 .text mf_p.l(fadd.o) - 0x0000023a 0x0000023a 0x0000007a Code RO 2666 .text mf_p.l(fmul.o) - 0x000002b4 0x000002b4 0x0000007c Code RO 2668 .text mf_p.l(fdiv.o) - 0x00000330 0x00000330 0x000000d0 Code RO 2670 .text mf_p.l(dmul.o) - 0x00000400 0x00000400 0x000000f0 Code RO 2672 .text mf_p.l(ddiv.o) - 0x000004f0 0x000004f0 0x0000000e Code RO 2674 .text mf_p.l(ffltui.o) - 0x000004fe 0x000004fe 0x00000002 PAD - 0x00000500 0x00000500 0x00000028 Code RO 2676 .text mf_p.l(dflti.o) - 0x00000528 0x00000528 0x0000001c Code RO 2678 .text mf_p.l(dfltui.o) - 0x00000544 0x00000544 0x00000028 Code RO 2680 .text mf_p.l(ffixui.o) - 0x0000056c 0x0000056c 0x0000003c Code RO 2682 .text mf_p.l(dfixui.o) - 0x000005a8 0x000005a8 0x00000028 Code RO 2684 .text mf_p.l(f2d.o) - 0x000005d0 0x000005d0 0x00000028 Code RO 2686 .text mf_p.l(cdcmple.o) - 0x000005f8 0x000005f8 0x00000038 Code RO 2688 .text mf_p.l(d2f.o) - 0x00000630 0x00000630 0x00000060 Code RO 2707 .text mc_p.l(uldiv.o) - 0x00000690 0x00000690 0x00000022 Code RO 2709 .text mc_p.l(llushr.o) - 0x000006b2 0x000006b2 0x00000000 Code RO 2711 .text mc_p.l(iusefp.o) - 0x000006b2 0x000006b2 0x00000082 Code RO 2712 .text mf_p.l(fepilogue.o) - 0x00000734 0x00000734 0x000000be Code RO 2714 .text mf_p.l(depilogue.o) - 0x000007f2 0x000007f2 0x00000002 PAD - 0x000007f4 0x000007f4 0x00000168 Code RO 2718 .text mf_p.l(dadd.o) - 0x0000095c 0x0000095c 0x00000040 Code RO 2720 .text mf_p.l(dfixul.o) - 0x0000099c 0x0000099c 0x00000028 Code RO 2722 .text mf_p.l(cdrcmple.o) - 0x000009c4 0x000009c4 0x00000024 Code RO 2724 .text mc_p.l(init.o) - 0x000009e8 0x000009e8 0x00000020 Code RO 2726 .text mc_p.l(llshl.o) - 0x00000a08 0x00000a08 0x00000026 Code RO 2728 .text mc_p.l(llsshr.o) - 0x00000a2e 0x00000a2e 0x00000002 PAD - 0x00000a30 0x00000a30 0x00000010 Code RO 744 i.ADC_ClearIFStatus lib_adc.o - 0x00000a40 0x00000a40 0x00000010 Code RO 747 i.ADC_GetConvValue lib_adc.o - 0x00000a50 0x00000a50 0x00000018 Code RO 749 i.ADC_GetIFStatus lib_adc.o - 0x00000a68 0x00000a68 0x00000150 Code RO 750 i.ADC_Init lib_adc.o - 0x00000bb8 0x00000bb8 0x00000030 Code RO 751 i.ADC_Reset lib_adc.o - 0x00000be8 0x00000be8 0x00000018 Code RO 752 i.ADC_Set_CH lib_adc.o - 0x00000c00 0x00000c00 0x00000028 Code RO 753 i.ADC_SoftStart lib_adc.o - 0x00000c28 0x00000c28 0x00000028 Code RO 754 i.ADC_SoftStop lib_adc.o - 0x00000c50 0x00000c50 0x00000034 Code RO 1273 i.DeviceClockAllEnable lib_scu.o - 0x00000c84 0x00000c84 0x000000b8 Code RO 835 i.GPIO_GetNormalBitOffsetFromPin lib_gpio.o - 0x00000d3c 0x00000d3c 0x00000086 Code RO 836 i.GPIO_Init lib_gpio.o - 0x00000dc2 0x00000dc2 0x00000002 PAD - 0x00000dc4 0x00000dc4 0x00000030 Code RO 837 i.GPIO_ReadBit lib_gpio.o - 0x00000df4 0x00000df4 0x00000068 Code RO 840 i.GPIO_SetDSRegFromPin lib_gpio.o - 0x00000e5c 0x00000e5c 0x0000004c Code RO 841 i.GPIO_SetDirRegFromPin lib_gpio.o - 0x00000ea8 0x00000ea8 0x000003bc Code RO 842 i.GPIO_SetFuncxRegFromPin lib_gpio.o - 0x00001264 0x00001264 0x00000068 Code RO 843 i.GPIO_SetODERegFromPin lib_gpio.o - 0x000012cc 0x000012cc 0x00000068 Code RO 844 i.GPIO_SetPDERegFromPin lib_gpio.o - 0x00001334 0x00001334 0x00000068 Code RO 845 i.GPIO_SetPUERegFromPin lib_gpio.o - 0x0000139c 0x0000139c 0x00000068 Code RO 846 i.GPIO_SetPortFLTFromPin lib_gpio.o - 0x00001404 0x00001404 0x00000068 Code RO 847 i.GPIO_SetPortTypeFromPin lib_gpio.o - 0x0000146c 0x0000146c 0x00000068 Code RO 848 i.GPIO_SetSingalTypeFromPin lib_gpio.o - 0x000014d4 0x000014d4 0x0000004c Code RO 851 i.GPIO_WriteBit lib_gpio.o - 0x00001520 0x00001520 0x000000cc Code RO 1276 i.HRC_Config lib_scu.o - 0x000015ec 0x000015ec 0x00000064 Code RO 1234 i.NVIC_Init lib_scs.o - 0x00001650 0x00001650 0x0000002c Code RO 1285 i.SCU_SysClkSelect lib_scu.o - 0x0000167c 0x0000167c 0x00000010 Code RO 2219 i.SysTick_IRQHandler systicket.o - 0x0000168c 0x0000168c 0x00000040 Code RO 1237 i.SysTick_Init lib_scs.o - 0x000016cc 0x000016cc 0x00000024 Code RO 639 i.SystemInit system_es8p5066.o - 0x000016f0 0x000016f0 0x00000064 Code RO 1487 i.T16Nx_BaseInit lib_timer.o - 0x00001754 0x00001754 0x0000000a Code RO 1490 i.T16Nx_Disable lib_timer.o - 0x0000175e 0x0000175e 0x0000000c Code RO 1491 i.T16Nx_Enable lib_timer.o - 0x0000176a 0x0000176a 0x00000008 Code RO 1501 i.T16Nx_GetTOP0 lib_timer.o - 0x00001772 0x00001772 0x00000008 Code RO 1502 i.T16Nx_GetTOP1 lib_timer.o - 0x0000177a 0x0000177a 0x00000018 Code RO 1504 i.T16Nx_MAT0ITConfig lib_timer.o - 0x00001792 0x00001792 0x00000018 Code RO 1505 i.T16Nx_MAT0Out0Config lib_timer.o - 0x000017aa 0x000017aa 0x00000018 Code RO 1506 i.T16Nx_MAT1ITConfig lib_timer.o - 0x000017c2 0x000017c2 0x00000018 Code RO 1507 i.T16Nx_MAT1Out0Config lib_timer.o - 0x000017da 0x000017da 0x00000018 Code RO 1508 i.T16Nx_MAT2ITConfig lib_timer.o - 0x000017f2 0x000017f2 0x00000018 Code RO 1509 i.T16Nx_MAT2Out1Config lib_timer.o - 0x0000180a 0x0000180a 0x00000018 Code RO 1510 i.T16Nx_MAT3ITConfig lib_timer.o - 0x00001822 0x00001822 0x00000018 Code RO 1511 i.T16Nx_MAT3Out1Config lib_timer.o - 0x0000183a 0x0000183a 0x00000080 Code RO 1512 i.T16Nx_PMWOutInit lib_timer.o - 0x000018ba 0x000018ba 0x00000024 Code RO 1517 i.T16Nx_SetCNT0 lib_timer.o - 0x000018de 0x000018de 0x00000024 Code RO 1518 i.T16Nx_SetCNT1 lib_timer.o - 0x00001902 0x00001902 0x0000000e Code RO 1519 i.T16Nx_SetMAT0 lib_timer.o - 0x00001910 0x00001910 0x0000000e Code RO 1520 i.T16Nx_SetMAT1 lib_timer.o - 0x0000191e 0x0000191e 0x0000000e Code RO 1521 i.T16Nx_SetMAT2 lib_timer.o - 0x0000192c 0x0000192c 0x0000000e Code RO 1522 i.T16Nx_SetMAT3 lib_timer.o - 0x0000193a 0x0000193a 0x0000000e Code RO 1525 i.T16Nx_SetTOP0 lib_timer.o - 0x00001948 0x00001948 0x0000000e Code RO 1526 i.T16Nx_SetTOP1 lib_timer.o - 0x00001956 0x00001956 0x00000004 Code RO 1923 i.UART_ClearITPendingBit lib_uart.o - 0x0000195a 0x0000195a 0x00000010 Code RO 1924 i.UART_GetFlagStatus lib_uart.o - 0x0000196a 0x0000196a 0x00000014 Code RO 1927 i.UART_ITConfig lib_uart.o - 0x0000197e 0x0000197e 0x00000002 PAD - 0x00001980 0x00001980 0x00000168 Code RO 1928 i.UART_Init lib_uart.o - 0x00001ae8 0x00001ae8 0x00000006 Code RO 1933 i.UART_SendByte lib_uart.o - 0x00001aee 0x00001aee 0x00000010 Code RO 1936 i.UART_TBIMConfig lib_uart.o - 0x00001afe 0x00001afe 0x00000002 PAD - 0x00001b00 0x00001b00 0x00000020 Code RO 2636 i.__0printf mc_p.l(printfa.o) - 0x00001b20 0x00001b20 0x0000002e Code RO 2716 i.__ARM_clz mf_p.l(depilogue.o) - 0x00001b4e 0x00001b4e 0x0000001c Code RO 1066 i.__ARM_common_switch8 lib_gpio.o - 0x00001b6a 0x00001b6a 0x0000000e Code RO 2732 i.__scatterload_copy mc_p.l(handlers.o) - 0x00001b78 0x00001b78 0x00000002 Code RO 2733 i.__scatterload_null mc_p.l(handlers.o) - 0x00001b7a 0x00001b7a 0x0000000e Code RO 2734 i.__scatterload_zeroinit mc_p.l(handlers.o) - 0x00001b88 0x00001b88 0x00000174 Code RO 2643 i._fp_digits mc_p.l(printfa.o) - 0x00001cfc 0x00001cfc 0x000006f0 Code RO 2644 i._printf_core mc_p.l(printfa.o) - 0x000023ec 0x000023ec 0x00000020 Code RO 2645 i._printf_post_padding mc_p.l(printfa.o) - 0x0000240c 0x0000240c 0x0000002c Code RO 2646 i._printf_pre_padding mc_p.l(printfa.o) - 0x00002438 0x00002438 0x000000f0 Code RO 2104 i.adc_get_chnum adc.o - 0x00002528 0x00002528 0x00000012 Code RO 2105 i.adc_get_value adc.o - 0x0000253a 0x0000253a 0x00000034 Code RO 2106 i.adc_get_value_by_adcch adc.o - 0x0000256e 0x0000256e 0x00000002 PAD - 0x00002570 0x00002570 0x00000040 Code RO 2107 i.adc_get_voltage adc.o - 0x000025b0 0x000025b0 0x0000003c Code RO 2108 i.adc_module_init adc.o - 0x000025ec 0x000025ec 0x00000028 Code RO 2109 i.adc_pin_init adc.o - 0x00002614 0x00002614 0x00000058 Code RO 2339 i.calculate_top pwm_1.o - 0x0000266c 0x0000266c 0x00000026 Code RO 470 i.close_all_light light_control_service.o - 0x00002692 0x00002692 0x00000002 PAD - 0x00002694 0x00002694 0x0000005c Code RO 3 i.compute_countdown main.o - 0x000026f0 0x000026f0 0x0000002c Code RO 4 i.compute_countdown_num main.o - 0x0000271c 0x0000271c 0x000000a0 Code RO 471 i.do_countdown_flash_light_effect light_control_service.o - 0x000027bc 0x000027bc 0x00000030 Code RO 5 i.do_debug_light_state main.o - 0x000027ec 0x000027ec 0x0000004c Code RO 1207 i.fputc lib_printf.o - 0x00002838 0x00002838 0x0000002c Code RO 6 i.get_ozone_power main.o - 0x00002864 0x00002864 0x00000044 Code RO 7 i.increase_and_assign_countdonwnum main.o - 0x000028a8 0x000028a8 0x0000003a Code RO 8 i.init_all_subdevice_state main.o - 0x000028e2 0x000028e2 0x00000002 PAD - 0x000028e4 0x000028e4 0x00000018 Code RO 472 i.lcs_active_input light_control_service.o - 0x000028fc 0x000028fc 0x00000018 Code RO 473 i.lcs_input_is_active light_control_service.o - 0x00002914 0x00002914 0x00000040 Code RO 474 i.lcs_schedule_process light_control_service.o - 0x00002954 0x00002954 0x00000020 Code RO 475 i.lcs_shcedule light_control_service.o - 0x00002974 0x00002974 0x0000010c Code RO 9 i.main main.o - 0x00002a80 0x00002a80 0x0000001c Code RO 553 i.mf_haspassedms zsimple_timer.o - 0x00002a9c 0x00002a9c 0x00000024 Code RO 476 i.mf_set_status_light_by_level light_control_service.o - 0x00002ac0 0x00002ac0 0x0000001c Code RO 477 i.mf_set_status_light_state light_control_service.o - 0x00002adc 0x00002adc 0x00000058 Code RO 554 i.mf_start_trigger zsimple_timer.o - 0x00002b34 0x00002b34 0x00000030 Code RO 555 i.mf_trigger zsimple_timer.o - 0x00002b64 0x00002b64 0x000001e4 Code RO 10 i.onkey main.o - 0x00002d48 0x00002d48 0x00000034 Code RO 199 i.port_adc_get_ozone_generator_power port.o - 0x00002d7c 0x00002d7c 0x00000012 Code RO 201 i.port_debug_set port.o - 0x00002d8e 0x00002d8e 0x00000012 Code RO 202 i.port_fan_get port.o - 0x00002da0 0x00002da0 0x0000001a Code RO 203 i.port_fan_set port.o - 0x00002dba 0x00002dba 0x00000012 Code RO 204 i.port_gpio_get_interval_key_state port.o - 0x00002dcc 0x00002dcc 0x00000012 Code RO 205 i.port_gpio_get_level_key_state port.o - 0x00002dde 0x00002dde 0x00000012 Code RO 206 i.port_gpio_get_power_key_state port.o - 0x00002df0 0x00002df0 0x00000012 Code RO 207 i.port_gpio_get_timer_key_state port.o - 0x00002e02 0x00002e02 0x00000002 PAD - 0x00002e04 0x00002e04 0x0000011c Code RO 208 i.port_init port.o - 0x00002f20 0x00002f20 0x00000012 Code RO 210 i.port_led0_set port.o - 0x00002f32 0x00002f32 0x00000012 Code RO 212 i.port_led1_set port.o - 0x00002f44 0x00002f44 0x00000012 Code RO 214 i.port_led2_set port.o - 0x00002f56 0x00002f56 0x00000012 Code RO 216 i.port_led3_set port.o - 0x00002f68 0x00002f68 0x00000012 Code RO 218 i.port_led_b_set port.o - 0x00002f7a 0x00002f7a 0x00000012 Code RO 220 i.port_led_g_set port.o - 0x00002f8c 0x00002f8c 0x00000012 Code RO 222 i.port_led_r_set port.o - 0x00002f9e 0x00002f9e 0x00000002 PAD - 0x00002fa0 0x00002fa0 0x00000020 Code RO 223 i.port_ozone_pwm_set_duty port.o - 0x00002fc0 0x00002fc0 0x00000010 Code RO 224 i.port_ozone_pwm_start port.o - 0x00002fd0 0x00002fd0 0x00000010 Code RO 225 i.port_ozone_pwm_stop port.o - 0x00002fe0 0x00002fe0 0x00000078 Code RO 11 i.printf_ozone_freq_and_power_table main.o - 0x00003058 0x00003058 0x00000070 Code RO 478 i.process_countdonwlight light_control_service.o - 0x000030c8 0x000030c8 0x00000078 Code RO 12 i.process_countdwonevent main.o - 0x00003140 0x00003140 0x0000007c Code RO 479 i.process_level_light light_control_service.o - 0x000031bc 0x000031bc 0x0000005c Code RO 2294 i.prv_zkey_process_each_after_filter key.o - 0x00003218 0x00003218 0x00000028 Code RO 13 i.set_countdown main.o - 0x00003240 0x00003240 0x00000024 Code RO 14 i.set_pwm_and_get_power main.o - 0x00003264 0x00003264 0x00000024 Code RO 15 i.shutdwon main.o - 0x00003288 0x00003288 0x0000001a Code RO 2220 i.systicket_delay_ms systicket.o - 0x000032a2 0x000032a2 0x00000002 PAD - 0x000032a4 0x000032a4 0x0000000c Code RO 2221 i.systicket_get_now_ms systicket.o - 0x000032b0 0x000032b0 0x0000001c Code RO 2222 i.systicket_haspassedms systicket.o - 0x000032cc 0x000032cc 0x00000040 Code RO 2223 i.systicket_init systicket.o - 0x0000330c 0x0000330c 0x00000084 Code RO 2266 i.uart0_init uart0.o - 0x00003390 0x00003390 0x00000092 Code RO 2267 i.uart0_init_pin uart0.o - 0x00003422 0x00003422 0x00000002 PAD - 0x00003424 0x00003424 0x0000001c Code RO 2165 i.zgpio_get_default_input_config gpio.o - 0x00003440 0x00003440 0x00000020 Code RO 2166 i.zgpio_get_default_ode_output_config gpio.o - 0x00003460 0x00003460 0x0000001c Code RO 2167 i.zgpio_get_default_output_config gpio.o - 0x0000347c 0x0000347c 0x00000002 Code RO 2168 i.zgpio_init_all_gpio gpio.o - 0x0000347e 0x0000347e 0x00000010 Code RO 2169 i.zgpio_init_as_input gpio.o - 0x0000348e 0x0000348e 0x0000001a Code RO 2170 i.zgpio_init_as_output gpio.o - 0x000034a8 0x000034a8 0x0000003c Code RO 2295 i.zkey_do_loop_in_each_period key.o - 0x000034e4 0x000034e4 0x00000074 Code RO 2296 i.zkey_init key.o - 0x00003558 0x00003558 0x0000003e Code RO 2297 i.zkey_process_each key.o - 0x00003596 0x00003596 0x000000da Code RO 2340 i.zpwm_init pwm_1.o - 0x00003670 0x00003670 0x000000b8 Code RO 2341 i.zpwm_set_duty pwm_1.o - 0x00003728 0x00003728 0x000000a0 Code RO 2342 i.zpwm_set_duty_ns pwm_1.o - 0x000037c8 0x000037c8 0x0000004a Code RO 2343 i.zpwm_set_freq pwm_1.o - 0x00003812 0x00003812 0x0000005c Code RO 2344 i.zpwm_start pwm_1.o - 0x0000386e 0x0000386e 0x00000058 Code RO 2345 i.zpwm_stop pwm_1.o - 0x000038c6 0x000038c6 0x00000002 PAD - 0x000038c8 0x000038c8 0x00000094 Code RO 556 i.zsimple_timer_alloc zsimple_timer.o - 0x0000395c 0x0000395c 0x00000060 Code RO 557 i.zsimple_timer_module_init zsimple_timer.o - 0x000039bc 0x000039bc 0x00000040 Code RO 558 i.zsimple_timer_schedule zsimple_timer.o - 0x000039fc 0x000039fc 0x0000001e Code RO 562 i.zsimple_timer_trigger_static zsimple_timer.o - 0x00003a1a 0x00003a1a 0x00000002 PAD - 0x00003a1c 0x00003a1c 0x0000002d Data RO 17 .conststring main.o - 0x00003a49 0x00003a49 0x00000003 PAD - 0x00003a4c 0x00003a4c 0x00000020 Data RO 2730 Region$$Table anon$$obj.o + 0x00000000 0x00000000 0x000000c0 Data RO 761 RESET startup_es8p5066.o + 0x000000c0 0x000000c0 0x00000000 Code RO 2488 * .ARM.Collect$$$$00000000 mc_p.l(entry.o) + 0x000000c0 0x000000c0 0x00000004 Code RO 2786 .ARM.Collect$$$$00000001 mc_p.l(entry2.o) + 0x000000c4 0x000000c4 0x00000004 Code RO 2789 .ARM.Collect$$$$00000004 mc_p.l(entry5.o) + 0x000000c8 0x000000c8 0x00000000 Code RO 2791 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o) + 0x000000c8 0x000000c8 0x00000000 Code RO 2793 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o) + 0x000000c8 0x000000c8 0x00000008 Code RO 2794 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o) + 0x000000d0 0x000000d0 0x00000004 Code RO 2801 .ARM.Collect$$$$0000000E mc_p.l(entry12b.o) + 0x000000d4 0x000000d4 0x00000000 Code RO 2796 .ARM.Collect$$$$0000000F mc_p.l(entry10a.o) + 0x000000d4 0x000000d4 0x00000000 Code RO 2798 .ARM.Collect$$$$00000011 mc_p.l(entry11a.o) + 0x000000d4 0x000000d4 0x00000004 Code RO 2787 .ARM.Collect$$$$00002712 mc_p.l(entry2.o) + 0x000000d8 0x000000d8 0x0000001c Code RO 762 .text startup_es8p5066.o + 0x000000f4 0x000000f4 0x0000002c Code RO 2491 .text mc_p.l(uidiv.o) + 0x00000120 0x00000120 0x00000028 Code RO 2493 .text mc_p.l(idiv.o) + 0x00000148 0x00000148 0x00000024 Code RO 2495 .text mc_p.l(memseta.o) + 0x0000016c 0x0000016c 0x0000001c Code RO 2497 .text mc_p.l(strcmp.o) + 0x00000188 0x00000188 0x0000007a Code RO 2762 .text mf_p.l(fmul.o) + 0x00000202 0x00000202 0x0000007c Code RO 2764 .text mf_p.l(fdiv.o) + 0x0000027e 0x0000027e 0x00000002 PAD + 0x00000280 0x00000280 0x000000d0 Code RO 2766 .text mf_p.l(dmul.o) + 0x00000350 0x00000350 0x000000f0 Code RO 2768 .text mf_p.l(ddiv.o) + 0x00000440 0x00000440 0x0000000e Code RO 2770 .text mf_p.l(ffltui.o) + 0x0000044e 0x0000044e 0x00000002 PAD + 0x00000450 0x00000450 0x00000028 Code RO 2772 .text mf_p.l(dflti.o) + 0x00000478 0x00000478 0x0000001c Code RO 2774 .text mf_p.l(dfltui.o) + 0x00000494 0x00000494 0x00000028 Code RO 2776 .text mf_p.l(ffixui.o) + 0x000004bc 0x000004bc 0x0000003c Code RO 2778 .text mf_p.l(dfixui.o) + 0x000004f8 0x000004f8 0x00000028 Code RO 2780 .text mf_p.l(f2d.o) + 0x00000520 0x00000520 0x00000028 Code RO 2782 .text mf_p.l(cdcmple.o) + 0x00000548 0x00000548 0x00000038 Code RO 2784 .text mf_p.l(d2f.o) + 0x00000580 0x00000580 0x00000060 Code RO 2803 .text mc_p.l(uldiv.o) + 0x000005e0 0x000005e0 0x00000022 Code RO 2805 .text mc_p.l(llushr.o) + 0x00000602 0x00000602 0x00000000 Code RO 2807 .text mc_p.l(iusefp.o) + 0x00000602 0x00000602 0x00000082 Code RO 2808 .text mf_p.l(fepilogue.o) + 0x00000684 0x00000684 0x000000be Code RO 2810 .text mf_p.l(depilogue.o) + 0x00000742 0x00000742 0x00000002 PAD + 0x00000744 0x00000744 0x00000168 Code RO 2814 .text mf_p.l(dadd.o) + 0x000008ac 0x000008ac 0x00000040 Code RO 2816 .text mf_p.l(dfixul.o) + 0x000008ec 0x000008ec 0x00000028 Code RO 2818 .text mf_p.l(cdrcmple.o) + 0x00000914 0x00000914 0x00000024 Code RO 2820 .text mc_p.l(init.o) + 0x00000938 0x00000938 0x00000020 Code RO 2822 .text mc_p.l(llshl.o) + 0x00000958 0x00000958 0x00000026 Code RO 2824 .text mc_p.l(llsshr.o) + 0x0000097e 0x0000097e 0x00000002 PAD + 0x00000980 0x00000980 0x00000150 Code RO 846 i.ADC_Init lib_adc.o + 0x00000ad0 0x00000ad0 0x00000030 Code RO 847 i.ADC_Reset lib_adc.o + 0x00000b00 0x00000b00 0x00000034 Code RO 1369 i.DeviceClockAllEnable lib_scu.o + 0x00000b34 0x00000b34 0x000000b8 Code RO 931 i.GPIO_GetNormalBitOffsetFromPin lib_gpio.o + 0x00000bec 0x00000bec 0x00000086 Code RO 932 i.GPIO_Init lib_gpio.o + 0x00000c72 0x00000c72 0x00000002 PAD + 0x00000c74 0x00000c74 0x00000030 Code RO 933 i.GPIO_ReadBit lib_gpio.o + 0x00000ca4 0x00000ca4 0x00000068 Code RO 936 i.GPIO_SetDSRegFromPin lib_gpio.o + 0x00000d0c 0x00000d0c 0x0000004c Code RO 937 i.GPIO_SetDirRegFromPin lib_gpio.o + 0x00000d58 0x00000d58 0x000003bc Code RO 938 i.GPIO_SetFuncxRegFromPin lib_gpio.o + 0x00001114 0x00001114 0x00000068 Code RO 939 i.GPIO_SetODERegFromPin lib_gpio.o + 0x0000117c 0x0000117c 0x00000068 Code RO 940 i.GPIO_SetPDERegFromPin lib_gpio.o + 0x000011e4 0x000011e4 0x00000068 Code RO 941 i.GPIO_SetPUERegFromPin lib_gpio.o + 0x0000124c 0x0000124c 0x00000068 Code RO 942 i.GPIO_SetPortFLTFromPin lib_gpio.o + 0x000012b4 0x000012b4 0x00000068 Code RO 943 i.GPIO_SetPortTypeFromPin lib_gpio.o + 0x0000131c 0x0000131c 0x00000068 Code RO 944 i.GPIO_SetSingalTypeFromPin lib_gpio.o + 0x00001384 0x00001384 0x0000004c Code RO 947 i.GPIO_WriteBit lib_gpio.o + 0x000013d0 0x000013d0 0x000000cc Code RO 1372 i.HRC_Config lib_scu.o + 0x0000149c 0x0000149c 0x00000064 Code RO 1330 i.NVIC_Init lib_scs.o + 0x00001500 0x00001500 0x0000002c Code RO 1381 i.SCU_SysClkSelect lib_scu.o + 0x0000152c 0x0000152c 0x00000010 Code RO 2315 i.SysTick_IRQHandler systicket.o + 0x0000153c 0x0000153c 0x00000040 Code RO 1333 i.SysTick_Init lib_scs.o + 0x0000157c 0x0000157c 0x00000024 Code RO 735 i.SystemInit system_es8p5066.o + 0x000015a0 0x000015a0 0x00000064 Code RO 1583 i.T16Nx_BaseInit lib_timer.o + 0x00001604 0x00001604 0x0000000a Code RO 1586 i.T16Nx_Disable lib_timer.o + 0x0000160e 0x0000160e 0x0000000c Code RO 1587 i.T16Nx_Enable lib_timer.o + 0x0000161a 0x0000161a 0x00000008 Code RO 1597 i.T16Nx_GetTOP0 lib_timer.o + 0x00001622 0x00001622 0x00000008 Code RO 1598 i.T16Nx_GetTOP1 lib_timer.o + 0x0000162a 0x0000162a 0x00000018 Code RO 1600 i.T16Nx_MAT0ITConfig lib_timer.o + 0x00001642 0x00001642 0x00000018 Code RO 1601 i.T16Nx_MAT0Out0Config lib_timer.o + 0x0000165a 0x0000165a 0x00000018 Code RO 1602 i.T16Nx_MAT1ITConfig lib_timer.o + 0x00001672 0x00001672 0x00000018 Code RO 1603 i.T16Nx_MAT1Out0Config lib_timer.o + 0x0000168a 0x0000168a 0x00000018 Code RO 1604 i.T16Nx_MAT2ITConfig lib_timer.o + 0x000016a2 0x000016a2 0x00000018 Code RO 1605 i.T16Nx_MAT2Out1Config lib_timer.o + 0x000016ba 0x000016ba 0x00000018 Code RO 1606 i.T16Nx_MAT3ITConfig lib_timer.o + 0x000016d2 0x000016d2 0x00000018 Code RO 1607 i.T16Nx_MAT3Out1Config lib_timer.o + 0x000016ea 0x000016ea 0x00000080 Code RO 1608 i.T16Nx_PMWOutInit lib_timer.o + 0x0000176a 0x0000176a 0x00000024 Code RO 1613 i.T16Nx_SetCNT0 lib_timer.o + 0x0000178e 0x0000178e 0x00000024 Code RO 1614 i.T16Nx_SetCNT1 lib_timer.o + 0x000017b2 0x000017b2 0x0000000e Code RO 1615 i.T16Nx_SetMAT0 lib_timer.o + 0x000017c0 0x000017c0 0x0000000e Code RO 1616 i.T16Nx_SetMAT1 lib_timer.o + 0x000017ce 0x000017ce 0x0000000e Code RO 1617 i.T16Nx_SetMAT2 lib_timer.o + 0x000017dc 0x000017dc 0x0000000e Code RO 1618 i.T16Nx_SetMAT3 lib_timer.o + 0x000017ea 0x000017ea 0x0000000e Code RO 1621 i.T16Nx_SetTOP0 lib_timer.o + 0x000017f8 0x000017f8 0x0000000e Code RO 1622 i.T16Nx_SetTOP1 lib_timer.o + 0x00001806 0x00001806 0x00000004 Code RO 2019 i.UART_ClearITPendingBit lib_uart.o + 0x0000180a 0x0000180a 0x00000010 Code RO 2020 i.UART_GetFlagStatus lib_uart.o + 0x0000181a 0x0000181a 0x00000014 Code RO 2023 i.UART_ITConfig lib_uart.o + 0x0000182e 0x0000182e 0x00000002 PAD + 0x00001830 0x00001830 0x00000168 Code RO 2024 i.UART_Init lib_uart.o + 0x00001998 0x00001998 0x00000006 Code RO 2029 i.UART_SendByte lib_uart.o + 0x0000199e 0x0000199e 0x00000010 Code RO 2032 i.UART_TBIMConfig lib_uart.o + 0x000019ae 0x000019ae 0x00000002 PAD + 0x000019b0 0x000019b0 0x00000020 Code RO 2732 i.__0printf mc_p.l(printfa.o) + 0x000019d0 0x000019d0 0x0000002e Code RO 2812 i.__ARM_clz mf_p.l(depilogue.o) + 0x000019fe 0x000019fe 0x0000001c Code RO 1162 i.__ARM_common_switch8 lib_gpio.o + 0x00001a1a 0x00001a1a 0x0000000e Code RO 2828 i.__scatterload_copy mc_p.l(handlers.o) + 0x00001a28 0x00001a28 0x00000002 Code RO 2829 i.__scatterload_null mc_p.l(handlers.o) + 0x00001a2a 0x00001a2a 0x0000000e Code RO 2830 i.__scatterload_zeroinit mc_p.l(handlers.o) + 0x00001a38 0x00001a38 0x00000174 Code RO 2739 i._fp_digits mc_p.l(printfa.o) + 0x00001bac 0x00001bac 0x000006f0 Code RO 2740 i._printf_core mc_p.l(printfa.o) + 0x0000229c 0x0000229c 0x00000020 Code RO 2741 i._printf_post_padding mc_p.l(printfa.o) + 0x000022bc 0x000022bc 0x0000002c Code RO 2742 i._printf_pre_padding mc_p.l(printfa.o) + 0x000022e8 0x000022e8 0x000000f0 Code RO 2200 i.adc_get_chnum adc.o + 0x000023d8 0x000023d8 0x0000003c Code RO 2204 i.adc_module_init adc.o + 0x00002414 0x00002414 0x00000028 Code RO 2205 i.adc_pin_init adc.o + 0x0000243c 0x0000243c 0x00000058 Code RO 2435 i.calculate_top pwm_1.o + 0x00002494 0x00002494 0x00000026 Code RO 452 i.close_all_light light_control_service.o + 0x000024ba 0x000024ba 0x00000002 PAD + 0x000024bc 0x000024bc 0x0000005c Code RO 3 i.compute_countdown main.o + 0x00002518 0x00002518 0x0000002c Code RO 4 i.compute_countdown_num main.o + 0x00002544 0x00002544 0x000000a0 Code RO 453 i.do_countdown_flash_light_effect light_control_service.o + 0x000025e4 0x000025e4 0x00000030 Code RO 5 i.do_debug_light_state main.o + 0x00002614 0x00002614 0x0000004c Code RO 1303 i.fputc lib_printf.o + 0x00002660 0x00002660 0x0000004c Code RO 6 i.increase_and_assign_countdonwnum main.o + 0x000026ac 0x000026ac 0x0000003a Code RO 7 i.init_all_subdevice_state main.o + 0x000026e6 0x000026e6 0x00000002 PAD + 0x000026e8 0x000026e8 0x00000018 Code RO 454 i.lcs_active_input light_control_service.o + 0x00002700 0x00002700 0x00000018 Code RO 455 i.lcs_input_is_active light_control_service.o + 0x00002718 0x00002718 0x00000040 Code RO 456 i.lcs_schedule_process light_control_service.o + 0x00002758 0x00002758 0x00000020 Code RO 457 i.lcs_shcedule light_control_service.o + 0x00002778 0x00002778 0x00000108 Code RO 8 i.main main.o + 0x00002880 0x00002880 0x0000001c Code RO 582 i.mf_haspassedms zsimple_timer.o + 0x0000289c 0x0000289c 0x00000024 Code RO 458 i.mf_set_status_light_by_level light_control_service.o + 0x000028c0 0x000028c0 0x0000001c Code RO 459 i.mf_set_status_light_state light_control_service.o + 0x000028dc 0x000028dc 0x00000058 Code RO 583 i.mf_start_trigger zsimple_timer.o + 0x00002934 0x00002934 0x00000030 Code RO 584 i.mf_trigger zsimple_timer.o + 0x00002964 0x00002964 0x000001f0 Code RO 9 i.onkey main.o + 0x00002b54 0x00002b54 0x00000012 Code RO 183 i.port_debug_set port.o + 0x00002b66 0x00002b66 0x00000012 Code RO 184 i.port_fan_get port.o + 0x00002b78 0x00002b78 0x0000001a Code RO 185 i.port_fan_set port.o + 0x00002b92 0x00002b92 0x00000012 Code RO 186 i.port_gpio_get_interval_key_state port.o + 0x00002ba4 0x00002ba4 0x00000012 Code RO 187 i.port_gpio_get_level_key_state port.o + 0x00002bb6 0x00002bb6 0x00000012 Code RO 188 i.port_gpio_get_power_key_state port.o + 0x00002bc8 0x00002bc8 0x00000012 Code RO 189 i.port_gpio_get_timer_key_state port.o + 0x00002bda 0x00002bda 0x00000002 PAD + 0x00002bdc 0x00002bdc 0x0000011c Code RO 190 i.port_init port.o + 0x00002cf8 0x00002cf8 0x00000012 Code RO 192 i.port_led0_set port.o + 0x00002d0a 0x00002d0a 0x00000012 Code RO 194 i.port_led1_set port.o + 0x00002d1c 0x00002d1c 0x00000012 Code RO 196 i.port_led2_set port.o + 0x00002d2e 0x00002d2e 0x00000012 Code RO 198 i.port_led3_set port.o + 0x00002d40 0x00002d40 0x00000012 Code RO 200 i.port_led_b_set port.o + 0x00002d52 0x00002d52 0x00000012 Code RO 202 i.port_led_g_set port.o + 0x00002d64 0x00002d64 0x00000012 Code RO 204 i.port_led_r_set port.o + 0x00002d76 0x00002d76 0x00000002 PAD + 0x00002d78 0x00002d78 0x00000020 Code RO 205 i.port_ozone_pwm_set_duty port.o + 0x00002d98 0x00002d98 0x00000010 Code RO 207 i.port_ozone_pwm_stop port.o + 0x00002da8 0x00002da8 0x00000070 Code RO 460 i.process_countdonwlight light_control_service.o + 0x00002e18 0x00002e18 0x00000078 Code RO 10 i.process_countdwonevent main.o + 0x00002e90 0x00002e90 0x0000007c Code RO 461 i.process_level_light light_control_service.o + 0x00002f0c 0x00002f0c 0x0000005c Code RO 2390 i.prv_zkey_process_each_after_filter key.o + 0x00002f68 0x00002f68 0x00000028 Code RO 11 i.set_countdown main.o + 0x00002f90 0x00002f90 0x00000044 Code RO 12 i.shutdwon main.o + 0x00002fd4 0x00002fd4 0x0000000c Code RO 2317 i.systicket_get_now_ms systicket.o + 0x00002fe0 0x00002fe0 0x0000001c Code RO 2318 i.systicket_haspassedms systicket.o + 0x00002ffc 0x00002ffc 0x00000040 Code RO 2319 i.systicket_init systicket.o + 0x0000303c 0x0000303c 0x00000084 Code RO 2362 i.uart0_init uart0.o + 0x000030c0 0x000030c0 0x00000092 Code RO 2363 i.uart0_init_pin uart0.o + 0x00003152 0x00003152 0x00000002 PAD + 0x00003154 0x00003154 0x0000001c Code RO 2261 i.zgpio_get_default_input_config gpio.o + 0x00003170 0x00003170 0x00000020 Code RO 2262 i.zgpio_get_default_ode_output_config gpio.o + 0x00003190 0x00003190 0x0000001c Code RO 2263 i.zgpio_get_default_output_config gpio.o + 0x000031ac 0x000031ac 0x00000002 Code RO 2264 i.zgpio_init_all_gpio gpio.o + 0x000031ae 0x000031ae 0x00000010 Code RO 2265 i.zgpio_init_as_input gpio.o + 0x000031be 0x000031be 0x0000001a Code RO 2266 i.zgpio_init_as_output gpio.o + 0x000031d8 0x000031d8 0x0000003c Code RO 2391 i.zkey_do_loop_in_each_period key.o + 0x00003214 0x00003214 0x00000074 Code RO 2392 i.zkey_init key.o + 0x00003288 0x00003288 0x0000003e Code RO 2393 i.zkey_process_each key.o + 0x000032c6 0x000032c6 0x000000da Code RO 2436 i.zpwm_init pwm_1.o + 0x000033a0 0x000033a0 0x000000b8 Code RO 2437 i.zpwm_set_duty pwm_1.o + 0x00003458 0x00003458 0x000000a0 Code RO 2438 i.zpwm_set_duty_ns pwm_1.o + 0x000034f8 0x000034f8 0x0000004a Code RO 2439 i.zpwm_set_freq pwm_1.o + 0x00003542 0x00003542 0x00000058 Code RO 2441 i.zpwm_stop pwm_1.o + 0x0000359a 0x0000359a 0x00000002 PAD + 0x0000359c 0x0000359c 0x00000094 Code RO 585 i.zsimple_timer_alloc zsimple_timer.o + 0x00003630 0x00003630 0x00000060 Code RO 586 i.zsimple_timer_module_init zsimple_timer.o + 0x00003690 0x00003690 0x00000040 Code RO 587 i.zsimple_timer_schedule zsimple_timer.o + 0x000036d0 0x000036d0 0x0000001e Code RO 591 i.zsimple_timer_trigger_static zsimple_timer.o + 0x000036ee 0x000036ee 0x00000002 PAD + 0x000036f0 0x000036f0 0x0000002d Data RO 14 .conststring main.o + 0x0000371d 0x0000371d 0x00000003 PAD + 0x00003720 0x00003720 0x00000020 Data RO 2826 Region$$Table anon$$obj.o - Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x00003a6c, Size: 0x00000ca0, Max: 0x00001000, ABSOLUTE) + Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x00003740, Size: 0x00000668, Max: 0x00001000, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x20000000 0x00003a6c 0x00000088 Data RW 18 .data main.o - 0x20000088 0x00003af4 0x00000014 Data RW 480 .data light_control_service.o - 0x2000009c 0x00003b08 0x00000010 Data RW 563 .data zsimple_timer.o - 0x200000ac 0x00003b18 0x00000004 Data RW 640 .data system_es8p5066.o - 0x200000b0 0x00003b1c 0x00000001 Data RW 2110 .data adc.o - 0x200000b1 0x00003b1d 0x00000015 Data RW 2171 .data gpio.o - 0x200000c6 0x00003b32 0x00000002 PAD - 0x200000c8 0x00003b34 0x00000004 Data RW 2224 .data systicket.o - 0x200000cc 0x00003b38 0x00000005 Data RW 2298 .data key.o - 0x200000d1 0x00003b3d 0x00000003 PAD - 0x200000d4 0x00003b40 0x00000004 Data RW 2706 .data mc_p.l(stdout.o) - 0x200000d8 - 0x00000780 Zero RW 16 .bss main.o - 0x20000858 - 0x00000028 Zero RW 226 .bss port.o - 0x20000880 - 0x0000001c Zero RW 625 .bss thisdevice.o - 0x2000089c 0x00003b44 0x00000004 PAD - 0x200008a0 - 0x00000400 Zero RW 663 STACK startup_es8p5066.o + 0x20000000 0x00003740 0x00000090 Data RW 15 .data main.o + 0x20000090 0x000037d0 0x00000014 Data RW 462 .data light_control_service.o + 0x200000a4 0x000037e4 0x00000010 Data RW 592 .data zsimple_timer.o + 0x200000b4 0x000037f4 0x00000004 Data RW 736 .data system_es8p5066.o + 0x200000b8 0x000037f8 0x00000001 Data RW 2206 .data adc.o + 0x200000b9 0x000037f9 0x00000015 Data RW 2267 .data gpio.o + 0x200000ce 0x0000380e 0x00000002 PAD + 0x200000d0 0x00003810 0x00000004 Data RW 2320 .data systicket.o + 0x200000d4 0x00003814 0x00000005 Data RW 2394 .data key.o + 0x200000d9 0x00003819 0x00000003 PAD + 0x200000dc 0x0000381c 0x00000004 Data RW 2802 .data mc_p.l(stdout.o) + 0x200000e0 - 0x00000140 Zero RW 13 .bss main.o + 0x20000220 - 0x00000028 Zero RW 208 .bss port.o + 0x20000248 - 0x0000001c Zero RW 654 .bss thisdevice.o + 0x20000264 0x00003820 0x00000004 PAD + 0x20000268 - 0x00000400 Zero RW 759 STACK startup_es8p5066.o ============================================================================== @@ -1784,10 +1787,10 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug Object Name - 474 78 0 1 0 3812 adc.o + 340 64 0 1 0 2081 adc.o 132 18 0 21 0 3532 gpio.o 330 24 0 5 0 4890 key.o - 544 44 0 0 0 4464 lib_adc.o + 384 14 0 0 0 1435 lib_adc.o 2230 158 0 0 0 8992 lib_gpio.o 76 10 0 0 0 2488 lib_printf.o 164 10 0 0 0 1527 lib_scs.o @@ -1795,20 +1798,20 @@ Image component sizes 614 0 0 0 0 12111 lib_timer.o 422 10 0 0 0 3820 lib_uart.o 642 58 0 20 0 6907 light_control_service.o - 1458 318 45 136 1920 80594 main.o - 660 30 0 0 40 57826 port.o - 904 24 0 0 0 5224 pwm_1.o + 1306 306 45 144 320 78271 main.o + 592 16 0 0 40 56834 port.o + 812 24 0 0 0 4555 pwm_1.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 + 120 20 0 4 0 2294 systicket.o 0 0 0 0 28 1413 thisdevice.o 278 4 0 0 0 1705 uart0.o 502 148 0 16 0 5762 zsimple_timer.o ---------------------------------------------------------------------- - 9964 1002 272 212 3016 210960 Object Totals + 9328 932 272 220 1416 201663 Object Totals 0 0 32 0 0 0 (incl. Generated) - 24 0 3 5 4 0 (incl. Padding) + 20 0 3 5 4 0 (incl. Padding) ---------------------------------------------------------------------- @@ -1848,7 +1851,6 @@ Image component sizes 28 4 0 0 0 68 dfltui.o 208 6 0 0 0 88 dmul.o 40 0 0 0 0 60 f2d.o - 178 0 0 0 0 108 fadd.o 124 0 0 0 0 72 fdiv.o 130 0 0 0 0 144 fepilogue.o 40 0 0 0 0 60 ffixui.o @@ -1856,18 +1858,18 @@ Image component sizes 122 0 0 0 0 72 fmul.o ---------------------------------------------------------------------- - 4720 166 0 4 0 2668 Library Totals - 6 0 0 0 0 0 (incl. Padding) + 4544 166 0 4 0 2560 Library Totals + 8 0 0 0 0 0 (incl. Padding) ---------------------------------------------------------------------- Code (inc. data) RO Data RW Data ZI Data Debug Library Name 2694 114 0 4 0 1080 mc_p.l - 2020 52 0 0 0 1588 mf_p.l + 1842 52 0 0 0 1480 mf_p.l ---------------------------------------------------------------------- - 4720 166 0 4 0 2668 Library Totals + 4544 166 0 4 0 2560 Library Totals ---------------------------------------------------------------------- @@ -1876,15 +1878,15 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug - 14684 1168 272 216 3016 206680 Grand Totals - 14684 1168 272 216 3016 206680 ELF Image Totals - 14684 1168 272 216 0 0 ROM Totals + 13872 1098 272 224 1416 198023 Grand Totals + 13872 1098 272 224 1416 198023 ELF Image Totals + 13872 1098 272 224 0 0 ROM Totals ============================================================================== - Total RO Size (Code + RO Data) 14956 ( 14.61kB) - Total RW Size (RW Data + ZI Data) 3232 ( 3.16kB) - Total ROM Size (Code + RO Data + RW Data) 15172 ( 14.82kB) + Total RO Size (Code + RO Data) 14144 ( 13.81kB) + Total RW Size (RW Data + ZI Data) 1640 ( 1.60kB) + Total ROM Size (Code + RO Data + RW Data) 14368 ( 14.03kB) ============================================================================== diff --git a/project_ozone/project_o.uvgui.zel b/project_ozone/project_o.uvgui.zel index 35f75a7..b03efe3 100644 --- a/project_ozone/project_o.uvgui.zel +++ b/project_ozone/project_o.uvgui.zel @@ -93,8 +93,8 @@ 0 1 - -1 - -1 + -32000 + -32000 -1 @@ -110,8 +110,8 @@ 0 - 268 - 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000001000000000000000100000048463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000AF010000AB0000002806000061020000 + 410 + 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000002000000010000000100000048463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF63463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C736572766963655C6672657175656E63795F73776565705F736572766963652E6300000000196672657175656E63795F73776565705F736572766963652E6300000000FFDC7800FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000AF010000AB0000002806000061020000 @@ -1838,7 +1838,7 @@ Debug 2373 - 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720000000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7200000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720000000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720000000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730000000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72000000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 + 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72010000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 898 @@ -3603,12 +3603,21 @@ 0 100 - 0 + 1 ..\APP\main.c - 40 - 392 - 415 + 1 + 396 + 418 + 1 + + 0 + + + ..\APP\service\frequency_sweep_service.c + 0 + 44 + 66 1 0 diff --git a/project_ozone/project_o.uvopt b/project_ozone/project_o.uvopt index 0f52335..e9ceb92 100644 --- a/project_ozone/project_o.uvopt +++ b/project_ozone/project_o.uvopt @@ -306,6 +306,18 @@ 0 0 + + 1 + 8 + 1 + 0 + 0 + 0 + ..\APP\service\frequency_sweep_service.c + frequency_sweep_service.c + 0 + 0 + @@ -316,7 +328,7 @@ 0 2 - 8 + 9 1 0 0 @@ -328,7 +340,7 @@ 2 - 9 + 10 2 0 0 @@ -348,7 +360,7 @@ 0 3 - 10 + 11 1 0 0 @@ -360,7 +372,7 @@ 3 - 11 + 12 1 0 0 @@ -372,7 +384,7 @@ 3 - 12 + 13 1 0 0 @@ -384,7 +396,7 @@ 3 - 13 + 14 1 0 0 @@ -396,7 +408,7 @@ 3 - 14 + 15 1 0 0 @@ -408,7 +420,7 @@ 3 - 15 + 16 1 0 0 @@ -420,7 +432,7 @@ 3 - 16 + 17 1 0 0 @@ -432,7 +444,7 @@ 3 - 17 + 18 1 0 0 @@ -444,7 +456,7 @@ 3 - 18 + 19 1 0 0 @@ -456,7 +468,7 @@ 3 - 19 + 20 1 0 0 @@ -468,7 +480,7 @@ 3 - 20 + 21 1 0 0 @@ -488,7 +500,7 @@ 0 4 - 21 + 22 1 0 0 @@ -500,7 +512,7 @@ 4 - 22 + 23 1 0 0 @@ -512,7 +524,7 @@ 4 - 23 + 24 1 0 0 @@ -524,7 +536,7 @@ 4 - 24 + 25 1 0 0 @@ -536,7 +548,7 @@ 4 - 25 + 26 1 0 0 @@ -548,7 +560,7 @@ 4 - 26 + 27 1 0 0 diff --git a/project_ozone/project_o.uvproj b/project_ozone/project_o.uvproj index 6ce7e6c..8422b56 100644 --- a/project_ozone/project_o.uvproj +++ b/project_ozone/project_o.uvproj @@ -457,6 +457,11 @@ 1 ..\APP\service\thisdevice.c + + frequency_sweep_service.c + 1 + ..\APP\service\frequency_sweep_service.c +