diff --git a/ui/hand_acid_mainboard_ui.HMI b/ui/hand_acid_mainboard_ui.HMI index f65f5ec..cbca94f 100644 Binary files a/ui/hand_acid_mainboard_ui.HMI and b/ui/hand_acid_mainboard_ui.HMI differ diff --git a/ui/ui.h b/ui/ui.h index eaef2cc..c081e6c 100644 --- a/ui/ui.h +++ b/ui/ui.h @@ -14,7 +14,7 @@ #define pg_muSettings 12 #define pg_muDeviceInfo 13 #define pg_muAudit 14 -#define pg_muTestPage 15 +#define pg_muPumpTest 15 #define pg_alert 16 #define pg_confirm 17 #define pg_keybAcidCh 18 @@ -200,6 +200,8 @@ #define ob_muSettings_bleCliTil 20 #define ob_muSettings_bleCliName 21 #define ob_muSettings_bleScan 22 +#define ob_muSettings_pumpTest 23 +#define ob_muSettings_pumpTestTil 24 //muDeviceInfo.objs #define ob_muDeviceInfo_muDeviceInfo 0 #define ob_muDeviceInfo_bak 1 @@ -218,10 +220,22 @@ #define ob_muAudit_t2 4 #define ob_muAudit_b0 5 #define ob_muAudit_b1 6 -//muTestPage.objs -#define ob_muTestPage_muTestPage 0 -#define ob_muTestPage_frompage 1 -#define ob_muTestPage_fromPopUpWin 2 +//muPumpTest.objs +#define ob_muPumpTest_muPumpTest 0 +#define ob_muPumpTest_frompage 1 +#define ob_muPumpTest_fromPopUpWin 2 +#define ob_muPumpTest_bak 3 +#define ob_muPumpTest_statiTrun 4 +#define ob_muPumpTest_t0 5 +#define ob_muPumpTest_statiVolum 6 +#define ob_muPumpTest_statiTrunTil 7 +#define ob_muPumpTest_statiVolumTil 8 +#define ob_muPumpTest_clearStati 9 +#define ob_muPumpTest_forward 10 +#define ob_muPumpTest_bakward 11 +#define ob_muPumpTest_stop 12 +#define ob_muPumpTest_pumpId 13 +#define ob_muPumpTest_pumpIdTil 14 //alert.objs #define ob_alert_alert 0 #define ob_alert_t0 1 diff --git a/usrc/service/app_core.cpp b/usrc/service/app_core.cpp index b8b7221..f4dee0f 100644 --- a/usrc/service/app_core.cpp +++ b/usrc/service/app_core.cpp @@ -90,6 +90,7 @@ void AppCore::appsetup() { Page_muSettings::ins()->initialize(); Page_muUsrMgr::ins()->initialize(); Page_muDeviceInfo::ins()->initialize(); + Page_muPumpTest::ins()->initialize(); // EventProcesser RemoteControlerEventProcesser::ins()->initialize(); diff --git a/usrc/service/front_end_controler.cpp b/usrc/service/front_end_controler.cpp index bb61e47..2976835 100644 --- a/usrc/service/front_end_controler.cpp +++ b/usrc/service/front_end_controler.cpp @@ -8,7 +8,7 @@ #include "tjc/tjc_constant.hpp" using namespace iflytop; #define TAG "UIScheduler" -#define MODULE_DEBUG 0 +#define MODULE_DEBUG 1 #define CMD_OVERTIME 50 @@ -77,8 +77,10 @@ void FrontEndControler::startSchedule() { if (suc) { memset(&event_cache, 0, sizeof(event_cache)); uint8_t packetType = packet.data[0]; - if (packetType == tjc::kpt_inputfield_content_change_event) { - processUsrKeyboardConfirmEvent(packet.data, packet.datalen); + if (packetType == tjc::kpt_inputfield_content_change_event1) { + processInputfieldContentChangeEvent1(packet.data, packet.datalen); + } else if (packetType == tjc::kpt_inputfield_content_change_event0) { + processInputfieldContentChangeEvent0(packet.data, packet.datalen); } else if (packetType == tjc::kpt_double_state_button_event) { processUsrDoubleStateButtonEvent(packet.data, packet.datalen); } else if (packetType == tjc::kpt_unlogin_request) { @@ -256,7 +258,32 @@ void FrontEndControler::callUsrEventCb(tjc::tjc_usr_event_t* event) { } } -void FrontEndControler::processUsrKeyboardConfirmEvent(uint8_t* data, size_t len) { +void FrontEndControler::processInputfieldContentChangeEvent0(uint8_t* data, size_t len) { + /** + * @brief + * + * printh AB + * prints loadpageid.val,1 + * prints loadcmpid.val,1 + * prints p[loadpageid.val].b[loadcmpid.val].txt,0 + * printh 00 + * printh FF FF FF + * page loadpageid.val + * + */ + ZLOGI(TAG, "processInputfieldContentChangeEvent0"); + memset(&event_cache, 0, sizeof(event_cache)); + event_cache.eventId = data[0]; + event_cache.pid = data[1]; + event_cache.bid = data[2]; + const char* strbegin = (const char*)&data[3]; + strbegin = zcpystr(event_cache.d.inputfield_content.text, strbegin, sizeof(event_cache.d.inputfield_content.text)); + callUsrEventCb(&event_cache); + // input_file_event_cache = event_cache; + // input_file_event_cache_state = true; +} + +void FrontEndControler::processInputfieldContentChangeEvent1(uint8_t* data, size_t len) { /** * @brief * @@ -269,7 +296,7 @@ void FrontEndControler::processUsrKeyboardConfirmEvent(uint8_t* data, size_t len * page loadpageid.val * */ - // ZLOGI(TAG, "processUsrKeyboardConfirmEvent"); + // ZLOGI(TAG, "processInputfieldContentChangeEvent1"); memset(&event_cache, 0, sizeof(event_cache)); event_cache.eventId = data[0]; event_cache.pid = data[1]; diff --git a/usrc/service/front_end_controler.hpp b/usrc/service/front_end_controler.hpp index 3cce376..c7d1fe2 100644 --- a/usrc/service/front_end_controler.hpp +++ b/usrc/service/front_end_controler.hpp @@ -91,7 +91,8 @@ class FrontEndControler { private: void processScreenRxPacket(uint8_t* data, size_t len); void processUsrButtonEvent(uint8_t* data, size_t len); - void processUsrKeyboardConfirmEvent(uint8_t* data, size_t len); + void processInputfieldContentChangeEvent1(uint8_t* data, size_t len); + void processInputfieldContentChangeEvent0(uint8_t* data, size_t len); void processUsrDoubleStateButtonEvent(uint8_t* data, size_t len); void processLoginRequestEvent(uint8_t* data, size_t len); diff --git a/usrc/service/page/page.hpp b/usrc/service/page/page.hpp index d5cdd65..8cc4678 100644 --- a/usrc/service/page/page.hpp +++ b/usrc/service/page/page.hpp @@ -9,4 +9,5 @@ #include "submenu/Page_muInterval.hpp" #include "submenu/Page_muSettings.hpp" #include "submenu/Page_muUsrMgr.hpp" -#include "submenu/Page_muDeviceInfo.hpp" \ No newline at end of file +#include "submenu/Page_muDeviceInfo.hpp" +#include "submenu/Page_muPumpTest.hpp" \ No newline at end of file diff --git a/usrc/service/page/page_processer.hpp b/usrc/service/page/page_processer.hpp index 4dc69c5..d2f461b 100644 --- a/usrc/service/page/page_processer.hpp +++ b/usrc/service/page/page_processer.hpp @@ -23,7 +23,7 @@ class IPageProcesser { OnButton(event->bid, event->d.double_state_button.val); } else if (event->eventId == tjc::kpt_button_event) { OnButton(event->bid, event->d.button_event.val); - } else if (event->eventId == tjc::kpt_inputfield_content_change_event) { + } else if (event->eventId == tjc::kpt_inputfield_content_change_event1 || event->eventId == tjc::kpt_inputfield_content_change_event0) { OnInputFieldContentChange(event->bid, event->d.inputfield_content.text); } else if (event->eventId == tjc::kpt_login_request) { OnLoginButtonClick(event->bid, event->d.login_request.usrName, event->d.login_request.passwd); diff --git a/usrc/service/page/submenu/Page_muDeviceInfo.cpp b/usrc/service/page/submenu/Page_muDeviceInfo.cpp index 6fda356..8cf2398 100644 --- a/usrc/service/page/submenu/Page_muDeviceInfo.cpp +++ b/usrc/service/page/submenu/Page_muDeviceInfo.cpp @@ -12,4 +12,8 @@ void Page_muDeviceInfo::OnPageLoad() { UIS->setVal(PAGE, ob_muDeviceInfo_softVers, APP_VERSION); } void Page_muDeviceInfo::OnInputFieldContentChange(uint8_t bid, const char* text) {} -void Page_muDeviceInfo::OnButton(uint8_t bid, uint8_t val) {} \ No newline at end of file +void Page_muDeviceInfo::OnButton(uint8_t bid, uint8_t val) { + if (bid == ob_muDeviceInfo_bak) { + UIS->chpage(GSM->getMenuPage()); + } +} \ No newline at end of file diff --git a/usrc/service/page/submenu/Page_muPumpTest.cpp b/usrc/service/page/submenu/Page_muPumpTest.cpp new file mode 100644 index 0000000..c13f787 --- /dev/null +++ b/usrc/service/page/submenu/Page_muPumpTest.cpp @@ -0,0 +1,18 @@ +#include "Page_muPumpTest.hpp" + +using namespace iflytop; + +#define PAGE pg_muPumpTest +#define TAG "Page_muPumpTest" +bool Page_muPumpTest::isBelongThisPage(int page) { return page == PAGE; } + +void Page_muPumpTest::OnPageLoad() {} +void Page_muPumpTest::OnInputFieldContentChange(uint8_t bid, const char* text) { // + ZLOGI(TAG, "bid:%d %s", bid, text); +} +void Page_muPumpTest::OnButton(uint8_t bid, uint8_t val) { + ZLOGI(TAG, "bid:%d", bid); + if (bid == ob_muPumpTest_bak) { + UIS->chpage(pg_muSettings); + } +} \ No newline at end of file diff --git a/usrc/service/page/submenu/Page_muPumpTest.hpp b/usrc/service/page/submenu/Page_muPumpTest.hpp new file mode 100644 index 0000000..377a616 --- /dev/null +++ b/usrc/service/page/submenu/Page_muPumpTest.hpp @@ -0,0 +1,27 @@ +#pragma once +// +#include "../page_processer.hpp" +namespace iflytop { +using namespace std; +// page: keybAcidCh +class Page_muPumpTest : public IPageProcesser { + private: + /* data */ + + public: + static Page_muPumpTest* ins() { + static Page_muPumpTest instance; + return &instance; + } + + private: + virtual bool isBelongThisPage(int page) override; + + virtual void OnPageLoad() override; + virtual void OnInputFieldContentChange(uint8_t bid, const char* text) override; + virtual void OnButton(uint8_t bid, uint8_t val) override; + + private: +}; + +} // namespace iflytop diff --git a/usrc/service/tjc/tjc_constant.cpp b/usrc/service/tjc/tjc_constant.cpp index b7e45a2..8be4f63 100644 --- a/usrc/service/tjc/tjc_constant.cpp +++ b/usrc/service/tjc/tjc_constant.cpp @@ -471,7 +471,7 @@ const char* pt2str(uint8_t type) { PT_ENUM(kpt_sys_event_passthrough_finish) PT_ENUM(kpt_sys_event_passthrough_ready) PT_ENUM(kpt_ack) - PT_ENUM(kpt_inputfield_content_change_event) + PT_ENUM(kpt_inputfield_content_change_event1) PT_ENUM(kpt_double_state_button_event) PT_ENUM(kpt_login_request) PT_ENUM(kpt_unlogin_request) diff --git a/usrc/service/tjc/tjc_constant.hpp b/usrc/service/tjc/tjc_constant.hpp index d0b7c31..5a7d366 100644 --- a/usrc/service/tjc/tjc_constant.hpp +++ b/usrc/service/tjc/tjc_constant.hpp @@ -63,13 +63,14 @@ typedef enum { /** * @brief 用户消息回执 */ - kpt_ack = 0xAA, - kpt_inputfield_content_change_event = 0xAC, - kpt_double_state_button_event = 0xAD, - kpt_login_request = 0xAE, - kpt_unlogin_request = 0xAF, - kpt_on_keyboard_page_load = 0xB0, // 键盘页面加载 - kpt_on_promopt_page_load = 0xB1, // 弹窗页面加载 + kpt_ack = 0xAA, + kpt_inputfield_content_change_event0 = 0xAB, // 同页面输入框内容变更事件 + kpt_inputfield_content_change_event1 = 0xAC, // 跨页面键盘输入事件 + kpt_double_state_button_event = 0xAD, + kpt_login_request = 0xAE, + kpt_unlogin_request = 0xAF, + kpt_on_keyboard_page_load = 0xB0, // 键盘页面加载 + kpt_on_promopt_page_load = 0xB1, // 弹窗页面加载 } packet_type_t; typedef enum {