diff --git a/APP/main.c b/APP/main.c
index c299d62..3958634 100644
--- a/APP/main.c
+++ b/APP/main.c
@@ -35,128 +35,164 @@ zkey_module_t key_module = ZMODULE_INIT(s_keys, onkey);
* =======================================================方法======================================================== *
***********************************************************************************************************************/
+/***********************************************************************************************************************
+ * ===================================================COUNT_COMPUTE=================================================== *
+ ***********************************************************************************************************************/
static uint32_t compute_countdown_num(int countdowns) {
if (countdowns) return countdowns / kconst_countdown_step_s + !!(countdowns % kconst_countdown_step_s);
}
+static void increase_and_assign_countdonwnum() {
+ if (thisDevice.countdonwnum == 4) {
+ thisDevice.countdonwnum = 0;
+ thisDevice.countdonwnum_s = 0;
+ thisDevice.countdonw_setting_num = 0;
+ } else {
+ thisDevice.countdonwnum_s = (thisDevice.countdonwnum + 1) * kconst_countdown_step_s;
+ thisDevice.countdonwnum = thisDevice.countdonwnum + 1;
+ thisDevice.countdonw_setting_num = thisDevice.countdonwnum;
+ thisDevice.countdonw_start_ticket = systicket_get_now_ms();
+ }
+}
+
+static void mf_set_countdown(int countdownnum) {
+ thisDevice.countdonwnum = countdownnum;
+ thisDevice.countdonwnum_s = thisDevice.countdonwnum * kconst_countdown_step_s;
+ thisDevice.countdonw_setting_num = thisDevice.countdonwnum;
+ thisDevice.countdonw_start_ticket = systicket_get_now_ms();
+}
+
+/***********************************************************************************************************************
+ * ===================================================POWER_CONTROL=================================================== *
+ ***********************************************************************************************************************/
+//设备开始工作
static void startwork() {
port_fan_set(true);
ozone_control_start();
thisDevice.working = true;
}
+//停止设备工作
static void stopwork() {
ozone_control_stop();
port_fan_set(false);
thisDevice.working = false;
}
-
+//关机
static void shutdwon() {
printf("power off\n");
thisDevice.poweron = false;
stopwork();
}
+//开机
+static void poweron() {
+ printf("power on\n");
+ thisDevice.poweron = true;
+ thisDevice.level = klevel1;
+ thisDevice.mode = knormal;
+ startwork();
+}
-static void increase_and_assign_countdonwnum() {
- if (thisDevice.countdonwnum == 4) {
- thisDevice.countdonwnum = 0;
- thisDevice.countdonwnum_s = 0;
- thisDevice.countdonw_setting_num = 0;
+/***********************************************************************************************************************
+ * =================================================KEY_EVENT_PROCESS================================================= *
+ ***********************************************************************************************************************/
+//电源按键处理
+static void mf_process_poweron_key(zkey_t* key) {
+ printf("on %s \n", key->name);
+ if (!thisDevice.poweron) {
+ poweron();
+ } else {
+ shutdwon();
+ }
+ return;
+}
+//等级按键处理
+static void mf_process_level_key(zkey_t* key) {
+ if (!thisDevice.poweron) return;
+ printf("on %s \n", key->name);
+ /**
+ * @brief 当前在不在修改状态,不在,则进入修改状态
+ */
+ if (thisDevice.level == klevel1) {
+ printf("changet level to level2\n");
+ thisDevice.level = klevel2;
+ //更改臭氧状态
+ } else if (thisDevice.level == klevel2) {
+ printf("changet level to level1\n");
+ thisDevice.level = klevel1;
+ //更改臭氧状态
+ }
+ hcis_active_input(kchange_level_input);
+ return;
+}
+//定时按键处理
+static void mf_process_timer_key(zkey_t* key) {
+ if (!thisDevice.poweron) return;
+ printf("on %s \n", key->name);
+ if (!thisDevice.working) {
+ startwork();
+ }
+ increase_and_assign_countdonwnum();
+ if (thisDevice.countdonwnum_s == 0) {
hcis_active_input(knone_active);
thisDevice.mode = knormal;
} else {
- thisDevice.countdonwnum_s = (thisDevice.countdonwnum + 1) * kconst_countdown_step_s;
- thisDevice.countdonwnum = thisDevice.countdonwnum + 1;
- thisDevice.countdonw_setting_num = thisDevice.countdonwnum;
- thisDevice.countdonw_start_ticket = systicket_get_now_ms();
+ hcis_active_input(kchange_countdonw_time_input);
+ thisDevice.mode = ktimingMode;
}
}
-
-static void set_countdown(int countdownnum) {
- thisDevice.countdonwnum = countdownnum;
- thisDevice.countdonwnum_s = thisDevice.countdonwnum * kconst_countdown_step_s;
- thisDevice.countdonw_setting_num = thisDevice.countdonwnum;
- thisDevice.countdonw_start_ticket = systicket_get_now_ms();
+//间隔按键处理
+static void mf_process_interval_key(zkey_t* key) {
+ if (!thisDevice.poweron) return;
+ printf("on %s \n", key->name);
+ if (!thisDevice.working) {
+ startwork();
+ }
+ increase_and_assign_countdonwnum();
+ if (thisDevice.countdonwnum_s == 0) {
+ hcis_active_input(knone_active);
+ thisDevice.mode = knormal;
+ } else {
+ hcis_active_input(kchange_countdonw_time_input);
+ thisDevice.mode = kintermittentMode;
+ }
}
static void onkey(zkey_t* key, zkey_state_t key_state) {
if /* */ (strcmp(key->name, "powerkey") == 0 && zks_rising_edge == key_state) {
- printf("on %s \n", key->name);
- if (!thisDevice.poweron) {
- printf("power on\n");
- thisDevice.poweron = true;
- thisDevice.level = klevel1;
- thisDevice.mode = knormal;
- startwork();
- } else {
- shutdwon();
- }
- return;
+ mf_process_poweron_key(key);
+ } else if (strcmp(key->name, "levelkey") == 0 && zks_rising_edge == key_state) {
+ mf_process_level_key(key);
+ } else if (strcmp(key->name, "timerkey") == 0 && zks_rising_edge == key_state) {
+ mf_process_timer_key(key);
+ } else if (strcmp(key->name, "intervalkey") == 0 && zks_rising_edge == key_state) {
+ mf_process_interval_key(key);
}
- // levelkey
- if (strcmp(key->name, "levelkey") == 0 && zks_rising_edge == key_state) {
- if (!thisDevice.poweron) return;
- printf("on %s \n", key->name);
-
- /**
- * @brief 当前在不在修改状态,不在,则进入修改状态
- */
- if (!hcis_input_is_active(kchange_level_input)) {
- hcis_active_input(kchange_level_input);
- return;
- }
-
- if (thisDevice.level == klevel1) {
- printf("changet level to level2\n");
- thisDevice.level = klevel2;
- //更改臭氧状态
- } else if (thisDevice.level == klevel2) {
- printf("changet level to level1\n");
- thisDevice.level = klevel1;
- //更改臭氧状态
- }
- hcis_active_input(kchange_level_input);
- return;
- }
- // timerkey
- 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 (!hcis_input_is_active(kchange_countdonw_time_input)) {
- hcis_active_input(kchange_countdonw_time_input);
- if (thisDevice.mode != ktimingMode || thisDevice.countdonwnum_s == 0) {
- set_countdown(1);
- thisDevice.mode = ktimingMode;
- }
- return;
+}
+/***********************************************************************************************************************
+ * ===============================================THIS_MODULE_SCHEDULE================================================ *
+ ***********************************************************************************************************************/
+static void mf_try_autoshutdown() {
+ if (thisDevice.poweron) {
+ if (thisDevice.countdonwnum_s == 0) {
+ shutdwon();
}
-
- hcis_active_input(kchange_countdonw_time_input);
- increase_and_assign_countdonwnum();
}
- 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 (!hcis_input_is_active(kchange_intermittentmode_time_input)) {
- hcis_active_input(kchange_intermittentmode_time_input);
- if (thisDevice.mode != kintermittentMode || thisDevice.countdonwnum_s == 0) {
- set_countdown(1);
- thisDevice.mode = kintermittentMode;
- }
- return;
- }
+static void mf_try_autostop() {
+ //间歇模式下,定时到达定时时间,停止工作
+ if (thisDevice.countdonwnum_s == 0) stopwork();
+}
- hcis_active_input(kchange_intermittentmode_time_input);
- increase_and_assign_countdonwnum();
+static void mf_try_auto_restart() {
+ //间歇模式下,再次到达工作时间,再次工作
+ if (systicket_haspassedms(thisDevice.countdonw_start_ticket) / 1000 > INTERMITTENTMODE_PERIOD_S) {
+ mf_set_countdown(thisDevice.countdonw_setting_num);
+ startwork();
}
}
-void update_countdown() {
+static void mf_update_countdown() {
if /* */ (thisDevice.mode == knormal) {
thisDevice.countdonwnum = 0;
thisDevice.countdonwnum_s = 0;
@@ -169,48 +205,39 @@ void update_countdown() {
}
}
-void process_countdwonevent() {
- //更新倒计时计数
- update_countdown();
+void this_module_schedule() {
/**
- * @brief 处理倒计时事件发生时的事件
+ * @brief 定时模式下
*/
if (thisDevice.mode == ktimingMode) {
//定时自动关机
- if (thisDevice.poweron) {
- if (thisDevice.countdonwnum_s == 0) {
- shutdwon();
- }
- }
- } else if (thisDevice.mode == kintermittentMode) {
- /**
- * @brief 如果当前处于间歇模式下
- * 定时时间到,关闭风扇,关闭臭氧,等待大周期过去后,开启风扇,开启臭氧,并重新计时
- */
+ mf_update_countdown();
+ mf_try_autoshutdown();
+ }
+
+ /**
+ * @brief 间歇模式下,自动停止,自动重启
+ */
+ if (thisDevice.mode == kintermittentMode) {
+ mf_update_countdown();
if (thisDevice.working) {
- //间歇模式下,定时到达定时时间,停止工作
- if (thisDevice.countdonwnum_s == 0) stopwork();
+ mf_try_autostop();
} else {
- //间歇模式下,再次到达工作时间,再次工作
- if (systicket_haspassedms(thisDevice.countdonw_start_ticket) / 1000 > INTERMITTENTMODE_PERIOD_S) {
- set_countdown(thisDevice.countdonw_setting_num);
- startwork();
- }
+ mf_try_auto_restart();
}
}
};
-void ozone_control_start();
-void ozone_control_stop();
-void ozone_control_schedule();
-
-void do_debug_light_state() {
+/***********************************************************************************************************************
+ * =======================================================MAIN======================================================== *
+ ***********************************************************************************************************************/
+static void mf_do_debug_light_state() {
static uint8_t debug_led_state = 1;
debug_led_state = !debug_led_state;
port_debug_set(debug_led_state);
}
-void init_all_subdevice_state() {
+static void mf_init_all_subdevice_state() {
port_debug_set(false);
port_fan_set(false);
port_led0_set(false);
@@ -230,7 +257,7 @@ int main(void) {
/*系统初始化*/
zgpio_init_all_gpio(); //
port_init(); //
- init_all_subdevice_state(); //
+ mf_init_all_subdevice_state(); //
printf("==========OZONE_GENERATOR==========\n"); //
printf("= manufactor: iflytop\n"); //
printf("= version : %s\n", VERSION); //
@@ -244,17 +271,18 @@ int main(void) {
* @brief
* 频率从20k起步,递增50hz,每次等待100ms计算功率
*/
- // printf_ozone_freq_and_power_table();
- // ozone_control_init();
while (true) {
//按键扫描逻辑
DO_IT_EACH_MS(KEY_PERIOD) { zkey_do_loop_in_each_period(NULL); }
END();
- DO_IT_EACH_MS(150) { do_debug_light_state(); }
+ //调试指示灯
+ DO_IT_EACH_MS(150) { mf_do_debug_light_state(); }
END();
+ //臭氧控制逻辑Schedule
ozone_control_schedule();
+ //人机交互逻辑Schedule
hcis_shcedule();
- process_countdwonevent();
- // printf("countddonw %d\n", thisDevice.countdonwnum_s);
+ //当前模块逻辑Schedule
+ this_module_schedule();
}
}
\ No newline at end of file
diff --git a/APP/service/frequency_sweep_service.c b/APP/service/frequency_sweep_service.c
index 645adab..108bf74 100644
--- a/APP/service/frequency_sweep_service.c
+++ b/APP/service/frequency_sweep_service.c
@@ -10,7 +10,7 @@
***********************************************************************************************************************/
struct {
- float power_table[350];
+ float power_table[200];
uint16_t startfreq;
uint16_t endfreq;
uint16_t step;
diff --git a/APP/service/human_computer_interaction_service.c b/APP/service/human_computer_interaction_service.c
index 5ae09c9..a4562d4 100644
--- a/APP/service/human_computer_interaction_service.c
+++ b/APP/service/human_computer_interaction_service.c
@@ -90,7 +90,7 @@ void process_level_light() {
}
}
} else {
- if (thisDevice.mode == kintermittentMode && thisDevice.working) {
+ if (thisDevice.mode == kintermittentMode && !thisDevice.working) {
mf_set_status_light_state(/*rgb:*/ 0, 1, 0);
} else {
mf_set_status_light_by_level(thisDevice.level);
diff --git a/CMSIS b/CMSIS
index 97fbccc..7a042b9 160000
--- a/CMSIS
+++ b/CMSIS
@@ -1 +1 @@
-Subproject commit 97fbccc0525041fe1ccfb714cfca2548495cc3a6
+Subproject commit 7a042b9cf42c5c74e9a09dfd8928d8c2fa654928
diff --git a/project_ozone/Listings/project_o.map b/project_ozone/Listings/project_o.map
index c94f68d..4aa5cb8 100644
--- a/project_ozone/Listings/project_o.map
+++ b/project_ozone/Listings/project_o.map
@@ -5,57 +5,76 @@ Component: ARM Compiler 5.06 update 7 (build 960) Tool: armlink [4d3601]
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.increase_and_assign_countdonwnum) refers to human_computer_interaction_service.o(i.hcis_active_input) for hcis_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
- main.o(i.init_all_subdevice_state) refers to port.o(i.port_debug_set) for port_debug_set
- main.o(i.init_all_subdevice_state) refers to port.o(i.port_fan_set) for port_fan_set
- main.o(i.init_all_subdevice_state) refers to port.o(i.port_led0_set) for port_led0_set
- main.o(i.init_all_subdevice_state) refers to port.o(i.port_led1_set) for port_led1_set
- main.o(i.init_all_subdevice_state) refers to port.o(i.port_led2_set) for port_led2_set
- main.o(i.init_all_subdevice_state) refers to port.o(i.port_led3_set) for port_led3_set
- main.o(i.init_all_subdevice_state) refers to port.o(i.port_led_r_set) for port_led_r_set
- main.o(i.init_all_subdevice_state) refers to port.o(i.port_led_g_set) for port_led_g_set
- main.o(i.init_all_subdevice_state) refers to port.o(i.port_led_b_set) for port_led_b_set
main.o(i.main) refers to system_es8p5066.o(i.SystemInit) for SystemInit
main.o(i.main) refers to lib_scu.o(i.DeviceClockAllEnable) for DeviceClockAllEnable
main.o(i.main) refers to systicket.o(i.systicket_init) for systicket_init
main.o(i.main) refers to gpio.o(i.zgpio_init_all_gpio) for zgpio_init_all_gpio
main.o(i.main) refers to port.o(i.port_init) for port_init
- main.o(i.main) refers to main.o(i.init_all_subdevice_state) for init_all_subdevice_state
+ main.o(i.main) refers to main.o(i.mf_init_all_subdevice_state) for mf_init_all_subdevice_state
main.o(i.main) refers to printfa.o(i.__0printf) for __2printf
main.o(i.main) refers to key.o(i.zkey_init) for zkey_init
main.o(i.main) refers to ozone_control_service.o(i.ozone_control_init) for ozone_control_init
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
- main.o(i.main) refers to main.o(i.do_debug_light_state) for do_debug_light_state
+ main.o(i.main) refers to main.o(i.mf_do_debug_light_state) for mf_do_debug_light_state
main.o(i.main) refers to ozone_control_service.o(i.ozone_control_schedule) for ozone_control_schedule
main.o(i.main) refers to human_computer_interaction_service.o(i.hcis_shcedule) for hcis_shcedule
- main.o(i.main) refers to main.o(i.process_countdwonevent) for process_countdwonevent
+ main.o(i.main) refers to main.o(i.this_module_schedule) for this_module_schedule
main.o(i.main) refers to main.o(.data) for key_module
+ main.o(i.mf_do_debug_light_state) refers to port.o(i.port_debug_set) for port_debug_set
+ main.o(i.mf_do_debug_light_state) refers to main.o(.data) for debug_led_state
+ main.o(i.mf_init_all_subdevice_state) refers to port.o(i.port_debug_set) for port_debug_set
+ main.o(i.mf_init_all_subdevice_state) refers to port.o(i.port_fan_set) for port_fan_set
+ main.o(i.mf_init_all_subdevice_state) refers to port.o(i.port_led0_set) for port_led0_set
+ main.o(i.mf_init_all_subdevice_state) refers to port.o(i.port_led1_set) for port_led1_set
+ main.o(i.mf_init_all_subdevice_state) refers to port.o(i.port_led2_set) for port_led2_set
+ main.o(i.mf_init_all_subdevice_state) refers to port.o(i.port_led3_set) for port_led3_set
+ main.o(i.mf_init_all_subdevice_state) refers to port.o(i.port_led_r_set) for port_led_r_set
+ main.o(i.mf_init_all_subdevice_state) refers to port.o(i.port_led_g_set) for port_led_g_set
+ main.o(i.mf_init_all_subdevice_state) refers to port.o(i.port_led_b_set) for port_led_b_set
+ main.o(i.mf_process_interval_key) refers to printfa.o(i.__0printf) for __2printf
+ main.o(i.mf_process_interval_key) refers to main.o(i.startwork) for startwork
+ main.o(i.mf_process_interval_key) refers to main.o(i.increase_and_assign_countdonwnum) for increase_and_assign_countdonwnum
+ main.o(i.mf_process_interval_key) refers to human_computer_interaction_service.o(i.hcis_active_input) for hcis_active_input
+ main.o(i.mf_process_interval_key) refers to thisdevice.o(.bss) for thisDevice
+ main.o(i.mf_process_level_key) refers to printfa.o(i.__0printf) for __2printf
+ main.o(i.mf_process_level_key) refers to human_computer_interaction_service.o(i.hcis_active_input) for hcis_active_input
+ main.o(i.mf_process_level_key) refers to thisdevice.o(.bss) for thisDevice
+ main.o(i.mf_process_poweron_key) refers to printfa.o(i.__0printf) for __2printf
+ main.o(i.mf_process_poweron_key) refers to main.o(i.poweron) for poweron
+ main.o(i.mf_process_poweron_key) refers to main.o(i.shutdwon) for shutdwon
+ main.o(i.mf_process_poweron_key) refers to thisdevice.o(.bss) for thisDevice
+ main.o(i.mf_process_timer_key) refers to printfa.o(i.__0printf) for __2printf
+ main.o(i.mf_process_timer_key) refers to main.o(i.startwork) for startwork
+ main.o(i.mf_process_timer_key) refers to main.o(i.increase_and_assign_countdonwnum) for increase_and_assign_countdonwnum
+ main.o(i.mf_process_timer_key) refers to human_computer_interaction_service.o(i.hcis_active_input) for hcis_active_input
+ main.o(i.mf_process_timer_key) refers to thisdevice.o(.bss) for thisDevice
+ main.o(i.mf_set_countdown) refers to systicket.o(i.systicket_get_now_ms) for systicket_get_now_ms
+ main.o(i.mf_set_countdown) refers to thisdevice.o(.bss) for thisDevice
+ main.o(i.mf_try_auto_restart) refers to systicket.o(i.systicket_haspassedms) for systicket_haspassedms
+ main.o(i.mf_try_auto_restart) refers to uidiv.o(.text) for __aeabi_uidivmod
+ main.o(i.mf_try_auto_restart) refers to main.o(i.mf_set_countdown) for mf_set_countdown
+ main.o(i.mf_try_auto_restart) refers to main.o(i.startwork) for startwork
+ main.o(i.mf_try_auto_restart) refers to thisdevice.o(.bss) for thisDevice
+ main.o(i.mf_try_autoshutdown) refers to main.o(i.shutdwon) for shutdwon
+ main.o(i.mf_try_autoshutdown) refers to thisdevice.o(.bss) for thisDevice
+ main.o(i.mf_try_autostop) refers to main.o(i.stopwork) for stopwork
+ main.o(i.mf_try_autostop) refers to thisdevice.o(.bss) for thisDevice
+ main.o(i.mf_update_countdown) refers to systicket.o(i.systicket_haspassedms) for systicket_haspassedms
+ main.o(i.mf_update_countdown) refers to uidiv.o(.text) for __aeabi_uidivmod
+ main.o(i.mf_update_countdown) refers to main.o(i.compute_countdown_num) for compute_countdown_num
+ main.o(i.mf_update_countdown) refers to thisdevice.o(.bss) for thisDevice
main.o(i.onkey) refers to strcmp.o(.text) for strcmp
- main.o(i.onkey) refers to printfa.o(i.__0printf) for __2printf
- main.o(i.onkey) refers to main.o(i.startwork) for startwork
- main.o(i.onkey) refers to main.o(i.shutdwon) for shutdwon
- main.o(i.onkey) refers to human_computer_interaction_service.o(i.hcis_input_is_active) for hcis_input_is_active
- main.o(i.onkey) refers to human_computer_interaction_service.o(i.hcis_active_input) for hcis_active_input
- main.o(i.onkey) refers to port.o(i.port_fan_set) for port_fan_set
- 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.process_countdwonevent) refers to main.o(i.update_countdown) for update_countdown
- main.o(i.process_countdwonevent) refers to main.o(i.shutdwon) for shutdwon
- main.o(i.process_countdwonevent) refers to main.o(i.stopwork) for stopwork
- main.o(i.process_countdwonevent) refers to systicket.o(i.systicket_haspassedms) for systicket_haspassedms
- main.o(i.process_countdwonevent) refers to uidiv.o(.text) for __aeabi_uidivmod
- main.o(i.process_countdwonevent) refers to main.o(i.set_countdown) for set_countdown
- main.o(i.process_countdwonevent) refers to main.o(i.startwork) for startwork
- 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.onkey) refers to main.o(i.mf_process_poweron_key) for mf_process_poweron_key
+ main.o(i.onkey) refers to main.o(i.mf_process_level_key) for mf_process_level_key
+ main.o(i.onkey) refers to main.o(i.mf_process_timer_key) for mf_process_timer_key
+ main.o(i.onkey) refers to main.o(i.mf_process_interval_key) for mf_process_interval_key
+ main.o(i.poweron) refers to printfa.o(i.__0printf) for __2printf
+ main.o(i.poweron) refers to main.o(i.startwork) for startwork
+ main.o(i.poweron) refers to thisdevice.o(.bss) for thisDevice
main.o(i.shutdwon) refers to printfa.o(i.__0printf) for __2printf
main.o(i.shutdwon) refers to main.o(i.stopwork) for stopwork
main.o(i.shutdwon) refers to thisdevice.o(.bss) for thisDevice
@@ -65,10 +84,11 @@ Section Cross References
main.o(i.stopwork) refers to ozone_control_service.o(i.ozone_control_stop) for ozone_control_stop
main.o(i.stopwork) refers to port.o(i.port_fan_set) for port_fan_set
main.o(i.stopwork) refers to thisdevice.o(.bss) for thisDevice
- main.o(i.update_countdown) refers to systicket.o(i.systicket_haspassedms) for systicket_haspassedms
- main.o(i.update_countdown) refers to uidiv.o(.text) for __aeabi_uidivmod
- main.o(i.update_countdown) refers to main.o(i.compute_countdown_num) for compute_countdown_num
- main.o(i.update_countdown) refers to thisdevice.o(.bss) for thisDevice
+ main.o(i.this_module_schedule) refers to main.o(i.mf_update_countdown) for mf_update_countdown
+ main.o(i.this_module_schedule) refers to main.o(i.mf_try_autoshutdown) for mf_try_autoshutdown
+ main.o(i.this_module_schedule) refers to main.o(i.mf_try_autostop) for mf_try_autostop
+ main.o(i.this_module_schedule) refers to main.o(i.mf_try_auto_restart) for mf_try_auto_restart
+ main.o(i.this_module_schedule) refers to thisdevice.o(.bss) for thisDevice
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
@@ -362,6 +382,9 @@ Section Cross References
adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_Set_CH) for ADC_Set_CH
adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_SoftStart) for ADC_SoftStart
adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_SoftStop) for ADC_SoftStop
+ adc.o(i.adc_get_value_by_adcch) refers to systicket.o(i.systicket_get_now_ms) for systicket_get_now_ms
+ adc.o(i.adc_get_value_by_adcch) refers to systicket.o(i.systicket_haspassedms) for systicket_haspassedms
+ adc.o(i.adc_get_value_by_adcch) refers to printfa.o(i.__0printf) for __2printf
adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_GetIFStatus) for ADC_GetIFStatus
adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_GetConvValue) for ADC_GetConvValue
adc.o(i.adc_get_value_by_adcch) refers to lib_adc.o(i.ADC_ClearIFStatus) for ADC_ClearIFStatus
@@ -786,6 +809,7 @@ Removing Unused input sections from the image.
Removing state_machine.o(i.state_machine_get_state_duration_ms), (10 bytes).
Removing human_computer_interaction_service.o(.rev16_text), (4 bytes).
Removing human_computer_interaction_service.o(.revsh_text), (4 bytes).
+ Removing human_computer_interaction_service.o(i.hcis_input_is_active), (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).
@@ -980,7 +1004,7 @@ Removing Unused input sections from the image.
Removing pwm.o(.rev16_text), (4 bytes).
Removing pwm.o(.revsh_text), (4 bytes).
-230 unused section(s) (total 7502 bytes) removed from the image.
+231 unused section(s) (total 7526 bytes) removed from the image.
==============================================================================
@@ -991,38 +1015,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 entry12b.o ABSOLUTE
+ ../clib/microlib/init/entry.s 0x00000000 Number 0 entry12a.o ABSOLUTE
+ ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE
+ ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
+ ../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.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 entry10b.o ABSOLUTE
- ../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
- ../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
- ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
- ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE
- ../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE
+ ../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.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 entry12a.o ABSOLUTE
- ../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.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 entry5.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE
../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE
+ ../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE
+ ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf6.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 printf7.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 printf3.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf2.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf1.o ABSOLUTE
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf0.o ABSOLUTE
- ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfa.o ABSOLUTE
- ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf8.o ABSOLUTE
- ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf7.o ABSOLUTE
- ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf6.o ABSOLUTE
- ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf5.o ABSOLUTE
+ ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE
../clib/microlib/printf/stubs.s 0x00000000 Number 0 stubs.o ABSOLUTE
../clib/microlib/stdio/streams.c 0x00000000 Number 0 stdout.o ABSOLUTE
../clib/microlib/string/memset.c 0x00000000 Number 0 memseta.o ABSOLUTE
@@ -1037,13 +1061,13 @@ Image Symbol Table
../fplib/microlib/fpepilogue.c 0x00000000 Number 0 depilogue.o ABSOLUTE
../fplib/microlib/fpepilogue.c 0x00000000 Number 0 fepilogue.o ABSOLUTE
../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixul.o ABSOLUTE
- ../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixui.o ABSOLUTE
../fplib/microlib/fpfix.c 0x00000000 Number 0 ffixui.o ABSOLUTE
+ ../fplib/microlib/fpfix.c 0x00000000 Number 0 dfixui.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
- ../fplib/microlib/fpmul.c 0x00000000 Number 0 fmul.o ABSOLUTE
../fplib/microlib/fpmul.c 0x00000000 Number 0 dmul.o ABSOLUTE
+ ../fplib/microlib/fpmul.c 0x00000000 Number 0 fmul.o ABSOLUTE
..\APP\kalmanFilter.c 0x00000000 Number 0 kalmanfilter.o ABSOLUTE
..\APP\main.c 0x00000000 Number 0 main.o ABSOLUTE
..\APP\port.c 0x00000000 Number 0 port.o ABSOLUTE
@@ -1219,120 +1243,138 @@ Image Symbol Table
_printf_pre_padding 0x00002441 Thumb Code 44 printfa.o(i._printf_pre_padding)
i.adc_get_chnum 0x0000246c Section 0 adc.o(i.adc_get_chnum)
i.adc_get_value 0x0000255c Section 0 adc.o(i.adc_get_value)
- i.adc_get_value_by_adcch 0x0000256e Section 0 adc.o(i.adc_get_value_by_adcch)
- i.adc_get_voltage 0x000025ac Section 0 adc.o(i.adc_get_voltage)
- i.adc_module_init 0x000025ec Section 0 adc.o(i.adc_module_init)
- i.adc_pin_init 0x00002628 Section 0 adc.o(i.adc_pin_init)
- i.calculate_top 0x00002650 Section 0 pwm.o(i.calculate_top)
- calculate_top 0x00002651 Thumb Code 78 pwm.o(i.calculate_top)
- i.close_all_light 0x000026a8 Section 0 human_computer_interaction_service.o(i.close_all_light)
- i.compute_countdown_num 0x000026ce Section 0 main.o(i.compute_countdown_num)
- compute_countdown_num 0x000026cf Thumb Code 44 main.o(i.compute_countdown_num)
- i.do_countdown_flash_light_effect 0x000026fc Section 0 human_computer_interaction_service.o(i.do_countdown_flash_light_effect)
- i.do_debug_light_state 0x0000279c Section 0 main.o(i.do_debug_light_state)
- i.fputc 0x000027c8 Section 0 lib_printf.o(i.fputc)
- i.frequency_sweep_get_power 0x00002814 Section 0 frequency_sweep_service.o(i.frequency_sweep_get_power)
- i.frequency_sweep_is_finished 0x00002820 Section 0 frequency_sweep_service.o(i.frequency_sweep_is_finished)
- i.frequency_sweep_schedule 0x00002834 Section 0 frequency_sweep_service.o(i.frequency_sweep_schedule)
- i.frequency_sweep_start 0x00002918 Section 0 frequency_sweep_service.o(i.frequency_sweep_start)
+ i.adc_get_value_by_adcch 0x00002570 Section 0 adc.o(i.adc_get_value_by_adcch)
+ i.adc_get_voltage 0x000025dc Section 0 adc.o(i.adc_get_voltage)
+ i.adc_module_init 0x0000261c Section 0 adc.o(i.adc_module_init)
+ i.adc_pin_init 0x00002658 Section 0 adc.o(i.adc_pin_init)
+ i.calculate_top 0x00002680 Section 0 pwm.o(i.calculate_top)
+ calculate_top 0x00002681 Thumb Code 78 pwm.o(i.calculate_top)
+ i.close_all_light 0x000026d8 Section 0 human_computer_interaction_service.o(i.close_all_light)
+ i.compute_countdown_num 0x000026fe Section 0 main.o(i.compute_countdown_num)
+ compute_countdown_num 0x000026ff Thumb Code 44 main.o(i.compute_countdown_num)
+ i.do_countdown_flash_light_effect 0x0000272c Section 0 human_computer_interaction_service.o(i.do_countdown_flash_light_effect)
+ i.fputc 0x000027cc Section 0 lib_printf.o(i.fputc)
+ i.frequency_sweep_get_power 0x00002818 Section 0 frequency_sweep_service.o(i.frequency_sweep_get_power)
+ i.frequency_sweep_is_finished 0x00002824 Section 0 frequency_sweep_service.o(i.frequency_sweep_is_finished)
+ i.frequency_sweep_schedule 0x00002838 Section 0 frequency_sweep_service.o(i.frequency_sweep_schedule)
+ i.frequency_sweep_start 0x0000291c Section 0 frequency_sweep_service.o(i.frequency_sweep_start)
i.frequency_sweep_stop 0x00002964 Section 0 frequency_sweep_service.o(i.frequency_sweep_stop)
i.get_expect_power 0x00002970 Section 0 ozone_control_service.o(i.get_expect_power)
i.get_resonant_frequency 0x00002998 Section 0 ozone_control_service.o(i.get_resonant_frequency)
get_resonant_frequency 0x00002999 Thumb Code 76 ozone_control_service.o(i.get_resonant_frequency)
i.hcis_active_input 0x000029e4 Section 0 human_computer_interaction_service.o(i.hcis_active_input)
- i.hcis_input_is_active 0x000029fc Section 0 human_computer_interaction_service.o(i.hcis_input_is_active)
- i.hcis_shcedule 0x00002a14 Section 0 human_computer_interaction_service.o(i.hcis_shcedule)
- i.increase_and_assign_countdonwnum 0x00002a34 Section 0 main.o(i.increase_and_assign_countdonwnum)
- increase_and_assign_countdonwnum 0x00002a35 Thumb Code 70 main.o(i.increase_and_assign_countdonwnum)
- i.init_all_subdevice_state 0x00002a80 Section 0 main.o(i.init_all_subdevice_state)
- i.kalmanFilter 0x00002aba Section 0 kalmanfilter.o(i.kalmanFilter)
- i.lcs_schedule_process 0x00002b10 Section 0 human_computer_interaction_service.o(i.lcs_schedule_process)
- i.main 0x00002b50 Section 0 main.o(i.main)
- i.mf_get_ozone_power 0x00002c40 Section 0 ozone_control_service.o(i.mf_get_ozone_power)
- mf_get_ozone_power 0x00002c41 Thumb Code 18 ozone_control_service.o(i.mf_get_ozone_power)
- i.mf_get_ozone_power 0x00002c58 Section 0 frequency_sweep_service.o(i.mf_get_ozone_power)
- mf_get_ozone_power 0x00002c59 Thumb Code 38 frequency_sweep_service.o(i.mf_get_ozone_power)
- i.mf_get_ozone_power_reset_filter 0x00002c84 Section 0 ozone_control_service.o(i.mf_get_ozone_power_reset_filter)
- mf_get_ozone_power_reset_filter 0x00002c85 Thumb Code 12 ozone_control_service.o(i.mf_get_ozone_power_reset_filter)
- i.mf_getpower 0x00002c94 Section 0 frequency_sweep_service.o(i.mf_getpower)
- mf_getpower 0x00002c95 Thumb Code 64 frequency_sweep_service.o(i.mf_getpower)
- i.mf_set_status_light_by_level 0x00002cdc Section 0 human_computer_interaction_service.o(i.mf_set_status_light_by_level)
- mf_set_status_light_by_level 0x00002cdd Thumb Code 36 human_computer_interaction_service.o(i.mf_set_status_light_by_level)
- i.mf_set_status_light_state 0x00002d00 Section 0 human_computer_interaction_service.o(i.mf_set_status_light_state)
- i.mf_setpower 0x00002d1c Section 0 frequency_sweep_service.o(i.mf_setpower)
- mf_setpower 0x00002d1d Thumb Code 40 frequency_sweep_service.o(i.mf_setpower)
- i.onkey 0x00002d4c Section 0 main.o(i.onkey)
- onkey 0x00002d4d Thumb Code 366 main.o(i.onkey)
- i.ozone_control_init 0x00002f3c Section 0 ozone_control_service.o(i.ozone_control_init)
- i.ozone_control_schedule 0x00002f58 Section 0 ozone_control_service.o(i.ozone_control_schedule)
- i.ozone_control_start 0x00002f84 Section 0 ozone_control_service.o(i.ozone_control_start)
- i.ozone_control_stop 0x00002f98 Section 0 ozone_control_service.o(i.ozone_control_stop)
- i.port_adc_get_ozone_generator_power 0x00002fac Section 0 port.o(i.port_adc_get_ozone_generator_power)
- i.port_debug_set 0x00002fe0 Section 0 port.o(i.port_debug_set)
- i.port_fan_get 0x00002ff2 Section 0 port.o(i.port_fan_get)
- i.port_fan_set 0x00003004 Section 0 port.o(i.port_fan_set)
- i.port_gpio_get_interval_key_state 0x0000301e Section 0 port.o(i.port_gpio_get_interval_key_state)
- i.port_gpio_get_level_key_state 0x00003030 Section 0 port.o(i.port_gpio_get_level_key_state)
- i.port_gpio_get_power_key_state 0x00003042 Section 0 port.o(i.port_gpio_get_power_key_state)
- i.port_gpio_get_timer_key_state 0x00003054 Section 0 port.o(i.port_gpio_get_timer_key_state)
- i.port_init 0x00003068 Section 0 port.o(i.port_init)
- i.port_led0_set 0x00003184 Section 0 port.o(i.port_led0_set)
- i.port_led1_set 0x00003196 Section 0 port.o(i.port_led1_set)
- i.port_led2_set 0x000031a8 Section 0 port.o(i.port_led2_set)
- i.port_led3_set 0x000031ba Section 0 port.o(i.port_led3_set)
- i.port_led_b_set 0x000031cc Section 0 port.o(i.port_led_b_set)
- i.port_led_g_set 0x000031de Section 0 port.o(i.port_led_g_set)
- i.port_led_r_set 0x000031f0 Section 0 port.o(i.port_led_r_set)
- i.port_ozone_pwm_set_duty 0x00003204 Section 0 port.o(i.port_ozone_pwm_set_duty)
- i.port_ozone_pwm_start 0x00003224 Section 0 port.o(i.port_ozone_pwm_start)
- i.port_ozone_pwm_stop 0x00003234 Section 0 port.o(i.port_ozone_pwm_stop)
- i.processBeforeWorkingStateSweepFrequency 0x00003244 Section 0 ozone_control_service.o(i.processBeforeWorkingStateSweepFrequency)
- processBeforeWorkingStateSweepFrequency 0x00003245 Thumb Code 92 ozone_control_service.o(i.processBeforeWorkingStateSweepFrequency)
- i.processWorkingState 0x000032f4 Section 0 ozone_control_service.o(i.processWorkingState)
- processWorkingState 0x000032f5 Thumb Code 426 ozone_control_service.o(i.processWorkingState)
- i.process_countdonwlight 0x00003530 Section 0 human_computer_interaction_service.o(i.process_countdonwlight)
- i.process_countdwonevent 0x000035a0 Section 0 main.o(i.process_countdwonevent)
- i.process_level_light 0x0000360c Section 0 human_computer_interaction_service.o(i.process_level_light)
- i.prv_zkey_process_each_after_filter 0x00003688 Section 0 key.o(i.prv_zkey_process_each_after_filter)
- prv_zkey_process_each_after_filter 0x00003689 Thumb Code 86 key.o(i.prv_zkey_process_each_after_filter)
- i.set_countdown 0x000036e4 Section 0 main.o(i.set_countdown)
- set_countdown 0x000036e5 Thumb Code 34 main.o(i.set_countdown)
- i.shutdwon 0x0000370c Section 0 main.o(i.shutdwon)
- shutdwon 0x0000370d Thumb Code 20 main.o(i.shutdwon)
- i.startwork 0x00003730 Section 0 main.o(i.startwork)
- startwork 0x00003731 Thumb Code 20 main.o(i.startwork)
- i.state_machine_init 0x00003748 Section 0 state_machine.o(i.state_machine_init)
- i.state_machine_process_event 0x00003758 Section 0 ozone_control_service.o(i.state_machine_process_event)
- state_machine_process_event 0x00003759 Thumb Code 98 ozone_control_service.o(i.state_machine_process_event)
- i.state_machine_schedule_each10ms 0x000037d4 Section 0 state_machine.o(i.state_machine_schedule_each10ms)
- i.state_machine_trigger_event 0x00003878 Section 0 state_machine.o(i.state_machine_trigger_event)
- i.stopwork 0x0000388c Section 0 main.o(i.stopwork)
- stopwork 0x0000388d Thumb Code 20 main.o(i.stopwork)
- i.systicket_delay_ms 0x000038a4 Section 0 systicket.o(i.systicket_delay_ms)
- i.systicket_get_now_ms 0x000038c0 Section 0 systicket.o(i.systicket_get_now_ms)
- i.systicket_haspassedms 0x000038cc Section 0 systicket.o(i.systicket_haspassedms)
- i.systicket_init 0x000038e8 Section 0 systicket.o(i.systicket_init)
- i.uart0_init 0x00003928 Section 0 uart0.o(i.uart0_init)
- i.uart0_init_pin 0x000039ac Section 0 uart0.o(i.uart0_init_pin)
- uart0_init_pin 0x000039ad Thumb Code 146 uart0.o(i.uart0_init_pin)
- i.update_countdown 0x00003a40 Section 0 main.o(i.update_countdown)
- i.zgpio_get_default_input_config 0x00003a9c Section 0 gpio.o(i.zgpio_get_default_input_config)
- i.zgpio_get_default_ode_output_config 0x00003ab8 Section 0 gpio.o(i.zgpio_get_default_ode_output_config)
- i.zgpio_get_default_output_config 0x00003ad8 Section 0 gpio.o(i.zgpio_get_default_output_config)
- i.zgpio_init_all_gpio 0x00003af4 Section 0 gpio.o(i.zgpio_init_all_gpio)
- i.zgpio_init_as_input 0x00003af6 Section 0 gpio.o(i.zgpio_init_as_input)
- i.zgpio_init_as_output 0x00003b06 Section 0 gpio.o(i.zgpio_init_as_output)
- i.zkey_do_loop_in_each_period 0x00003b20 Section 0 key.o(i.zkey_do_loop_in_each_period)
- i.zkey_init 0x00003b5c Section 0 key.o(i.zkey_init)
- i.zkey_process_each 0x00003bd0 Section 0 key.o(i.zkey_process_each)
- i.zpwm_init 0x00003c0e Section 0 pwm.o(i.zpwm_init)
- i.zpwm_set_duty 0x00003ce8 Section 0 pwm.o(i.zpwm_set_duty)
- i.zpwm_set_duty_ns 0x00003da0 Section 0 pwm.o(i.zpwm_set_duty_ns)
- i.zpwm_set_freq 0x00003e40 Section 0 pwm.o(i.zpwm_set_freq)
- i.zpwm_start 0x00003e8a Section 0 pwm.o(i.zpwm_start)
- i.zpwm_stop 0x00003ee6 Section 0 pwm.o(i.zpwm_stop)
- .conststring 0x00003f40 Section 45 main.o(.conststring)
- .conststring 0x00003f70 Section 62 ozone_control_service.o(.conststring)
+ i.hcis_shcedule 0x000029fc Section 0 human_computer_interaction_service.o(i.hcis_shcedule)
+ i.increase_and_assign_countdonwnum 0x00002a1c Section 0 main.o(i.increase_and_assign_countdonwnum)
+ increase_and_assign_countdonwnum 0x00002a1d Thumb Code 60 main.o(i.increase_and_assign_countdonwnum)
+ i.kalmanFilter 0x00002a5c Section 0 kalmanfilter.o(i.kalmanFilter)
+ i.lcs_schedule_process 0x00002ab4 Section 0 human_computer_interaction_service.o(i.lcs_schedule_process)
+ i.main 0x00002af4 Section 0 main.o(i.main)
+ i.mf_do_debug_light_state 0x00002be4 Section 0 main.o(i.mf_do_debug_light_state)
+ mf_do_debug_light_state 0x00002be5 Thumb Code 40 main.o(i.mf_do_debug_light_state)
+ i.mf_get_ozone_power 0x00002c10 Section 0 ozone_control_service.o(i.mf_get_ozone_power)
+ mf_get_ozone_power 0x00002c11 Thumb Code 18 ozone_control_service.o(i.mf_get_ozone_power)
+ i.mf_get_ozone_power 0x00002c28 Section 0 frequency_sweep_service.o(i.mf_get_ozone_power)
+ mf_get_ozone_power 0x00002c29 Thumb Code 38 frequency_sweep_service.o(i.mf_get_ozone_power)
+ i.mf_get_ozone_power_reset_filter 0x00002c54 Section 0 ozone_control_service.o(i.mf_get_ozone_power_reset_filter)
+ mf_get_ozone_power_reset_filter 0x00002c55 Thumb Code 12 ozone_control_service.o(i.mf_get_ozone_power_reset_filter)
+ i.mf_getpower 0x00002c64 Section 0 frequency_sweep_service.o(i.mf_getpower)
+ mf_getpower 0x00002c65 Thumb Code 60 frequency_sweep_service.o(i.mf_getpower)
+ i.mf_init_all_subdevice_state 0x00002ca8 Section 0 main.o(i.mf_init_all_subdevice_state)
+ mf_init_all_subdevice_state 0x00002ca9 Thumb Code 58 main.o(i.mf_init_all_subdevice_state)
+ i.mf_process_interval_key 0x00002ce4 Section 0 main.o(i.mf_process_interval_key)
+ mf_process_interval_key 0x00002ce5 Thumb Code 74 main.o(i.mf_process_interval_key)
+ i.mf_process_level_key 0x00002d3c Section 0 main.o(i.mf_process_level_key)
+ mf_process_level_key 0x00002d3d Thumb Code 74 main.o(i.mf_process_level_key)
+ i.mf_process_poweron_key 0x00002dcc Section 0 main.o(i.mf_process_poweron_key)
+ mf_process_poweron_key 0x00002dcd Thumb Code 32 main.o(i.mf_process_poweron_key)
+ i.mf_process_timer_key 0x00002df8 Section 0 main.o(i.mf_process_timer_key)
+ mf_process_timer_key 0x00002df9 Thumb Code 74 main.o(i.mf_process_timer_key)
+ i.mf_set_countdown 0x00002e50 Section 0 main.o(i.mf_set_countdown)
+ mf_set_countdown 0x00002e51 Thumb Code 34 main.o(i.mf_set_countdown)
+ i.mf_set_status_light_by_level 0x00002e78 Section 0 human_computer_interaction_service.o(i.mf_set_status_light_by_level)
+ mf_set_status_light_by_level 0x00002e79 Thumb Code 36 human_computer_interaction_service.o(i.mf_set_status_light_by_level)
+ i.mf_set_status_light_state 0x00002e9c Section 0 human_computer_interaction_service.o(i.mf_set_status_light_state)
+ i.mf_setpower 0x00002eb8 Section 0 frequency_sweep_service.o(i.mf_setpower)
+ mf_setpower 0x00002eb9 Thumb Code 36 frequency_sweep_service.o(i.mf_setpower)
+ i.mf_try_auto_restart 0x00002ee4 Section 0 main.o(i.mf_try_auto_restart)
+ mf_try_auto_restart 0x00002ee5 Thumb Code 38 main.o(i.mf_try_auto_restart)
+ i.mf_try_autoshutdown 0x00002f10 Section 0 main.o(i.mf_try_autoshutdown)
+ mf_try_autoshutdown 0x00002f11 Thumb Code 24 main.o(i.mf_try_autoshutdown)
+ i.mf_try_autostop 0x00002f2c Section 0 main.o(i.mf_try_autostop)
+ mf_try_autostop 0x00002f2d Thumb Code 16 main.o(i.mf_try_autostop)
+ i.mf_update_countdown 0x00002f40 Section 0 main.o(i.mf_update_countdown)
+ mf_update_countdown 0x00002f41 Thumb Code 86 main.o(i.mf_update_countdown)
+ i.onkey 0x00002f9c Section 0 main.o(i.onkey)
+ onkey 0x00002f9d Thumb Code 102 main.o(i.onkey)
+ i.ozone_control_init 0x00003034 Section 0 ozone_control_service.o(i.ozone_control_init)
+ i.ozone_control_schedule 0x00003050 Section 0 ozone_control_service.o(i.ozone_control_schedule)
+ i.ozone_control_start 0x0000307c Section 0 ozone_control_service.o(i.ozone_control_start)
+ i.ozone_control_stop 0x00003090 Section 0 ozone_control_service.o(i.ozone_control_stop)
+ i.port_adc_get_ozone_generator_power 0x000030a4 Section 0 port.o(i.port_adc_get_ozone_generator_power)
+ i.port_debug_set 0x000030d8 Section 0 port.o(i.port_debug_set)
+ i.port_fan_get 0x000030ea Section 0 port.o(i.port_fan_get)
+ i.port_fan_set 0x000030fc Section 0 port.o(i.port_fan_set)
+ i.port_gpio_get_interval_key_state 0x00003116 Section 0 port.o(i.port_gpio_get_interval_key_state)
+ i.port_gpio_get_level_key_state 0x00003128 Section 0 port.o(i.port_gpio_get_level_key_state)
+ i.port_gpio_get_power_key_state 0x0000313a Section 0 port.o(i.port_gpio_get_power_key_state)
+ i.port_gpio_get_timer_key_state 0x0000314c Section 0 port.o(i.port_gpio_get_timer_key_state)
+ i.port_init 0x00003160 Section 0 port.o(i.port_init)
+ i.port_led0_set 0x0000327c Section 0 port.o(i.port_led0_set)
+ i.port_led1_set 0x0000328e Section 0 port.o(i.port_led1_set)
+ i.port_led2_set 0x000032a0 Section 0 port.o(i.port_led2_set)
+ i.port_led3_set 0x000032b2 Section 0 port.o(i.port_led3_set)
+ i.port_led_b_set 0x000032c4 Section 0 port.o(i.port_led_b_set)
+ i.port_led_g_set 0x000032d6 Section 0 port.o(i.port_led_g_set)
+ i.port_led_r_set 0x000032e8 Section 0 port.o(i.port_led_r_set)
+ i.port_ozone_pwm_set_duty 0x000032fc Section 0 port.o(i.port_ozone_pwm_set_duty)
+ i.port_ozone_pwm_start 0x0000331c Section 0 port.o(i.port_ozone_pwm_start)
+ i.port_ozone_pwm_stop 0x0000332c Section 0 port.o(i.port_ozone_pwm_stop)
+ i.poweron 0x0000333c Section 0 main.o(i.poweron)
+ poweron 0x0000333d Thumb Code 26 main.o(i.poweron)
+ i.processBeforeWorkingStateSweepFrequency 0x00003368 Section 0 ozone_control_service.o(i.processBeforeWorkingStateSweepFrequency)
+ processBeforeWorkingStateSweepFrequency 0x00003369 Thumb Code 92 ozone_control_service.o(i.processBeforeWorkingStateSweepFrequency)
+ i.processWorkingState 0x00003418 Section 0 ozone_control_service.o(i.processWorkingState)
+ processWorkingState 0x00003419 Thumb Code 426 ozone_control_service.o(i.processWorkingState)
+ i.process_countdonwlight 0x00003654 Section 0 human_computer_interaction_service.o(i.process_countdonwlight)
+ i.process_level_light 0x000036c4 Section 0 human_computer_interaction_service.o(i.process_level_light)
+ i.prv_zkey_process_each_after_filter 0x00003740 Section 0 key.o(i.prv_zkey_process_each_after_filter)
+ prv_zkey_process_each_after_filter 0x00003741 Thumb Code 86 key.o(i.prv_zkey_process_each_after_filter)
+ i.shutdwon 0x0000379c Section 0 main.o(i.shutdwon)
+ shutdwon 0x0000379d Thumb Code 20 main.o(i.shutdwon)
+ i.startwork 0x000037c0 Section 0 main.o(i.startwork)
+ startwork 0x000037c1 Thumb Code 20 main.o(i.startwork)
+ i.state_machine_init 0x000037d8 Section 0 state_machine.o(i.state_machine_init)
+ i.state_machine_process_event 0x000037e8 Section 0 ozone_control_service.o(i.state_machine_process_event)
+ state_machine_process_event 0x000037e9 Thumb Code 98 ozone_control_service.o(i.state_machine_process_event)
+ i.state_machine_schedule_each10ms 0x00003864 Section 0 state_machine.o(i.state_machine_schedule_each10ms)
+ i.state_machine_trigger_event 0x00003908 Section 0 state_machine.o(i.state_machine_trigger_event)
+ i.stopwork 0x0000391c Section 0 main.o(i.stopwork)
+ stopwork 0x0000391d Thumb Code 20 main.o(i.stopwork)
+ i.systicket_delay_ms 0x00003934 Section 0 systicket.o(i.systicket_delay_ms)
+ i.systicket_get_now_ms 0x00003950 Section 0 systicket.o(i.systicket_get_now_ms)
+ i.systicket_haspassedms 0x0000395c Section 0 systicket.o(i.systicket_haspassedms)
+ i.systicket_init 0x00003978 Section 0 systicket.o(i.systicket_init)
+ i.this_module_schedule 0x000039b8 Section 0 main.o(i.this_module_schedule)
+ i.uart0_init 0x000039f0 Section 0 uart0.o(i.uart0_init)
+ i.uart0_init_pin 0x00003a74 Section 0 uart0.o(i.uart0_init_pin)
+ uart0_init_pin 0x00003a75 Thumb Code 146 uart0.o(i.uart0_init_pin)
+ i.zgpio_get_default_input_config 0x00003b08 Section 0 gpio.o(i.zgpio_get_default_input_config)
+ i.zgpio_get_default_ode_output_config 0x00003b24 Section 0 gpio.o(i.zgpio_get_default_ode_output_config)
+ i.zgpio_get_default_output_config 0x00003b44 Section 0 gpio.o(i.zgpio_get_default_output_config)
+ i.zgpio_init_all_gpio 0x00003b60 Section 0 gpio.o(i.zgpio_init_all_gpio)
+ i.zgpio_init_as_input 0x00003b62 Section 0 gpio.o(i.zgpio_init_as_input)
+ i.zgpio_init_as_output 0x00003b72 Section 0 gpio.o(i.zgpio_init_as_output)
+ i.zkey_do_loop_in_each_period 0x00003b8c Section 0 key.o(i.zkey_do_loop_in_each_period)
+ i.zkey_init 0x00003bc8 Section 0 key.o(i.zkey_init)
+ i.zkey_process_each 0x00003c3c Section 0 key.o(i.zkey_process_each)
+ i.zpwm_init 0x00003c7a Section 0 pwm.o(i.zpwm_init)
+ i.zpwm_set_duty 0x00003d54 Section 0 pwm.o(i.zpwm_set_duty)
+ i.zpwm_set_duty_ns 0x00003e0c Section 0 pwm.o(i.zpwm_set_duty_ns)
+ i.zpwm_set_freq 0x00003eac Section 0 pwm.o(i.zpwm_set_freq)
+ i.zpwm_start 0x00003ef6 Section 0 pwm.o(i.zpwm_start)
+ i.zpwm_stop 0x00003f52 Section 0 pwm.o(i.zpwm_stop)
+ .conststring 0x00003fac Section 45 main.o(.conststring)
+ .conststring 0x00003fdc Section 62 ozone_control_service.o(.conststring)
.data 0x20000000 Section 136 main.o(.data)
s_keys 0x20000000 Data 112 main.o(.data)
debug_led_state 0x2000007c Data 1 main.o(.data)
@@ -1365,8 +1407,8 @@ Image Symbol Table
.bss 0x20000128 Section 40 port.o(.bss)
.bss 0x20000150 Section 24 ozone_control_service.o(.bss)
.bss 0x20000168 Section 28 thisdevice.o(.bss)
- .bss 0x20000184 Section 1420 frequency_sweep_service.o(.bss)
- STACK 0x20000710 Section 1024 startup_es8p5066.o(STACK)
+ .bss 0x20000184 Section 820 frequency_sweep_service.o(.bss)
+ STACK 0x200004b8 Section 2816 startup_es8p5066.o(STACK)
Global Symbols
@@ -1573,80 +1615,76 @@ Image Symbol Table
__scatterload_zeroinit 0x00001bad Thumb Code 14 handlers.o(i.__scatterload_zeroinit)
adc_get_chnum 0x0000246d Thumb Code 184 adc.o(i.adc_get_chnum)
adc_get_value 0x0000255d Thumb Code 18 adc.o(i.adc_get_value)
- adc_get_value_by_adcch 0x0000256f Thumb Code 60 adc.o(i.adc_get_value_by_adcch)
- adc_get_voltage 0x000025ad Thumb Code 50 adc.o(i.adc_get_voltage)
- adc_module_init 0x000025ed Thumb Code 56 adc.o(i.adc_module_init)
- adc_pin_init 0x00002629 Thumb Code 36 adc.o(i.adc_pin_init)
- close_all_light 0x000026a9 Thumb Code 38 human_computer_interaction_service.o(i.close_all_light)
- do_countdown_flash_light_effect 0x000026fd Thumb Code 146 human_computer_interaction_service.o(i.do_countdown_flash_light_effect)
- do_debug_light_state 0x0000279d Thumb Code 40 main.o(i.do_debug_light_state)
- fputc 0x000027c9 Thumb Code 66 lib_printf.o(i.fputc)
- frequency_sweep_get_power 0x00002815 Thumb Code 12 frequency_sweep_service.o(i.frequency_sweep_get_power)
- frequency_sweep_is_finished 0x00002821 Thumb Code 16 frequency_sweep_service.o(i.frequency_sweep_is_finished)
- frequency_sweep_schedule 0x00002835 Thumb Code 208 frequency_sweep_service.o(i.frequency_sweep_schedule)
- frequency_sweep_start 0x00002919 Thumb Code 64 frequency_sweep_service.o(i.frequency_sweep_start)
+ adc_get_value_by_adcch 0x00002571 Thumb Code 88 adc.o(i.adc_get_value_by_adcch)
+ adc_get_voltage 0x000025dd Thumb Code 50 adc.o(i.adc_get_voltage)
+ adc_module_init 0x0000261d Thumb Code 56 adc.o(i.adc_module_init)
+ adc_pin_init 0x00002659 Thumb Code 36 adc.o(i.adc_pin_init)
+ close_all_light 0x000026d9 Thumb Code 38 human_computer_interaction_service.o(i.close_all_light)
+ do_countdown_flash_light_effect 0x0000272d Thumb Code 146 human_computer_interaction_service.o(i.do_countdown_flash_light_effect)
+ fputc 0x000027cd Thumb Code 66 lib_printf.o(i.fputc)
+ frequency_sweep_get_power 0x00002819 Thumb Code 12 frequency_sweep_service.o(i.frequency_sweep_get_power)
+ frequency_sweep_is_finished 0x00002825 Thumb Code 16 frequency_sweep_service.o(i.frequency_sweep_is_finished)
+ frequency_sweep_schedule 0x00002839 Thumb Code 206 frequency_sweep_service.o(i.frequency_sweep_schedule)
+ frequency_sweep_start 0x0000291d Thumb Code 58 frequency_sweep_service.o(i.frequency_sweep_start)
frequency_sweep_stop 0x00002965 Thumb Code 8 frequency_sweep_service.o(i.frequency_sweep_stop)
get_expect_power 0x00002971 Thumb Code 26 ozone_control_service.o(i.get_expect_power)
hcis_active_input 0x000029e5 Thumb Code 18 human_computer_interaction_service.o(i.hcis_active_input)
- hcis_input_is_active 0x000029fd Thumb Code 18 human_computer_interaction_service.o(i.hcis_input_is_active)
- hcis_shcedule 0x00002a15 Thumb Code 28 human_computer_interaction_service.o(i.hcis_shcedule)
- init_all_subdevice_state 0x00002a81 Thumb Code 58 main.o(i.init_all_subdevice_state)
- kalmanFilter 0x00002abb Thumb Code 86 kalmanfilter.o(i.kalmanFilter)
- lcs_schedule_process 0x00002b11 Thumb Code 56 human_computer_interaction_service.o(i.lcs_schedule_process)
- main 0x00002b51 Thumb Code 126 main.o(i.main)
- mf_set_status_light_state 0x00002d01 Thumb Code 28 human_computer_interaction_service.o(i.mf_set_status_light_state)
- ozone_control_init 0x00002f3d Thumb Code 16 ozone_control_service.o(i.ozone_control_init)
- ozone_control_schedule 0x00002f59 Thumb Code 34 ozone_control_service.o(i.ozone_control_schedule)
- ozone_control_start 0x00002f85 Thumb Code 12 ozone_control_service.o(i.ozone_control_start)
- ozone_control_stop 0x00002f99 Thumb Code 12 ozone_control_service.o(i.ozone_control_stop)
- port_adc_get_ozone_generator_power 0x00002fad Thumb Code 42 port.o(i.port_adc_get_ozone_generator_power)
- port_debug_set 0x00002fe1 Thumb Code 18 port.o(i.port_debug_set)
- port_fan_get 0x00002ff3 Thumb Code 18 port.o(i.port_fan_get)
- port_fan_set 0x00003005 Thumb Code 26 port.o(i.port_fan_set)
- port_gpio_get_interval_key_state 0x0000301f Thumb Code 18 port.o(i.port_gpio_get_interval_key_state)
- port_gpio_get_level_key_state 0x00003031 Thumb Code 18 port.o(i.port_gpio_get_level_key_state)
- port_gpio_get_power_key_state 0x00003043 Thumb Code 18 port.o(i.port_gpio_get_power_key_state)
- port_gpio_get_timer_key_state 0x00003055 Thumb Code 18 port.o(i.port_gpio_get_timer_key_state)
- port_init 0x00003069 Thumb Code 276 port.o(i.port_init)
- port_led0_set 0x00003185 Thumb Code 18 port.o(i.port_led0_set)
- port_led1_set 0x00003197 Thumb Code 18 port.o(i.port_led1_set)
- port_led2_set 0x000031a9 Thumb Code 18 port.o(i.port_led2_set)
- port_led3_set 0x000031bb Thumb Code 18 port.o(i.port_led3_set)
- port_led_b_set 0x000031cd Thumb Code 18 port.o(i.port_led_b_set)
- port_led_g_set 0x000031df Thumb Code 18 port.o(i.port_led_g_set)
- port_led_r_set 0x000031f1 Thumb Code 18 port.o(i.port_led_r_set)
- port_ozone_pwm_set_duty 0x00003205 Thumb Code 28 port.o(i.port_ozone_pwm_set_duty)
- port_ozone_pwm_start 0x00003225 Thumb Code 12 port.o(i.port_ozone_pwm_start)
- port_ozone_pwm_stop 0x00003235 Thumb Code 12 port.o(i.port_ozone_pwm_stop)
- process_countdonwlight 0x00003531 Thumb Code 106 human_computer_interaction_service.o(i.process_countdonwlight)
- process_countdwonevent 0x000035a1 Thumb Code 102 main.o(i.process_countdwonevent)
- process_level_light 0x0000360d Thumb Code 110 human_computer_interaction_service.o(i.process_level_light)
- state_machine_init 0x00003749 Thumb Code 14 state_machine.o(i.state_machine_init)
- state_machine_schedule_each10ms 0x000037d5 Thumb Code 138 state_machine.o(i.state_machine_schedule_each10ms)
- state_machine_trigger_event 0x00003879 Thumb Code 20 state_machine.o(i.state_machine_trigger_event)
- systicket_delay_ms 0x000038a5 Thumb Code 26 systicket.o(i.systicket_delay_ms)
- systicket_get_now_ms 0x000038c1 Thumb Code 6 systicket.o(i.systicket_get_now_ms)
- systicket_haspassedms 0x000038cd Thumb Code 28 systicket.o(i.systicket_haspassedms)
- systicket_init 0x000038e9 Thumb Code 54 systicket.o(i.systicket_init)
- uart0_init 0x00003929 Thumb Code 128 uart0.o(i.uart0_init)
- update_countdown 0x00003a41 Thumb Code 86 main.o(i.update_countdown)
- zgpio_get_default_input_config 0x00003a9d Thumb Code 22 gpio.o(i.zgpio_get_default_input_config)
- zgpio_get_default_ode_output_config 0x00003ab9 Thumb Code 26 gpio.o(i.zgpio_get_default_ode_output_config)
- zgpio_get_default_output_config 0x00003ad9 Thumb Code 22 gpio.o(i.zgpio_get_default_output_config)
- zgpio_init_all_gpio 0x00003af5 Thumb Code 2 gpio.o(i.zgpio_init_all_gpio)
- zgpio_init_as_input 0x00003af7 Thumb Code 16 gpio.o(i.zgpio_init_as_input)
- zgpio_init_as_output 0x00003b07 Thumb Code 26 gpio.o(i.zgpio_init_as_output)
- zkey_do_loop_in_each_period 0x00003b21 Thumb Code 50 key.o(i.zkey_do_loop_in_each_period)
- zkey_init 0x00003b5d Thumb Code 108 key.o(i.zkey_init)
- zkey_process_each 0x00003bd1 Thumb Code 62 key.o(i.zkey_process_each)
- zpwm_init 0x00003c0f Thumb Code 218 pwm.o(i.zpwm_init)
- zpwm_set_duty 0x00003ce9 Thumb Code 180 pwm.o(i.zpwm_set_duty)
- zpwm_set_duty_ns 0x00003da1 Thumb Code 150 pwm.o(i.zpwm_set_duty_ns)
- zpwm_set_freq 0x00003e41 Thumb Code 74 pwm.o(i.zpwm_set_freq)
- zpwm_start 0x00003e8b Thumb Code 92 pwm.o(i.zpwm_start)
- zpwm_stop 0x00003ee7 Thumb Code 88 pwm.o(i.zpwm_stop)
- Region$$Table$$Base 0x00003fb0 Number 0 anon$$obj.o(Region$$Table)
- Region$$Table$$Limit 0x00003fd0 Number 0 anon$$obj.o(Region$$Table)
+ hcis_shcedule 0x000029fd Thumb Code 28 human_computer_interaction_service.o(i.hcis_shcedule)
+ kalmanFilter 0x00002a5d Thumb Code 86 kalmanfilter.o(i.kalmanFilter)
+ lcs_schedule_process 0x00002ab5 Thumb Code 56 human_computer_interaction_service.o(i.lcs_schedule_process)
+ main 0x00002af5 Thumb Code 126 main.o(i.main)
+ mf_set_status_light_state 0x00002e9d Thumb Code 28 human_computer_interaction_service.o(i.mf_set_status_light_state)
+ ozone_control_init 0x00003035 Thumb Code 16 ozone_control_service.o(i.ozone_control_init)
+ ozone_control_schedule 0x00003051 Thumb Code 34 ozone_control_service.o(i.ozone_control_schedule)
+ ozone_control_start 0x0000307d Thumb Code 12 ozone_control_service.o(i.ozone_control_start)
+ ozone_control_stop 0x00003091 Thumb Code 12 ozone_control_service.o(i.ozone_control_stop)
+ port_adc_get_ozone_generator_power 0x000030a5 Thumb Code 42 port.o(i.port_adc_get_ozone_generator_power)
+ port_debug_set 0x000030d9 Thumb Code 18 port.o(i.port_debug_set)
+ port_fan_get 0x000030eb Thumb Code 18 port.o(i.port_fan_get)
+ port_fan_set 0x000030fd Thumb Code 26 port.o(i.port_fan_set)
+ port_gpio_get_interval_key_state 0x00003117 Thumb Code 18 port.o(i.port_gpio_get_interval_key_state)
+ port_gpio_get_level_key_state 0x00003129 Thumb Code 18 port.o(i.port_gpio_get_level_key_state)
+ port_gpio_get_power_key_state 0x0000313b Thumb Code 18 port.o(i.port_gpio_get_power_key_state)
+ port_gpio_get_timer_key_state 0x0000314d Thumb Code 18 port.o(i.port_gpio_get_timer_key_state)
+ port_init 0x00003161 Thumb Code 276 port.o(i.port_init)
+ port_led0_set 0x0000327d Thumb Code 18 port.o(i.port_led0_set)
+ port_led1_set 0x0000328f Thumb Code 18 port.o(i.port_led1_set)
+ port_led2_set 0x000032a1 Thumb Code 18 port.o(i.port_led2_set)
+ port_led3_set 0x000032b3 Thumb Code 18 port.o(i.port_led3_set)
+ port_led_b_set 0x000032c5 Thumb Code 18 port.o(i.port_led_b_set)
+ port_led_g_set 0x000032d7 Thumb Code 18 port.o(i.port_led_g_set)
+ port_led_r_set 0x000032e9 Thumb Code 18 port.o(i.port_led_r_set)
+ port_ozone_pwm_set_duty 0x000032fd Thumb Code 28 port.o(i.port_ozone_pwm_set_duty)
+ port_ozone_pwm_start 0x0000331d Thumb Code 12 port.o(i.port_ozone_pwm_start)
+ port_ozone_pwm_stop 0x0000332d Thumb Code 12 port.o(i.port_ozone_pwm_stop)
+ process_countdonwlight 0x00003655 Thumb Code 106 human_computer_interaction_service.o(i.process_countdonwlight)
+ process_level_light 0x000036c5 Thumb Code 110 human_computer_interaction_service.o(i.process_level_light)
+ state_machine_init 0x000037d9 Thumb Code 14 state_machine.o(i.state_machine_init)
+ state_machine_schedule_each10ms 0x00003865 Thumb Code 138 state_machine.o(i.state_machine_schedule_each10ms)
+ state_machine_trigger_event 0x00003909 Thumb Code 20 state_machine.o(i.state_machine_trigger_event)
+ systicket_delay_ms 0x00003935 Thumb Code 26 systicket.o(i.systicket_delay_ms)
+ systicket_get_now_ms 0x00003951 Thumb Code 6 systicket.o(i.systicket_get_now_ms)
+ systicket_haspassedms 0x0000395d Thumb Code 28 systicket.o(i.systicket_haspassedms)
+ systicket_init 0x00003979 Thumb Code 54 systicket.o(i.systicket_init)
+ this_module_schedule 0x000039b9 Thumb Code 50 main.o(i.this_module_schedule)
+ uart0_init 0x000039f1 Thumb Code 128 uart0.o(i.uart0_init)
+ zgpio_get_default_input_config 0x00003b09 Thumb Code 22 gpio.o(i.zgpio_get_default_input_config)
+ zgpio_get_default_ode_output_config 0x00003b25 Thumb Code 26 gpio.o(i.zgpio_get_default_ode_output_config)
+ zgpio_get_default_output_config 0x00003b45 Thumb Code 22 gpio.o(i.zgpio_get_default_output_config)
+ zgpio_init_all_gpio 0x00003b61 Thumb Code 2 gpio.o(i.zgpio_init_all_gpio)
+ zgpio_init_as_input 0x00003b63 Thumb Code 16 gpio.o(i.zgpio_init_as_input)
+ zgpio_init_as_output 0x00003b73 Thumb Code 26 gpio.o(i.zgpio_init_as_output)
+ zkey_do_loop_in_each_period 0x00003b8d Thumb Code 50 key.o(i.zkey_do_loop_in_each_period)
+ zkey_init 0x00003bc9 Thumb Code 108 key.o(i.zkey_init)
+ zkey_process_each 0x00003c3d Thumb Code 62 key.o(i.zkey_process_each)
+ zpwm_init 0x00003c7b Thumb Code 218 pwm.o(i.zpwm_init)
+ zpwm_set_duty 0x00003d55 Thumb Code 180 pwm.o(i.zpwm_set_duty)
+ zpwm_set_duty_ns 0x00003e0d Thumb Code 150 pwm.o(i.zpwm_set_duty_ns)
+ zpwm_set_freq 0x00003ead Thumb Code 74 pwm.o(i.zpwm_set_freq)
+ zpwm_start 0x00003ef7 Thumb Code 92 pwm.o(i.zpwm_start)
+ zpwm_stop 0x00003f53 Thumb Code 88 pwm.o(i.zpwm_stop)
+ Region$$Table$$Base 0x0000401c Number 0 anon$$obj.o(Region$$Table)
+ Region$$Table$$Limit 0x0000403c Number 0 anon$$obj.o(Region$$Table)
key_module 0x20000070 Data 12 main.o(.data)
m_states 0x20000088 Data 36 ozone_control_service.o(.data)
SystemCoreClock 0x200000fc Data 4 system_es8p5066.o(.data)
@@ -1655,8 +1693,8 @@ Image Symbol Table
g_ozonepwm 0x20000128 Data 40 port.o(.bss)
m_statemachine 0x20000150 Data 24 ozone_control_service.o(.bss)
thisDevice 0x20000168 Data 28 thisdevice.o(.bss)
- this 0x20000184 Data 1420 frequency_sweep_service.o(.bss)
- __initial_sp 0x20000b10 Data 0 startup_es8p5066.o(STACK)
+ this 0x20000184 Data 820 frequency_sweep_service.o(.bss)
+ __initial_sp 0x20000fb8 Data 0 startup_es8p5066.o(STACK)
@@ -1666,258 +1704,267 @@ Memory Map of the image
Image Entry point : 0x000000c1
- Load Region LR_IROM1 (Base: 0x00000000, Size: 0x000040f8, Max: 0x00010000, ABSOLUTE)
+ Load Region LR_IROM1 (Base: 0x00000000, Size: 0x00004164, Max: 0x00010000, ABSOLUTE)
- Execution Region ER_IROM1 (Exec base: 0x00000000, Load base: 0x00000000, Size: 0x00003fd0, Max: 0x00010000, ABSOLUTE)
+ Execution Region ER_IROM1 (Exec base: 0x00000000, Load base: 0x00000000, Size: 0x0000403c, Max: 0x00010000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
- 0x00000000 0x00000000 0x000000c0 Data RO 885 RESET startup_es8p5066.o
- 0x000000c0 0x000000c0 0x00000000 Code RO 2612 * .ARM.Collect$$$$00000000 mc_p.l(entry.o)
- 0x000000c0 0x000000c0 0x00000004 Code RO 2914 .ARM.Collect$$$$00000001 mc_p.l(entry2.o)
- 0x000000c4 0x000000c4 0x00000004 Code RO 2917 .ARM.Collect$$$$00000004 mc_p.l(entry5.o)
- 0x000000c8 0x000000c8 0x00000000 Code RO 2919 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o)
- 0x000000c8 0x000000c8 0x00000000 Code RO 2921 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o)
- 0x000000c8 0x000000c8 0x00000008 Code RO 2922 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o)
- 0x000000d0 0x000000d0 0x00000004 Code RO 2929 .ARM.Collect$$$$0000000E mc_p.l(entry12b.o)
- 0x000000d4 0x000000d4 0x00000000 Code RO 2924 .ARM.Collect$$$$0000000F mc_p.l(entry10a.o)
- 0x000000d4 0x000000d4 0x00000000 Code RO 2926 .ARM.Collect$$$$00000011 mc_p.l(entry11a.o)
- 0x000000d4 0x000000d4 0x00000004 Code RO 2915 .ARM.Collect$$$$00002712 mc_p.l(entry2.o)
- 0x000000d8 0x000000d8 0x0000001c Code RO 886 .text startup_es8p5066.o
- 0x000000f4 0x000000f4 0x0000002c Code RO 2615 .text mc_p.l(uidiv.o)
- 0x00000120 0x00000120 0x00000028 Code RO 2617 .text mc_p.l(idiv.o)
- 0x00000148 0x00000148 0x0000001c Code RO 2621 .text mc_p.l(strcmp.o)
- 0x00000164 0x00000164 0x000000b2 Code RO 2884 .text mf_p.l(fadd.o)
- 0x00000216 0x00000216 0x0000007a Code RO 2886 .text mf_p.l(fmul.o)
- 0x00000290 0x00000290 0x0000007c Code RO 2888 .text mf_p.l(fdiv.o)
- 0x0000030c 0x0000030c 0x000000d0 Code RO 2890 .text mf_p.l(dmul.o)
- 0x000003dc 0x000003dc 0x000000f0 Code RO 2892 .text mf_p.l(ddiv.o)
- 0x000004cc 0x000004cc 0x0000000e Code RO 2894 .text mf_p.l(ffltui.o)
+ 0x00000000 0x00000000 0x000000c0 Data RO 922 RESET startup_es8p5066.o
+ 0x000000c0 0x000000c0 0x00000000 Code RO 2649 * .ARM.Collect$$$$00000000 mc_p.l(entry.o)
+ 0x000000c0 0x000000c0 0x00000004 Code RO 2951 .ARM.Collect$$$$00000001 mc_p.l(entry2.o)
+ 0x000000c4 0x000000c4 0x00000004 Code RO 2954 .ARM.Collect$$$$00000004 mc_p.l(entry5.o)
+ 0x000000c8 0x000000c8 0x00000000 Code RO 2956 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o)
+ 0x000000c8 0x000000c8 0x00000000 Code RO 2958 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o)
+ 0x000000c8 0x000000c8 0x00000008 Code RO 2959 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o)
+ 0x000000d0 0x000000d0 0x00000004 Code RO 2966 .ARM.Collect$$$$0000000E mc_p.l(entry12b.o)
+ 0x000000d4 0x000000d4 0x00000000 Code RO 2961 .ARM.Collect$$$$0000000F mc_p.l(entry10a.o)
+ 0x000000d4 0x000000d4 0x00000000 Code RO 2963 .ARM.Collect$$$$00000011 mc_p.l(entry11a.o)
+ 0x000000d4 0x000000d4 0x00000004 Code RO 2952 .ARM.Collect$$$$00002712 mc_p.l(entry2.o)
+ 0x000000d8 0x000000d8 0x0000001c Code RO 923 .text startup_es8p5066.o
+ 0x000000f4 0x000000f4 0x0000002c Code RO 2652 .text mc_p.l(uidiv.o)
+ 0x00000120 0x00000120 0x00000028 Code RO 2654 .text mc_p.l(idiv.o)
+ 0x00000148 0x00000148 0x0000001c Code RO 2658 .text mc_p.l(strcmp.o)
+ 0x00000164 0x00000164 0x000000b2 Code RO 2921 .text mf_p.l(fadd.o)
+ 0x00000216 0x00000216 0x0000007a Code RO 2923 .text mf_p.l(fmul.o)
+ 0x00000290 0x00000290 0x0000007c Code RO 2925 .text mf_p.l(fdiv.o)
+ 0x0000030c 0x0000030c 0x000000d0 Code RO 2927 .text mf_p.l(dmul.o)
+ 0x000003dc 0x000003dc 0x000000f0 Code RO 2929 .text mf_p.l(ddiv.o)
+ 0x000004cc 0x000004cc 0x0000000e Code RO 2931 .text mf_p.l(ffltui.o)
0x000004da 0x000004da 0x00000002 PAD
- 0x000004dc 0x000004dc 0x00000028 Code RO 2896 .text mf_p.l(dflti.o)
- 0x00000504 0x00000504 0x0000001c Code RO 2898 .text mf_p.l(dfltui.o)
- 0x00000520 0x00000520 0x00000028 Code RO 2900 .text mf_p.l(ffixui.o)
- 0x00000548 0x00000548 0x0000003c Code RO 2902 .text mf_p.l(dfixui.o)
- 0x00000584 0x00000584 0x00000028 Code RO 2904 .text mf_p.l(f2d.o)
- 0x000005ac 0x000005ac 0x00000028 Code RO 2906 .text mf_p.l(cdcmple.o)
- 0x000005d4 0x000005d4 0x00000038 Code RO 2908 .text mf_p.l(d2f.o)
- 0x0000060c 0x0000060c 0x00000014 Code RO 2910 .text mf_p.l(cfcmple.o)
- 0x00000620 0x00000620 0x00000014 Code RO 2912 .text mf_p.l(cfrcmple.o)
- 0x00000634 0x00000634 0x00000060 Code RO 2931 .text mc_p.l(uldiv.o)
- 0x00000694 0x00000694 0x00000022 Code RO 2933 .text mc_p.l(llushr.o)
- 0x000006b6 0x000006b6 0x00000000 Code RO 2935 .text mc_p.l(iusefp.o)
- 0x000006b6 0x000006b6 0x00000082 Code RO 2936 .text mf_p.l(fepilogue.o)
- 0x00000738 0x00000738 0x000000be Code RO 2938 .text mf_p.l(depilogue.o)
+ 0x000004dc 0x000004dc 0x00000028 Code RO 2933 .text mf_p.l(dflti.o)
+ 0x00000504 0x00000504 0x0000001c Code RO 2935 .text mf_p.l(dfltui.o)
+ 0x00000520 0x00000520 0x00000028 Code RO 2937 .text mf_p.l(ffixui.o)
+ 0x00000548 0x00000548 0x0000003c Code RO 2939 .text mf_p.l(dfixui.o)
+ 0x00000584 0x00000584 0x00000028 Code RO 2941 .text mf_p.l(f2d.o)
+ 0x000005ac 0x000005ac 0x00000028 Code RO 2943 .text mf_p.l(cdcmple.o)
+ 0x000005d4 0x000005d4 0x00000038 Code RO 2945 .text mf_p.l(d2f.o)
+ 0x0000060c 0x0000060c 0x00000014 Code RO 2947 .text mf_p.l(cfcmple.o)
+ 0x00000620 0x00000620 0x00000014 Code RO 2949 .text mf_p.l(cfrcmple.o)
+ 0x00000634 0x00000634 0x00000060 Code RO 2968 .text mc_p.l(uldiv.o)
+ 0x00000694 0x00000694 0x00000022 Code RO 2970 .text mc_p.l(llushr.o)
+ 0x000006b6 0x000006b6 0x00000000 Code RO 2972 .text mc_p.l(iusefp.o)
+ 0x000006b6 0x000006b6 0x00000082 Code RO 2973 .text mf_p.l(fepilogue.o)
+ 0x00000738 0x00000738 0x000000be Code RO 2975 .text mf_p.l(depilogue.o)
0x000007f6 0x000007f6 0x00000002 PAD
- 0x000007f8 0x000007f8 0x00000168 Code RO 2942 .text mf_p.l(dadd.o)
- 0x00000960 0x00000960 0x00000040 Code RO 2944 .text mf_p.l(dfixul.o)
- 0x000009a0 0x000009a0 0x00000028 Code RO 2946 .text mf_p.l(cdrcmple.o)
- 0x000009c8 0x000009c8 0x00000024 Code RO 2948 .text mc_p.l(init.o)
- 0x000009ec 0x000009ec 0x00000020 Code RO 2950 .text mc_p.l(llshl.o)
- 0x00000a0c 0x00000a0c 0x00000026 Code RO 2952 .text mc_p.l(llsshr.o)
+ 0x000007f8 0x000007f8 0x00000168 Code RO 2979 .text mf_p.l(dadd.o)
+ 0x00000960 0x00000960 0x00000040 Code RO 2981 .text mf_p.l(dfixul.o)
+ 0x000009a0 0x000009a0 0x00000028 Code RO 2983 .text mf_p.l(cdrcmple.o)
+ 0x000009c8 0x000009c8 0x00000024 Code RO 2985 .text mc_p.l(init.o)
+ 0x000009ec 0x000009ec 0x00000020 Code RO 2987 .text mc_p.l(llshl.o)
+ 0x00000a0c 0x00000a0c 0x00000026 Code RO 2989 .text mc_p.l(llsshr.o)
0x00000a32 0x00000a32 0x00000002 PAD
- 0x00000a34 0x00000a34 0x00000010 Code RO 964 i.ADC_ClearIFStatus lib_adc.o
- 0x00000a44 0x00000a44 0x00000010 Code RO 967 i.ADC_GetConvValue lib_adc.o
- 0x00000a54 0x00000a54 0x00000018 Code RO 969 i.ADC_GetIFStatus lib_adc.o
- 0x00000a6c 0x00000a6c 0x00000150 Code RO 970 i.ADC_Init lib_adc.o
- 0x00000bbc 0x00000bbc 0x00000030 Code RO 971 i.ADC_Reset lib_adc.o
- 0x00000bec 0x00000bec 0x00000018 Code RO 972 i.ADC_Set_CH lib_adc.o
- 0x00000c04 0x00000c04 0x00000028 Code RO 973 i.ADC_SoftStart lib_adc.o
- 0x00000c2c 0x00000c2c 0x00000028 Code RO 974 i.ADC_SoftStop lib_adc.o
- 0x00000c54 0x00000c54 0x00000034 Code RO 1493 i.DeviceClockAllEnable lib_scu.o
- 0x00000c88 0x00000c88 0x000000b8 Code RO 1055 i.GPIO_GetNormalBitOffsetFromPin lib_gpio.o
- 0x00000d40 0x00000d40 0x00000086 Code RO 1056 i.GPIO_Init lib_gpio.o
+ 0x00000a34 0x00000a34 0x00000010 Code RO 1001 i.ADC_ClearIFStatus lib_adc.o
+ 0x00000a44 0x00000a44 0x00000010 Code RO 1004 i.ADC_GetConvValue lib_adc.o
+ 0x00000a54 0x00000a54 0x00000018 Code RO 1006 i.ADC_GetIFStatus lib_adc.o
+ 0x00000a6c 0x00000a6c 0x00000150 Code RO 1007 i.ADC_Init lib_adc.o
+ 0x00000bbc 0x00000bbc 0x00000030 Code RO 1008 i.ADC_Reset lib_adc.o
+ 0x00000bec 0x00000bec 0x00000018 Code RO 1009 i.ADC_Set_CH lib_adc.o
+ 0x00000c04 0x00000c04 0x00000028 Code RO 1010 i.ADC_SoftStart lib_adc.o
+ 0x00000c2c 0x00000c2c 0x00000028 Code RO 1011 i.ADC_SoftStop lib_adc.o
+ 0x00000c54 0x00000c54 0x00000034 Code RO 1530 i.DeviceClockAllEnable lib_scu.o
+ 0x00000c88 0x00000c88 0x000000b8 Code RO 1092 i.GPIO_GetNormalBitOffsetFromPin lib_gpio.o
+ 0x00000d40 0x00000d40 0x00000086 Code RO 1093 i.GPIO_Init lib_gpio.o
0x00000dc6 0x00000dc6 0x00000002 PAD
- 0x00000dc8 0x00000dc8 0x00000030 Code RO 1057 i.GPIO_ReadBit lib_gpio.o
- 0x00000df8 0x00000df8 0x00000068 Code RO 1060 i.GPIO_SetDSRegFromPin lib_gpio.o
- 0x00000e60 0x00000e60 0x0000004c Code RO 1061 i.GPIO_SetDirRegFromPin lib_gpio.o
- 0x00000eac 0x00000eac 0x000003bc Code RO 1062 i.GPIO_SetFuncxRegFromPin lib_gpio.o
- 0x00001268 0x00001268 0x00000068 Code RO 1063 i.GPIO_SetODERegFromPin lib_gpio.o
- 0x000012d0 0x000012d0 0x00000068 Code RO 1064 i.GPIO_SetPDERegFromPin lib_gpio.o
- 0x00001338 0x00001338 0x00000068 Code RO 1065 i.GPIO_SetPUERegFromPin lib_gpio.o
- 0x000013a0 0x000013a0 0x00000068 Code RO 1066 i.GPIO_SetPortFLTFromPin lib_gpio.o
- 0x00001408 0x00001408 0x00000068 Code RO 1067 i.GPIO_SetPortTypeFromPin lib_gpio.o
- 0x00001470 0x00001470 0x00000068 Code RO 1068 i.GPIO_SetSingalTypeFromPin lib_gpio.o
- 0x000014d8 0x000014d8 0x0000004c Code RO 1071 i.GPIO_WriteBit lib_gpio.o
- 0x00001524 0x00001524 0x000000cc Code RO 1496 i.HRC_Config lib_scu.o
- 0x000015f0 0x000015f0 0x00000064 Code RO 1454 i.NVIC_Init lib_scs.o
- 0x00001654 0x00001654 0x0000002c Code RO 1505 i.SCU_SysClkSelect lib_scu.o
- 0x00001680 0x00001680 0x00000010 Code RO 2439 i.SysTick_IRQHandler systicket.o
- 0x00001690 0x00001690 0x00000040 Code RO 1457 i.SysTick_Init lib_scs.o
- 0x000016d0 0x000016d0 0x00000024 Code RO 859 i.SystemInit system_es8p5066.o
- 0x000016f4 0x000016f4 0x00000064 Code RO 1707 i.T16Nx_BaseInit lib_timer.o
- 0x00001758 0x00001758 0x0000000a Code RO 1710 i.T16Nx_Disable lib_timer.o
- 0x00001762 0x00001762 0x0000000c Code RO 1711 i.T16Nx_Enable lib_timer.o
- 0x0000176e 0x0000176e 0x00000008 Code RO 1721 i.T16Nx_GetTOP0 lib_timer.o
- 0x00001776 0x00001776 0x00000008 Code RO 1722 i.T16Nx_GetTOP1 lib_timer.o
- 0x0000177e 0x0000177e 0x00000018 Code RO 1724 i.T16Nx_MAT0ITConfig lib_timer.o
- 0x00001796 0x00001796 0x00000018 Code RO 1725 i.T16Nx_MAT0Out0Config lib_timer.o
- 0x000017ae 0x000017ae 0x00000018 Code RO 1726 i.T16Nx_MAT1ITConfig lib_timer.o
- 0x000017c6 0x000017c6 0x00000018 Code RO 1727 i.T16Nx_MAT1Out0Config lib_timer.o
- 0x000017de 0x000017de 0x00000018 Code RO 1728 i.T16Nx_MAT2ITConfig lib_timer.o
- 0x000017f6 0x000017f6 0x00000018 Code RO 1729 i.T16Nx_MAT2Out1Config lib_timer.o
- 0x0000180e 0x0000180e 0x00000018 Code RO 1730 i.T16Nx_MAT3ITConfig lib_timer.o
- 0x00001826 0x00001826 0x00000018 Code RO 1731 i.T16Nx_MAT3Out1Config lib_timer.o
- 0x0000183e 0x0000183e 0x00000080 Code RO 1732 i.T16Nx_PMWOutInit lib_timer.o
- 0x000018be 0x000018be 0x00000024 Code RO 1737 i.T16Nx_SetCNT0 lib_timer.o
- 0x000018e2 0x000018e2 0x00000024 Code RO 1738 i.T16Nx_SetCNT1 lib_timer.o
- 0x00001906 0x00001906 0x0000000e Code RO 1739 i.T16Nx_SetMAT0 lib_timer.o
- 0x00001914 0x00001914 0x0000000e Code RO 1740 i.T16Nx_SetMAT1 lib_timer.o
- 0x00001922 0x00001922 0x0000000e Code RO 1741 i.T16Nx_SetMAT2 lib_timer.o
- 0x00001930 0x00001930 0x0000000e Code RO 1742 i.T16Nx_SetMAT3 lib_timer.o
- 0x0000193e 0x0000193e 0x0000000e Code RO 1745 i.T16Nx_SetTOP0 lib_timer.o
- 0x0000194c 0x0000194c 0x0000000e Code RO 1746 i.T16Nx_SetTOP1 lib_timer.o
- 0x0000195a 0x0000195a 0x00000004 Code RO 2143 i.UART_ClearITPendingBit lib_uart.o
- 0x0000195e 0x0000195e 0x00000010 Code RO 2144 i.UART_GetFlagStatus lib_uart.o
- 0x0000196e 0x0000196e 0x00000014 Code RO 2147 i.UART_ITConfig lib_uart.o
+ 0x00000dc8 0x00000dc8 0x00000030 Code RO 1094 i.GPIO_ReadBit lib_gpio.o
+ 0x00000df8 0x00000df8 0x00000068 Code RO 1097 i.GPIO_SetDSRegFromPin lib_gpio.o
+ 0x00000e60 0x00000e60 0x0000004c Code RO 1098 i.GPIO_SetDirRegFromPin lib_gpio.o
+ 0x00000eac 0x00000eac 0x000003bc Code RO 1099 i.GPIO_SetFuncxRegFromPin lib_gpio.o
+ 0x00001268 0x00001268 0x00000068 Code RO 1100 i.GPIO_SetODERegFromPin lib_gpio.o
+ 0x000012d0 0x000012d0 0x00000068 Code RO 1101 i.GPIO_SetPDERegFromPin lib_gpio.o
+ 0x00001338 0x00001338 0x00000068 Code RO 1102 i.GPIO_SetPUERegFromPin lib_gpio.o
+ 0x000013a0 0x000013a0 0x00000068 Code RO 1103 i.GPIO_SetPortFLTFromPin lib_gpio.o
+ 0x00001408 0x00001408 0x00000068 Code RO 1104 i.GPIO_SetPortTypeFromPin lib_gpio.o
+ 0x00001470 0x00001470 0x00000068 Code RO 1105 i.GPIO_SetSingalTypeFromPin lib_gpio.o
+ 0x000014d8 0x000014d8 0x0000004c Code RO 1108 i.GPIO_WriteBit lib_gpio.o
+ 0x00001524 0x00001524 0x000000cc Code RO 1533 i.HRC_Config lib_scu.o
+ 0x000015f0 0x000015f0 0x00000064 Code RO 1491 i.NVIC_Init lib_scs.o
+ 0x00001654 0x00001654 0x0000002c Code RO 1542 i.SCU_SysClkSelect lib_scu.o
+ 0x00001680 0x00001680 0x00000010 Code RO 2476 i.SysTick_IRQHandler systicket.o
+ 0x00001690 0x00001690 0x00000040 Code RO 1494 i.SysTick_Init lib_scs.o
+ 0x000016d0 0x000016d0 0x00000024 Code RO 896 i.SystemInit system_es8p5066.o
+ 0x000016f4 0x000016f4 0x00000064 Code RO 1744 i.T16Nx_BaseInit lib_timer.o
+ 0x00001758 0x00001758 0x0000000a Code RO 1747 i.T16Nx_Disable lib_timer.o
+ 0x00001762 0x00001762 0x0000000c Code RO 1748 i.T16Nx_Enable lib_timer.o
+ 0x0000176e 0x0000176e 0x00000008 Code RO 1758 i.T16Nx_GetTOP0 lib_timer.o
+ 0x00001776 0x00001776 0x00000008 Code RO 1759 i.T16Nx_GetTOP1 lib_timer.o
+ 0x0000177e 0x0000177e 0x00000018 Code RO 1761 i.T16Nx_MAT0ITConfig lib_timer.o
+ 0x00001796 0x00001796 0x00000018 Code RO 1762 i.T16Nx_MAT0Out0Config lib_timer.o
+ 0x000017ae 0x000017ae 0x00000018 Code RO 1763 i.T16Nx_MAT1ITConfig lib_timer.o
+ 0x000017c6 0x000017c6 0x00000018 Code RO 1764 i.T16Nx_MAT1Out0Config lib_timer.o
+ 0x000017de 0x000017de 0x00000018 Code RO 1765 i.T16Nx_MAT2ITConfig lib_timer.o
+ 0x000017f6 0x000017f6 0x00000018 Code RO 1766 i.T16Nx_MAT2Out1Config lib_timer.o
+ 0x0000180e 0x0000180e 0x00000018 Code RO 1767 i.T16Nx_MAT3ITConfig lib_timer.o
+ 0x00001826 0x00001826 0x00000018 Code RO 1768 i.T16Nx_MAT3Out1Config lib_timer.o
+ 0x0000183e 0x0000183e 0x00000080 Code RO 1769 i.T16Nx_PMWOutInit lib_timer.o
+ 0x000018be 0x000018be 0x00000024 Code RO 1774 i.T16Nx_SetCNT0 lib_timer.o
+ 0x000018e2 0x000018e2 0x00000024 Code RO 1775 i.T16Nx_SetCNT1 lib_timer.o
+ 0x00001906 0x00001906 0x0000000e Code RO 1776 i.T16Nx_SetMAT0 lib_timer.o
+ 0x00001914 0x00001914 0x0000000e Code RO 1777 i.T16Nx_SetMAT1 lib_timer.o
+ 0x00001922 0x00001922 0x0000000e Code RO 1778 i.T16Nx_SetMAT2 lib_timer.o
+ 0x00001930 0x00001930 0x0000000e Code RO 1779 i.T16Nx_SetMAT3 lib_timer.o
+ 0x0000193e 0x0000193e 0x0000000e Code RO 1782 i.T16Nx_SetTOP0 lib_timer.o
+ 0x0000194c 0x0000194c 0x0000000e Code RO 1783 i.T16Nx_SetTOP1 lib_timer.o
+ 0x0000195a 0x0000195a 0x00000004 Code RO 2180 i.UART_ClearITPendingBit lib_uart.o
+ 0x0000195e 0x0000195e 0x00000010 Code RO 2181 i.UART_GetFlagStatus lib_uart.o
+ 0x0000196e 0x0000196e 0x00000014 Code RO 2184 i.UART_ITConfig lib_uart.o
0x00001982 0x00001982 0x00000002 PAD
- 0x00001984 0x00001984 0x00000168 Code RO 2148 i.UART_Init lib_uart.o
- 0x00001aec 0x00001aec 0x00000006 Code RO 2153 i.UART_SendByte lib_uart.o
- 0x00001af2 0x00001af2 0x00000010 Code RO 2156 i.UART_TBIMConfig lib_uart.o
+ 0x00001984 0x00001984 0x00000168 Code RO 2185 i.UART_Init lib_uart.o
+ 0x00001aec 0x00001aec 0x00000006 Code RO 2190 i.UART_SendByte lib_uart.o
+ 0x00001af2 0x00001af2 0x00000010 Code RO 2193 i.UART_TBIMConfig lib_uart.o
0x00001b02 0x00001b02 0x00000002 PAD
- 0x00001b04 0x00001b04 0x00000020 Code RO 2856 i.__0printf mc_p.l(printfa.o)
- 0x00001b24 0x00001b24 0x0000002e Code RO 2940 i.__ARM_clz mf_p.l(depilogue.o)
- 0x00001b52 0x00001b52 0x0000001c Code RO 1286 i.__ARM_common_switch8 lib_gpio.o
+ 0x00001b04 0x00001b04 0x00000020 Code RO 2893 i.__0printf mc_p.l(printfa.o)
+ 0x00001b24 0x00001b24 0x0000002e Code RO 2977 i.__ARM_clz mf_p.l(depilogue.o)
+ 0x00001b52 0x00001b52 0x0000001c Code RO 1323 i.__ARM_common_switch8 lib_gpio.o
0x00001b6e 0x00001b6e 0x00000002 PAD
- 0x00001b70 0x00001b70 0x0000002c Code RO 464 i.__mf_get_ozone_power ozone_control_service.o
- 0x00001b9c 0x00001b9c 0x0000000e Code RO 2956 i.__scatterload_copy mc_p.l(handlers.o)
- 0x00001baa 0x00001baa 0x00000002 Code RO 2957 i.__scatterload_null mc_p.l(handlers.o)
- 0x00001bac 0x00001bac 0x0000000e Code RO 2958 i.__scatterload_zeroinit mc_p.l(handlers.o)
+ 0x00001b70 0x00001b70 0x0000002c Code RO 501 i.__mf_get_ozone_power ozone_control_service.o
+ 0x00001b9c 0x00001b9c 0x0000000e Code RO 2993 i.__scatterload_copy mc_p.l(handlers.o)
+ 0x00001baa 0x00001baa 0x00000002 Code RO 2994 i.__scatterload_null mc_p.l(handlers.o)
+ 0x00001bac 0x00001bac 0x0000000e Code RO 2995 i.__scatterload_zeroinit mc_p.l(handlers.o)
0x00001bba 0x00001bba 0x00000002 PAD
- 0x00001bbc 0x00001bbc 0x00000174 Code RO 2863 i._fp_digits mc_p.l(printfa.o)
- 0x00001d30 0x00001d30 0x000006f0 Code RO 2864 i._printf_core mc_p.l(printfa.o)
- 0x00002420 0x00002420 0x00000020 Code RO 2865 i._printf_post_padding mc_p.l(printfa.o)
- 0x00002440 0x00002440 0x0000002c Code RO 2866 i._printf_pre_padding mc_p.l(printfa.o)
- 0x0000246c 0x0000246c 0x000000f0 Code RO 2324 i.adc_get_chnum adc.o
- 0x0000255c 0x0000255c 0x00000012 Code RO 2325 i.adc_get_value adc.o
- 0x0000256e 0x0000256e 0x0000003c Code RO 2326 i.adc_get_value_by_adcch adc.o
- 0x000025aa 0x000025aa 0x00000002 PAD
- 0x000025ac 0x000025ac 0x00000040 Code RO 2327 i.adc_get_voltage adc.o
- 0x000025ec 0x000025ec 0x0000003c Code RO 2328 i.adc_module_init adc.o
- 0x00002628 0x00002628 0x00000028 Code RO 2329 i.adc_pin_init adc.o
- 0x00002650 0x00002650 0x00000058 Code RO 2559 i.calculate_top pwm.o
- 0x000026a8 0x000026a8 0x00000026 Code RO 766 i.close_all_light human_computer_interaction_service.o
- 0x000026ce 0x000026ce 0x0000002c Code RO 3 i.compute_countdown_num main.o
- 0x000026fa 0x000026fa 0x00000002 PAD
- 0x000026fc 0x000026fc 0x000000a0 Code RO 767 i.do_countdown_flash_light_effect human_computer_interaction_service.o
- 0x0000279c 0x0000279c 0x0000002c Code RO 4 i.do_debug_light_state main.o
- 0x000027c8 0x000027c8 0x0000004c Code RO 1427 i.fputc lib_printf.o
- 0x00002814 0x00002814 0x0000000c Code RO 657 i.frequency_sweep_get_power frequency_sweep_service.o
- 0x00002820 0x00002820 0x00000014 Code RO 658 i.frequency_sweep_is_finished frequency_sweep_service.o
- 0x00002834 0x00002834 0x000000e4 Code RO 659 i.frequency_sweep_schedule frequency_sweep_service.o
- 0x00002918 0x00002918 0x0000004c Code RO 660 i.frequency_sweep_start frequency_sweep_service.o
- 0x00002964 0x00002964 0x0000000c Code RO 661 i.frequency_sweep_stop frequency_sweep_service.o
- 0x00002970 0x00002970 0x00000028 Code RO 465 i.get_expect_power ozone_control_service.o
- 0x00002998 0x00002998 0x0000004c Code RO 466 i.get_resonant_frequency ozone_control_service.o
- 0x000029e4 0x000029e4 0x00000018 Code RO 768 i.hcis_active_input human_computer_interaction_service.o
- 0x000029fc 0x000029fc 0x00000018 Code RO 769 i.hcis_input_is_active human_computer_interaction_service.o
- 0x00002a14 0x00002a14 0x00000020 Code RO 770 i.hcis_shcedule human_computer_interaction_service.o
- 0x00002a34 0x00002a34 0x0000004c Code RO 5 i.increase_and_assign_countdonwnum main.o
- 0x00002a80 0x00002a80 0x0000003a Code RO 6 i.init_all_subdevice_state main.o
- 0x00002aba 0x00002aba 0x00000056 Code RO 845 i.kalmanFilter kalmanfilter.o
- 0x00002b10 0x00002b10 0x00000040 Code RO 771 i.lcs_schedule_process human_computer_interaction_service.o
- 0x00002b50 0x00002b50 0x000000f0 Code RO 7 i.main main.o
- 0x00002c40 0x00002c40 0x00000018 Code RO 467 i.mf_get_ozone_power ozone_control_service.o
- 0x00002c58 0x00002c58 0x0000002c Code RO 662 i.mf_get_ozone_power frequency_sweep_service.o
- 0x00002c84 0x00002c84 0x00000010 Code RO 468 i.mf_get_ozone_power_reset_filter ozone_control_service.o
- 0x00002c94 0x00002c94 0x00000048 Code RO 663 i.mf_getpower frequency_sweep_service.o
- 0x00002cdc 0x00002cdc 0x00000024 Code RO 772 i.mf_set_status_light_by_level human_computer_interaction_service.o
- 0x00002d00 0x00002d00 0x0000001c Code RO 773 i.mf_set_status_light_state human_computer_interaction_service.o
- 0x00002d1c 0x00002d1c 0x00000030 Code RO 664 i.mf_setpower frequency_sweep_service.o
- 0x00002d4c 0x00002d4c 0x000001f0 Code RO 8 i.onkey main.o
- 0x00002f3c 0x00002f3c 0x0000001c Code RO 469 i.ozone_control_init ozone_control_service.o
- 0x00002f58 0x00002f58 0x0000002c Code RO 470 i.ozone_control_schedule ozone_control_service.o
- 0x00002f84 0x00002f84 0x00000014 Code RO 471 i.ozone_control_start ozone_control_service.o
- 0x00002f98 0x00002f98 0x00000014 Code RO 472 i.ozone_control_stop ozone_control_service.o
- 0x00002fac 0x00002fac 0x00000034 Code RO 193 i.port_adc_get_ozone_generator_power port.o
- 0x00002fe0 0x00002fe0 0x00000012 Code RO 195 i.port_debug_set port.o
- 0x00002ff2 0x00002ff2 0x00000012 Code RO 196 i.port_fan_get port.o
- 0x00003004 0x00003004 0x0000001a Code RO 197 i.port_fan_set port.o
- 0x0000301e 0x0000301e 0x00000012 Code RO 198 i.port_gpio_get_interval_key_state port.o
- 0x00003030 0x00003030 0x00000012 Code RO 199 i.port_gpio_get_level_key_state port.o
- 0x00003042 0x00003042 0x00000012 Code RO 200 i.port_gpio_get_power_key_state port.o
- 0x00003054 0x00003054 0x00000012 Code RO 201 i.port_gpio_get_timer_key_state port.o
- 0x00003066 0x00003066 0x00000002 PAD
- 0x00003068 0x00003068 0x0000011c Code RO 202 i.port_init port.o
- 0x00003184 0x00003184 0x00000012 Code RO 204 i.port_led0_set port.o
- 0x00003196 0x00003196 0x00000012 Code RO 206 i.port_led1_set port.o
- 0x000031a8 0x000031a8 0x00000012 Code RO 208 i.port_led2_set port.o
- 0x000031ba 0x000031ba 0x00000012 Code RO 210 i.port_led3_set port.o
- 0x000031cc 0x000031cc 0x00000012 Code RO 212 i.port_led_b_set port.o
- 0x000031de 0x000031de 0x00000012 Code RO 214 i.port_led_g_set port.o
- 0x000031f0 0x000031f0 0x00000012 Code RO 216 i.port_led_r_set port.o
- 0x00003202 0x00003202 0x00000002 PAD
- 0x00003204 0x00003204 0x00000020 Code RO 217 i.port_ozone_pwm_set_duty port.o
- 0x00003224 0x00003224 0x00000010 Code RO 218 i.port_ozone_pwm_start port.o
- 0x00003234 0x00003234 0x00000010 Code RO 219 i.port_ozone_pwm_stop port.o
- 0x00003244 0x00003244 0x000000b0 Code RO 473 i.processBeforeWorkingStateSweepFrequency ozone_control_service.o
- 0x000032f4 0x000032f4 0x0000023c Code RO 474 i.processWorkingState ozone_control_service.o
- 0x00003530 0x00003530 0x00000070 Code RO 774 i.process_countdonwlight human_computer_interaction_service.o
- 0x000035a0 0x000035a0 0x0000006c Code RO 9 i.process_countdwonevent main.o
- 0x0000360c 0x0000360c 0x0000007c Code RO 775 i.process_level_light human_computer_interaction_service.o
- 0x00003688 0x00003688 0x0000005c Code RO 2514 i.prv_zkey_process_each_after_filter key.o
- 0x000036e4 0x000036e4 0x00000028 Code RO 10 i.set_countdown main.o
- 0x0000370c 0x0000370c 0x00000024 Code RO 11 i.shutdwon main.o
- 0x00003730 0x00003730 0x00000018 Code RO 12 i.startwork main.o
- 0x00003748 0x00003748 0x0000000e Code RO 728 i.state_machine_init state_machine.o
- 0x00003756 0x00003756 0x00000002 PAD
- 0x00003758 0x00003758 0x0000007c Code RO 475 i.state_machine_process_event ozone_control_service.o
- 0x000037d4 0x000037d4 0x000000a4 Code RO 729 i.state_machine_schedule_each10ms state_machine.o
- 0x00003878 0x00003878 0x00000014 Code RO 730 i.state_machine_trigger_event state_machine.o
- 0x0000388c 0x0000388c 0x00000018 Code RO 13 i.stopwork main.o
- 0x000038a4 0x000038a4 0x0000001a Code RO 2440 i.systicket_delay_ms systicket.o
- 0x000038be 0x000038be 0x00000002 PAD
- 0x000038c0 0x000038c0 0x0000000c Code RO 2441 i.systicket_get_now_ms systicket.o
- 0x000038cc 0x000038cc 0x0000001c Code RO 2442 i.systicket_haspassedms systicket.o
- 0x000038e8 0x000038e8 0x00000040 Code RO 2443 i.systicket_init systicket.o
- 0x00003928 0x00003928 0x00000084 Code RO 2486 i.uart0_init uart0.o
- 0x000039ac 0x000039ac 0x00000092 Code RO 2487 i.uart0_init_pin uart0.o
- 0x00003a3e 0x00003a3e 0x00000002 PAD
- 0x00003a40 0x00003a40 0x0000005c Code RO 14 i.update_countdown main.o
- 0x00003a9c 0x00003a9c 0x0000001c Code RO 2385 i.zgpio_get_default_input_config gpio.o
- 0x00003ab8 0x00003ab8 0x00000020 Code RO 2386 i.zgpio_get_default_ode_output_config gpio.o
- 0x00003ad8 0x00003ad8 0x0000001c Code RO 2387 i.zgpio_get_default_output_config gpio.o
- 0x00003af4 0x00003af4 0x00000002 Code RO 2388 i.zgpio_init_all_gpio gpio.o
- 0x00003af6 0x00003af6 0x00000010 Code RO 2389 i.zgpio_init_as_input gpio.o
- 0x00003b06 0x00003b06 0x0000001a Code RO 2390 i.zgpio_init_as_output gpio.o
- 0x00003b20 0x00003b20 0x0000003c Code RO 2515 i.zkey_do_loop_in_each_period key.o
- 0x00003b5c 0x00003b5c 0x00000074 Code RO 2516 i.zkey_init key.o
- 0x00003bd0 0x00003bd0 0x0000003e Code RO 2517 i.zkey_process_each key.o
- 0x00003c0e 0x00003c0e 0x000000da Code RO 2560 i.zpwm_init pwm.o
- 0x00003ce8 0x00003ce8 0x000000b8 Code RO 2561 i.zpwm_set_duty pwm.o
- 0x00003da0 0x00003da0 0x000000a0 Code RO 2562 i.zpwm_set_duty_ns pwm.o
- 0x00003e40 0x00003e40 0x0000004a Code RO 2563 i.zpwm_set_freq pwm.o
- 0x00003e8a 0x00003e8a 0x0000005c Code RO 2564 i.zpwm_start pwm.o
- 0x00003ee6 0x00003ee6 0x00000058 Code RO 2565 i.zpwm_stop pwm.o
- 0x00003f3e 0x00003f3e 0x00000002 PAD
- 0x00003f40 0x00003f40 0x0000002d Data RO 15 .conststring main.o
- 0x00003f6d 0x00003f6d 0x00000003 PAD
- 0x00003f70 0x00003f70 0x0000003e Data RO 477 .conststring ozone_control_service.o
- 0x00003fae 0x00003fae 0x00000002 PAD
- 0x00003fb0 0x00003fb0 0x00000020 Data RO 2954 Region$$Table anon$$obj.o
+ 0x00001bbc 0x00001bbc 0x00000174 Code RO 2900 i._fp_digits mc_p.l(printfa.o)
+ 0x00001d30 0x00001d30 0x000006f0 Code RO 2901 i._printf_core mc_p.l(printfa.o)
+ 0x00002420 0x00002420 0x00000020 Code RO 2902 i._printf_post_padding mc_p.l(printfa.o)
+ 0x00002440 0x00002440 0x0000002c Code RO 2903 i._printf_pre_padding mc_p.l(printfa.o)
+ 0x0000246c 0x0000246c 0x000000f0 Code RO 2361 i.adc_get_chnum adc.o
+ 0x0000255c 0x0000255c 0x00000012 Code RO 2362 i.adc_get_value adc.o
+ 0x0000256e 0x0000256e 0x00000002 PAD
+ 0x00002570 0x00002570 0x0000006c Code RO 2363 i.adc_get_value_by_adcch adc.o
+ 0x000025dc 0x000025dc 0x00000040 Code RO 2364 i.adc_get_voltage adc.o
+ 0x0000261c 0x0000261c 0x0000003c Code RO 2365 i.adc_module_init adc.o
+ 0x00002658 0x00002658 0x00000028 Code RO 2366 i.adc_pin_init adc.o
+ 0x00002680 0x00002680 0x00000058 Code RO 2596 i.calculate_top pwm.o
+ 0x000026d8 0x000026d8 0x00000026 Code RO 803 i.close_all_light human_computer_interaction_service.o
+ 0x000026fe 0x000026fe 0x0000002c Code RO 3 i.compute_countdown_num main.o
+ 0x0000272a 0x0000272a 0x00000002 PAD
+ 0x0000272c 0x0000272c 0x000000a0 Code RO 804 i.do_countdown_flash_light_effect human_computer_interaction_service.o
+ 0x000027cc 0x000027cc 0x0000004c Code RO 1464 i.fputc lib_printf.o
+ 0x00002818 0x00002818 0x0000000c Code RO 694 i.frequency_sweep_get_power frequency_sweep_service.o
+ 0x00002824 0x00002824 0x00000014 Code RO 695 i.frequency_sweep_is_finished frequency_sweep_service.o
+ 0x00002838 0x00002838 0x000000e4 Code RO 696 i.frequency_sweep_schedule frequency_sweep_service.o
+ 0x0000291c 0x0000291c 0x00000048 Code RO 697 i.frequency_sweep_start frequency_sweep_service.o
+ 0x00002964 0x00002964 0x0000000c Code RO 698 i.frequency_sweep_stop frequency_sweep_service.o
+ 0x00002970 0x00002970 0x00000028 Code RO 502 i.get_expect_power ozone_control_service.o
+ 0x00002998 0x00002998 0x0000004c Code RO 503 i.get_resonant_frequency ozone_control_service.o
+ 0x000029e4 0x000029e4 0x00000018 Code RO 805 i.hcis_active_input human_computer_interaction_service.o
+ 0x000029fc 0x000029fc 0x00000020 Code RO 807 i.hcis_shcedule human_computer_interaction_service.o
+ 0x00002a1c 0x00002a1c 0x00000040 Code RO 4 i.increase_and_assign_countdonwnum main.o
+ 0x00002a5c 0x00002a5c 0x00000056 Code RO 882 i.kalmanFilter kalmanfilter.o
+ 0x00002ab2 0x00002ab2 0x00000002 PAD
+ 0x00002ab4 0x00002ab4 0x00000040 Code RO 808 i.lcs_schedule_process human_computer_interaction_service.o
+ 0x00002af4 0x00002af4 0x000000f0 Code RO 5 i.main main.o
+ 0x00002be4 0x00002be4 0x0000002c Code RO 6 i.mf_do_debug_light_state main.o
+ 0x00002c10 0x00002c10 0x00000018 Code RO 504 i.mf_get_ozone_power ozone_control_service.o
+ 0x00002c28 0x00002c28 0x0000002c Code RO 699 i.mf_get_ozone_power frequency_sweep_service.o
+ 0x00002c54 0x00002c54 0x00000010 Code RO 505 i.mf_get_ozone_power_reset_filter ozone_control_service.o
+ 0x00002c64 0x00002c64 0x00000044 Code RO 700 i.mf_getpower frequency_sweep_service.o
+ 0x00002ca8 0x00002ca8 0x0000003a Code RO 7 i.mf_init_all_subdevice_state main.o
+ 0x00002ce2 0x00002ce2 0x00000002 PAD
+ 0x00002ce4 0x00002ce4 0x00000058 Code RO 8 i.mf_process_interval_key main.o
+ 0x00002d3c 0x00002d3c 0x00000090 Code RO 9 i.mf_process_level_key main.o
+ 0x00002dcc 0x00002dcc 0x0000002c Code RO 10 i.mf_process_poweron_key main.o
+ 0x00002df8 0x00002df8 0x00000058 Code RO 11 i.mf_process_timer_key main.o
+ 0x00002e50 0x00002e50 0x00000028 Code RO 12 i.mf_set_countdown main.o
+ 0x00002e78 0x00002e78 0x00000024 Code RO 809 i.mf_set_status_light_by_level human_computer_interaction_service.o
+ 0x00002e9c 0x00002e9c 0x0000001c Code RO 810 i.mf_set_status_light_state human_computer_interaction_service.o
+ 0x00002eb8 0x00002eb8 0x0000002c Code RO 701 i.mf_setpower frequency_sweep_service.o
+ 0x00002ee4 0x00002ee4 0x0000002c Code RO 13 i.mf_try_auto_restart main.o
+ 0x00002f10 0x00002f10 0x0000001c Code RO 14 i.mf_try_autoshutdown main.o
+ 0x00002f2c 0x00002f2c 0x00000014 Code RO 15 i.mf_try_autostop main.o
+ 0x00002f40 0x00002f40 0x0000005c Code RO 16 i.mf_update_countdown main.o
+ 0x00002f9c 0x00002f9c 0x00000098 Code RO 17 i.onkey main.o
+ 0x00003034 0x00003034 0x0000001c Code RO 506 i.ozone_control_init ozone_control_service.o
+ 0x00003050 0x00003050 0x0000002c Code RO 507 i.ozone_control_schedule ozone_control_service.o
+ 0x0000307c 0x0000307c 0x00000014 Code RO 508 i.ozone_control_start ozone_control_service.o
+ 0x00003090 0x00003090 0x00000014 Code RO 509 i.ozone_control_stop ozone_control_service.o
+ 0x000030a4 0x000030a4 0x00000034 Code RO 230 i.port_adc_get_ozone_generator_power port.o
+ 0x000030d8 0x000030d8 0x00000012 Code RO 232 i.port_debug_set port.o
+ 0x000030ea 0x000030ea 0x00000012 Code RO 233 i.port_fan_get port.o
+ 0x000030fc 0x000030fc 0x0000001a Code RO 234 i.port_fan_set port.o
+ 0x00003116 0x00003116 0x00000012 Code RO 235 i.port_gpio_get_interval_key_state port.o
+ 0x00003128 0x00003128 0x00000012 Code RO 236 i.port_gpio_get_level_key_state port.o
+ 0x0000313a 0x0000313a 0x00000012 Code RO 237 i.port_gpio_get_power_key_state port.o
+ 0x0000314c 0x0000314c 0x00000012 Code RO 238 i.port_gpio_get_timer_key_state port.o
+ 0x0000315e 0x0000315e 0x00000002 PAD
+ 0x00003160 0x00003160 0x0000011c Code RO 239 i.port_init port.o
+ 0x0000327c 0x0000327c 0x00000012 Code RO 241 i.port_led0_set port.o
+ 0x0000328e 0x0000328e 0x00000012 Code RO 243 i.port_led1_set port.o
+ 0x000032a0 0x000032a0 0x00000012 Code RO 245 i.port_led2_set port.o
+ 0x000032b2 0x000032b2 0x00000012 Code RO 247 i.port_led3_set port.o
+ 0x000032c4 0x000032c4 0x00000012 Code RO 249 i.port_led_b_set port.o
+ 0x000032d6 0x000032d6 0x00000012 Code RO 251 i.port_led_g_set port.o
+ 0x000032e8 0x000032e8 0x00000012 Code RO 253 i.port_led_r_set port.o
+ 0x000032fa 0x000032fa 0x00000002 PAD
+ 0x000032fc 0x000032fc 0x00000020 Code RO 254 i.port_ozone_pwm_set_duty port.o
+ 0x0000331c 0x0000331c 0x00000010 Code RO 255 i.port_ozone_pwm_start port.o
+ 0x0000332c 0x0000332c 0x00000010 Code RO 256 i.port_ozone_pwm_stop port.o
+ 0x0000333c 0x0000333c 0x0000002c Code RO 18 i.poweron main.o
+ 0x00003368 0x00003368 0x000000b0 Code RO 510 i.processBeforeWorkingStateSweepFrequency ozone_control_service.o
+ 0x00003418 0x00003418 0x0000023c Code RO 511 i.processWorkingState ozone_control_service.o
+ 0x00003654 0x00003654 0x00000070 Code RO 811 i.process_countdonwlight human_computer_interaction_service.o
+ 0x000036c4 0x000036c4 0x0000007c Code RO 812 i.process_level_light human_computer_interaction_service.o
+ 0x00003740 0x00003740 0x0000005c Code RO 2551 i.prv_zkey_process_each_after_filter key.o
+ 0x0000379c 0x0000379c 0x00000024 Code RO 19 i.shutdwon main.o
+ 0x000037c0 0x000037c0 0x00000018 Code RO 20 i.startwork main.o
+ 0x000037d8 0x000037d8 0x0000000e Code RO 765 i.state_machine_init state_machine.o
+ 0x000037e6 0x000037e6 0x00000002 PAD
+ 0x000037e8 0x000037e8 0x0000007c Code RO 512 i.state_machine_process_event ozone_control_service.o
+ 0x00003864 0x00003864 0x000000a4 Code RO 766 i.state_machine_schedule_each10ms state_machine.o
+ 0x00003908 0x00003908 0x00000014 Code RO 767 i.state_machine_trigger_event state_machine.o
+ 0x0000391c 0x0000391c 0x00000018 Code RO 21 i.stopwork main.o
+ 0x00003934 0x00003934 0x0000001a Code RO 2477 i.systicket_delay_ms systicket.o
+ 0x0000394e 0x0000394e 0x00000002 PAD
+ 0x00003950 0x00003950 0x0000000c Code RO 2478 i.systicket_get_now_ms systicket.o
+ 0x0000395c 0x0000395c 0x0000001c Code RO 2479 i.systicket_haspassedms systicket.o
+ 0x00003978 0x00003978 0x00000040 Code RO 2480 i.systicket_init systicket.o
+ 0x000039b8 0x000039b8 0x00000038 Code RO 22 i.this_module_schedule main.o
+ 0x000039f0 0x000039f0 0x00000084 Code RO 2523 i.uart0_init uart0.o
+ 0x00003a74 0x00003a74 0x00000092 Code RO 2524 i.uart0_init_pin uart0.o
+ 0x00003b06 0x00003b06 0x00000002 PAD
+ 0x00003b08 0x00003b08 0x0000001c Code RO 2422 i.zgpio_get_default_input_config gpio.o
+ 0x00003b24 0x00003b24 0x00000020 Code RO 2423 i.zgpio_get_default_ode_output_config gpio.o
+ 0x00003b44 0x00003b44 0x0000001c Code RO 2424 i.zgpio_get_default_output_config gpio.o
+ 0x00003b60 0x00003b60 0x00000002 Code RO 2425 i.zgpio_init_all_gpio gpio.o
+ 0x00003b62 0x00003b62 0x00000010 Code RO 2426 i.zgpio_init_as_input gpio.o
+ 0x00003b72 0x00003b72 0x0000001a Code RO 2427 i.zgpio_init_as_output gpio.o
+ 0x00003b8c 0x00003b8c 0x0000003c Code RO 2552 i.zkey_do_loop_in_each_period key.o
+ 0x00003bc8 0x00003bc8 0x00000074 Code RO 2553 i.zkey_init key.o
+ 0x00003c3c 0x00003c3c 0x0000003e Code RO 2554 i.zkey_process_each key.o
+ 0x00003c7a 0x00003c7a 0x000000da Code RO 2597 i.zpwm_init pwm.o
+ 0x00003d54 0x00003d54 0x000000b8 Code RO 2598 i.zpwm_set_duty pwm.o
+ 0x00003e0c 0x00003e0c 0x000000a0 Code RO 2599 i.zpwm_set_duty_ns pwm.o
+ 0x00003eac 0x00003eac 0x0000004a Code RO 2600 i.zpwm_set_freq pwm.o
+ 0x00003ef6 0x00003ef6 0x0000005c Code RO 2601 i.zpwm_start pwm.o
+ 0x00003f52 0x00003f52 0x00000058 Code RO 2602 i.zpwm_stop pwm.o
+ 0x00003faa 0x00003faa 0x00000002 PAD
+ 0x00003fac 0x00003fac 0x0000002d Data RO 23 .conststring main.o
+ 0x00003fd9 0x00003fd9 0x00000003 PAD
+ 0x00003fdc 0x00003fdc 0x0000003e Data RO 514 .conststring ozone_control_service.o
+ 0x0000401a 0x0000401a 0x00000002 PAD
+ 0x0000401c 0x0000401c 0x00000020 Data RO 2991 Region$$Table anon$$obj.o
- Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x00003fd0, Size: 0x00000b10, Max: 0x00001000, ABSOLUTE)
+ Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x0000403c, Size: 0x00000fb8, Max: 0x00001000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
- 0x20000000 0x00003fd0 0x00000088 Data RW 16 .data main.o
- 0x20000088 0x00004058 0x00000048 Data RW 478 .data ozone_control_service.o
- 0x200000d0 0x000040a0 0x00000018 Data RW 666 .data frequency_sweep_service.o
- 0x200000e8 0x000040b8 0x00000014 Data RW 776 .data human_computer_interaction_service.o
- 0x200000fc 0x000040cc 0x00000004 Data RW 860 .data system_es8p5066.o
- 0x20000100 0x000040d0 0x00000001 Data RW 2330 .data adc.o
- 0x20000101 0x000040d1 0x00000015 Data RW 2391 .data gpio.o
- 0x20000116 0x000040e6 0x00000002 PAD
- 0x20000118 0x000040e8 0x00000004 Data RW 2444 .data systicket.o
- 0x2000011c 0x000040ec 0x00000005 Data RW 2518 .data key.o
- 0x20000121 0x000040f1 0x00000003 PAD
- 0x20000124 0x000040f4 0x00000004 Data RW 2930 .data mc_p.l(stdout.o)
- 0x20000128 - 0x00000028 Zero RW 220 .bss port.o
- 0x20000150 - 0x00000018 Zero RW 476 .bss ozone_control_service.o
- 0x20000168 - 0x0000001c Zero RW 643 .bss thisdevice.o
- 0x20000184 - 0x0000058c Zero RW 665 .bss frequency_sweep_service.o
- 0x20000710 - 0x00000400 Zero RW 883 STACK startup_es8p5066.o
+ 0x20000000 0x0000403c 0x00000088 Data RW 24 .data main.o
+ 0x20000088 0x000040c4 0x00000048 Data RW 515 .data ozone_control_service.o
+ 0x200000d0 0x0000410c 0x00000018 Data RW 703 .data frequency_sweep_service.o
+ 0x200000e8 0x00004124 0x00000014 Data RW 813 .data human_computer_interaction_service.o
+ 0x200000fc 0x00004138 0x00000004 Data RW 897 .data system_es8p5066.o
+ 0x20000100 0x0000413c 0x00000001 Data RW 2367 .data adc.o
+ 0x20000101 0x0000413d 0x00000015 Data RW 2428 .data gpio.o
+ 0x20000116 0x00004152 0x00000002 PAD
+ 0x20000118 0x00004154 0x00000004 Data RW 2481 .data systicket.o
+ 0x2000011c 0x00004158 0x00000005 Data RW 2555 .data key.o
+ 0x20000121 0x0000415d 0x00000003 PAD
+ 0x20000124 0x00004160 0x00000004 Data RW 2967 .data mc_p.l(stdout.o)
+ 0x20000128 - 0x00000028 Zero RW 257 .bss port.o
+ 0x20000150 - 0x00000018 Zero RW 513 .bss ozone_control_service.o
+ 0x20000168 - 0x0000001c Zero RW 680 .bss thisdevice.o
+ 0x20000184 - 0x00000334 Zero RW 702 .bss frequency_sweep_service.o
+ 0x200004b8 - 0x00000b00 Zero RW 920 STACK startup_es8p5066.o
==============================================================================
@@ -1927,10 +1974,10 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug Object Name
- 482 78 0 1 0 3868 adc.o
- 512 62 0 24 1420 6183 frequency_sweep_service.o
+ 530 98 0 1 0 3896 adc.o
+ 500 66 0 24 820 6179 frequency_sweep_service.o
132 18 0 21 0 3532 gpio.o
- 642 58 0 20 0 7234 human_computer_interaction_service.o
+ 618 52 0 20 0 6627 human_computer_interaction_service.o
86 0 0 0 0 895 kalmanfilter.o
330 24 0 5 0 4890 key.o
544 44 0 0 0 4464 lib_adc.o
@@ -1940,11 +1987,11 @@ Image component sizes
300 30 0 0 0 1675 lib_scu.o
614 0 0 0 0 12111 lib_timer.o
422 10 0 0 0 3820 lib_uart.o
- 1282 296 45 136 0 78254 main.o
+ 1374 356 45 136 0 81551 main.o
1184 324 62 72 24 9962 ozone_control_service.o
660 30 0 0 40 59054 port.o
904 24 0 0 0 5224 pwm.o
- 28 8 192 0 1024 648 startup_es8p5066.o
+ 28 8 192 0 2816 648 startup_es8p5066.o
198 26 0 0 0 3301 state_machine.o
36 10 0 4 0 723 system_es8p5066.o
146 20 0 4 0 2847 systicket.o
@@ -1952,9 +1999,9 @@ Image component sizes
278 4 0 0 0 1705 uart0.o
----------------------------------------------------------------------
- 11274 1244 336 292 2536 224878 Object Totals
+ 11382 1322 336 292 3728 227592 Object Totals
0 0 32 0 0 0 (incl. Generated)
- 24 0 5 5 0 0 (incl. Padding)
+ 28 0 5 5 0 0 (incl. Padding)
----------------------------------------------------------------------
@@ -2023,15 +2070,15 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug
- 16000 1410 336 296 2536 219870 Grand Totals
- 16000 1410 336 296 2536 219870 ELF Image Totals
- 16000 1410 336 296 0 0 ROM Totals
+ 16108 1488 336 296 3728 222276 Grand Totals
+ 16108 1488 336 296 3728 222276 ELF Image Totals
+ 16108 1488 336 296 0 0 ROM Totals
==============================================================================
- Total RO Size (Code + RO Data) 16336 ( 15.95kB)
- Total RW Size (RW Data + ZI Data) 2832 ( 2.77kB)
- Total ROM Size (Code + RO Data + RW Data) 16632 ( 16.24kB)
+ Total RO Size (Code + RO Data) 16444 ( 16.06kB)
+ Total RW Size (RW Data + ZI Data) 4024 ( 3.93kB)
+ Total ROM Size (Code + RO Data + RW Data) 16740 ( 16.35kB)
==============================================================================
diff --git a/project_ozone/project_o.uvgui.zel b/project_ozone/project_o.uvgui.zel
index 60c466d..b8d8b33 100644
--- a/project_ozone/project_o.uvgui.zel
+++ b/project_ozone/project_o.uvgui.zel
@@ -15,17 +15,17 @@
38003
Registers
- 140 100
+ 140 130
346
Code Coverage
- 1010 656
+ 1010 160
204
Performance Analyzer
- 1170 175 175 496
+ 1170
@@ -111,7 +111,7 @@
0
994
- 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000007000000040000000100000048463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF63463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C736572766963655C6672657175656E63795F73776565705F736572766963652E6300000000196672657175656E63795F73776565705F736572766963652E6300000000FFDC7800FFFFFFFF51463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C73746174655F6D616368696E652E68000000000F73746174655F6D616368696E652E6800000000BECEA100FFFFFFFF51463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C73746174655F6D616368696E652E63000000000F73746174655F6D616368696E652E6300000000F0A0A100FFFFFFFF61463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C736572766963655C6F7A6F6E655F636F6E74726F6C5F736572766963652E6300000000176F7A6F6E655F636F6E74726F6C5F736572766963652E6300000000BCA8E100FFFFFFFF48463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C746573742E630000000006746573742E63000000009CC1B600FFFFFFFF56463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C434D5349535C737461727475705F45533850353036362E730000000012737461727475705F45533850353036362E7300000000F7B88600FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000001C0100006600000080070000B2020000
+ 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000007000000060000000100000048463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF63463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C736572766963655C6672657175656E63795F73776565705F736572766963652E6300000000196672657175656E63795F73776565705F736572766963652E6300000000FFDC7800FFFFFFFF51463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C73746174655F6D616368696E652E68000000000F73746174655F6D616368696E652E6800000000BECEA100FFFFFFFF51463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C73746174655F6D616368696E652E63000000000F73746174655F6D616368696E652E6300000000F0A0A100FFFFFFFF61463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C736572766963655C6F7A6F6E655F636F6E74726F6C5F736572766963652E6300000000176F7A6F6E655F636F6E74726F6C5F736572766963652E6300000000BCA8E100FFFFFFFF48463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C4150505C746573742E630000000006746573742E63000000009CC1B600FFFFFFFF56463A5C776F726B73706163655C70726F6A6563745F6F7A6F6E655F67656E657261746F725C6F7A6F6E655F67656E657261746F725F65733870353036365C434D5349535C737461727475705F45533850353036362E730000000012737461727475705F45533850353036362E7300000000F7B88600FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000001C0100006600000080070000B2020000
@@ -1806,7 +1806,7 @@
File
2537
- 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050FFFFFFFF0096000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000
+ 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050FFFFFFFF0096000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000
1423
@@ -1822,7 +1822,7 @@
Build
976
- 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0000000000000000010000000000000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008546172676574203196000000000000000100085461726765742031000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000004004E00000000000000000000000000000000010000000100000001807202000000000400530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000
+ 00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000002001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000008546172676574203196000000000000000100085461726765742031000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000004004E00000000000000000000000000000000010000000100000001807202000000000400530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000
583
@@ -3603,12 +3603,12 @@
0
100
- 4
+ 6
..\APP\main.c
- 0
- 215
- 255
+ 20
+ 167
+ 198
1
0
@@ -3660,9 +3660,9 @@
..\CMSIS\startup_ES8P5066.s
- 0
- 96
- 106
+ 32
+ 12
+ 21
1
0
diff --git a/project_ozone/project_o.uvopt b/project_ozone/project_o.uvopt
index 2ff59b3..3865236 100644
--- a/project_ozone/project_o.uvopt
+++ b/project_ozone/project_o.uvopt
@@ -379,7 +379,7 @@
CMSIS
- 0
+ 1
0
0
0
@@ -411,7 +411,7 @@
Library
- 0
+ 1
0
0
0
diff --git a/zes8p5066lib b/zes8p5066lib
index d42b02a..55af328 160000
--- a/zes8p5066lib
+++ b/zes8p5066lib
@@ -1 +1 @@
-Subproject commit d42b02a3055c9ab99c917608797208790712524f
+Subproject commit 55af3285a5274efafc730b5b3b994c940b81322d