From 155943875ffa9f91bc12ccf2b204cba599065ff5 Mon Sep 17 00:00:00 2001 From: zwsd Date: Mon, 26 Sep 2022 18:23:42 +0800 Subject: [PATCH] update --- main/app_main.cpp | 19 ++++++++++++++++++- main/heating_plate.c | 8 +++++--- main/heating_plate.h | 3 ++- main/key.c | 20 +++++--------------- main/key.h | 2 +- 5 files changed, 31 insertions(+), 21 deletions(-) diff --git a/main/app_main.cpp b/main/app_main.cpp index e189b04..7afa75e 100644 --- a/main/app_main.cpp +++ b/main/app_main.cpp @@ -57,6 +57,22 @@ void process_camera_identifies_failed_event(void) } } +void process_key_event(void) +{ + if (camera_recognition_reaction_plate()) + { + /* 有反应板的处理 */ + } + else + { + /* 没有反应板的处理(加热) */ + if (T_temp_get_data() <= 48.0) + { + T_heating_plate_start(); + } + } +} + extern "C" void app_main(void) { T_debug_light_init(); @@ -66,12 +82,13 @@ extern "C" void app_main(void) T_key_init(&T_key_structer); T_wifi_init(); T_temp_init(); - T_key_registered_cb(camera_recognition_reaction_plate, process_camera_identifies_successful_event, process_camera_identifies_failed_event); + T_key_registered_cb(process_key_event); T_wifi_registered_cb(); while (true) { T_debug_light_schedule(); T_key_schedule(); + T_heating_plate_schedule(); } } \ No newline at end of file diff --git a/main/heating_plate.c b/main/heating_plate.c index 426b145..e431206 100644 --- a/main/heating_plate.c +++ b/main/heating_plate.c @@ -1,12 +1,12 @@ /** * @file heating_plate.c * @author Finny (tianjialong0106@163.com) - * @brief + * @brief * @version 0.1 * @date 2022-09-26 - * + * * @copyright Copyright (c) 2022 - * + * */ #include "heating_plate.h" @@ -18,3 +18,5 @@ void T_heating_plate_registered_cb(void) {} void T_heating_plate_start(void) {} void T_heating_plate_stop(void) {} + +void T_heating_plate_schedule(void) {} \ No newline at end of file diff --git a/main/heating_plate.h b/main/heating_plate.h index a215ae6..1a2786c 100644 --- a/main/heating_plate.h +++ b/main/heating_plate.h @@ -3,4 +3,5 @@ void T_heating_plate_init(void); void T_heating_plate_registered_cb(void); void T_heating_plate_start(void); -void T_heating_plate_stop(void); \ No newline at end of file +void T_heating_plate_stop(void); +void T_heating_plate_schedule(void); \ No newline at end of file diff --git a/main/key.c b/main/key.c index a3e7a8b..678ca0d 100644 --- a/main/key.c +++ b/main/key.c @@ -12,20 +12,17 @@ #include "key.h" static T_key_structer_t *T_key_structer_s; -static key_camera_cb camera_callback_s; -static key_event_cb successful_event_cb_s; -static key_event_cb failed_event_cb_s; +static key_event_cb event_cb_s; void T_key_init(T_key_structer_t *T_key_structer) { T_key_structer_s = T_key_structer; } -void T_key_registered_cb(key_camera_cb camera_cb, key_event_cb successful_event_cb, key_event_cb failed_event_cb) +void T_key_registered_cb(key_event_cb event_cb) { - camera_callback_s = camera_cb; - successful_event_cb_s = successful_event_cb; - failed_event_cb_s = failed_event_cb; + + event_cb_s = event_cb; } void T_key_on_event(void) @@ -37,14 +34,7 @@ void T_key_schedule(void) T_key_structer_s->key_now_state = T_key_get_level(); if ((T_key_structer_s->key_before_state != T_key_structer_s->key_now_state) && (T_key_structer_s->key_now_state == true)) { - if (camera_callback_s()) - { - successful_event_cb_s(); - } - else - { - failed_event_cb_s(); - } + event_cb_s(); } T_key_structer_s->key_before_state = T_key_structer_s->key_now_state; } diff --git a/main/key.h b/main/key.h index 926c9f6..e7dc715 100644 --- a/main/key.h +++ b/main/key.h @@ -12,7 +12,7 @@ typedef bool (*key_camera_cb)(void); typedef void (*key_event_cb)(void); void T_key_init(T_key_structer_t *T_key_structer); -void T_key_registered_cb(key_camera_cb camera_cb, key_event_cb successful_event_cb, key_event_cb failed_event_cb); +void T_key_registered_cb(key_event_cb event_cb); void T_key_on_event(void); void T_key_schedule(void); bool T_key_get_level(void); \ No newline at end of file