Browse Source

update

master
zhaohe 11 months ago
parent
commit
8a578b8279
  1. 3
      .vscode/settings.json
  2. 59
      app/src/acid_dispenser_ble_slave_main.c
  3. 4
      app/src/app_service/light_ctrl.c
  4. 23
      app/src/ble_data_processer_utils.c
  5. 2
      app_protocols

3
.vscode/settings.json

@ -234,7 +234,8 @@
"zapp_core.h": "c",
"hand_acid_mode.h": "c",
"zapp_gstate.h": "c",
"errorcode.h": "c"
"errorcode.h": "c",
"keyid.h": "c"
},
"files.encoding": "gbk"
}

59
app/src/acid_dispenser_ble_slave_main.c

@ -20,10 +20,10 @@
#include "app_service/light_ctrl.h"
#include "app_service/zkey_driver.h"
// others
#include "app_basic_service/basic/keyid.h"
#include "ble_data_processer_utils.h"
#include "nrf_fstorage.h"
#include "nrf_fstorage_sd.h"
/***********************************************************************************************************************
* GLOBAL *
***********************************************************************************************************************/
@ -58,7 +58,7 @@ void one_conduction_process_rx_packet(uint8_t* rx, int len) {
return;
}
ZLOGI("rx cmd:%d index:%d paralen:%d", cmd, rxheader->frameIndex, len - BLE_THROUGH_PACKET_BASE_SIZE());
NRF_LOG_HEXDUMP_INFO(rx, len);
// NRF_LOG_HEXDUMP_INFO(rx, len);
if (kzble_cmd_reset == cmd) {
NVIC_SystemReset();
@ -156,22 +156,31 @@ void process_online_workstate(app_event_t* event, uint16_t event_size) { //
}
if (zappcore_cur_state_haspassed_ms() > 3000 && time_since_usr_last_operation_ms() > 3000) {
zappcore_change_state(kstate_online_standy);
if (!zapp_get_gstate()->work_state) zappcore_change_state(kstate_online_standy);
return;
}
switch (eventType) {
case kappevent_key_pressed:
ZLOGI("send key pressed");
break;
case kappevent_key_pressed_double:
ZLOGI("send key pressed double");
break;
case kappevent_key_long_pressed:
ZLOGI("send key long pressed");
break;
default:
break;
// hand_acid_remoter_kevent_add_liquid = 0, //
// hand_acid_remoter_kevent_change_next_mode = 1, //
// hand_acid_remoter_kevent_reflux = 2, //
// hand_acid_remoter_kevent_preFilling = 3, //
if (eventType == kappevent_key_pressed || eventType == kappevent_key_pressed_double || eventType == kappevent_key_long_pressed) {
int keyid = 0;
keyid = event->val.keyid;
if (keyid == keyid_addliquid) {
if (eventType == kappevent_key_pressed) {
send_report_key_event(hand_acid_remoter_kevent_add_liquid);
} else if (eventType == kappevent_key_long_pressed) {
send_report_key_event(hand_acid_remoter_kevent_change_next_mode);
}
} else if (keyid == keyid_reflux) {
if (eventType == kappevent_key_pressed) {
send_report_key_event(hand_acid_remoter_kevent_reflux);
} else if (eventType == kappevent_key_pressed_double) {
send_report_key_event(hand_acid_remoter_kevent_preFilling);
}
}
return;
}
}
void process_online_standy(app_event_t* event, uint16_t event_size) { //
@ -205,6 +214,25 @@ void process_online_standy(app_event_t* event, uint16_t event_size) { //
default:
break;
}
if (eventType == kappevent_key_pressed || eventType == kappevent_key_pressed_double || eventType == kappevent_key_long_pressed) {
int keyid = 0;
keyid = event->val.keyid;
if (keyid == keyid_addliquid) {
if (eventType == kappevent_key_pressed) {
send_report_key_event(hand_acid_remoter_kevent_add_liquid);
} else if (eventType == kappevent_key_long_pressed) {
send_report_key_event(hand_acid_remoter_kevent_change_next_mode);
}
} else if (keyid == keyid_reflux) {
if (eventType == kappevent_key_pressed) {
send_report_key_event(hand_acid_remoter_kevent_reflux);
} else if (eventType == kappevent_key_pressed_double) {
send_report_key_event(hand_acid_remoter_kevent_preFilling);
}
}
return;
}
}
void pre_process_state(app_event_t* event, uint16_t event_size) {
@ -279,6 +307,7 @@ void acid_dispenser_ble_slave_main() {
ZLOG_FLUSH();
board_init();
zble_proto_utils_init(kzble_slave);
zappcore_reg_event_listener(on_zapp_ebus_event);
zble_module_reglistener(on_zble_event);

4
app/src/app_service/light_ctrl.c

@ -45,7 +45,7 @@ static void light_tmr_cb(void* p_context) {
if (!zapp_get_gstate()->work_state) {
if (zapp_get_gstate()->hand_acid_mode == khand_acid_m_jog_mode) {
nrf_gpio_set_rgb(0, 0, 1);
} else if (zapp_get_gstate()->hand_acid_mode == khand_acid_m_jog_mode) {
} else if (zapp_get_gstate()->hand_acid_mode == khand_acid_m_continuous_mode) {
nrf_gpio_set_rgb(0, 1, 0);
} else {
nrf_gpio_set_rgb(0, 1, 1);
@ -53,7 +53,7 @@ static void light_tmr_cb(void* p_context) {
} else {
if (zapp_get_gstate()->hand_acid_mode == khand_acid_m_jog_mode) {
nrf_gpio_set_rgb(0, 0, laststate);
} else if (zapp_get_gstate()->hand_acid_mode == khand_acid_m_jog_mode) {
} else if (zapp_get_gstate()->hand_acid_mode == khand_acid_m_continuous_mode) {
nrf_gpio_set_rgb(0, laststate, 0);
} else {
nrf_gpio_set_rgb(0, laststate, laststate);

23
app/src/ble_data_processer_utils.c

@ -4,20 +4,22 @@
static uint8_t _bletxbuf[BLE_MSG_BUF_SIZE];
static uint8_t blereportbuf[BLE_MSG_BUF_SIZE];
static zble_proto_packet_t* txpacket = (zble_proto_packet_t*)_bletxbuf;
static int index;
static zble_proto_packet_t* txpacket = (zble_proto_packet_t*)_bletxbuf;
static zble_proto_packet_t* reportpacket = (zble_proto_packet_t*)_bletxbuf;
static int index;
void bletxbuf_clear() { memset(_bletxbuf, 0, BLE_MSG_BUF_SIZE); }
void send_error_receipt(zble_proto_packet_t* rxpacket, int32_t errorcode) {
bletxbuf_clear();
zble_proto_utils_create_error_receipt(txpacket, rxpacket, errorcode);
zdatachannel_data_send2((uint8_t*)txpacket, (uint16_t) txpacket->packetlen);
zdatachannel_data_send2((uint8_t*)txpacket, (uint16_t)txpacket->packetlen);
}
void send_success_receipt(zble_proto_packet_t* rxpacket, uint8_t* data, int32_t len) {
bletxbuf_clear();
zble_proto_utils_create_receipt(txpacket, rxpacket, data, len);
zdatachannel_data_send2((uint8_t*)txpacket, (uint16_t) txpacket->packetlen);
zdatachannel_data_send2((uint8_t*)txpacket, (uint16_t)txpacket->packetlen);
}
void send_read_version_receipt(zble_proto_packet_t* rxpacket, int32_t firmware_version, int32_t blestack_version, int32_t bootloader_version,
@ -31,18 +33,21 @@ void send_read_version_receipt(zble_proto_packet_t* rxpacket, int32_t firmware_v
zble_proto_utils_create_receipt(txpacket, rxpacket, (uint8_t*)&version, sizeof(version));
zdatachannel_data_send2((uint8_t*)txpacket, (uint16_t)txpacket->packetlen);
}
/***********************************************************************************************************************
* REPORT *
***********************************************************************************************************************/
void send_report_heart(uint8_t power, uint8_t reset_flag, uint8_t connected_flag) {
bletxbuf_clear();
zble_heart_t heart;
heart.connected_flag = connected_flag;
heart.reset_flag = reset_flag;
heart.power = power;
zble_proto_utils_create_report(txpacket, kzble_report_heart, index++, (uint8_t*)&heart, sizeof(heart));
zdatachannel_data_send2((uint8_t*)txpacket, (uint16_t)txpacket->packetlen);
zble_proto_utils_create_report(reportpacket, index++, kzble_report_heart, (uint8_t*)&heart, sizeof(heart));
zdatachannel_data_send2((uint8_t*)reportpacket, (uint16_t)reportpacket->packetlen);
}
void send_report_key_event(hand_acid_remoter_key_event_t event) {
bletxbuf_clear();
int32_t keyevent;
zble_proto_utils_create_report(txpacket, 0, kzble_app_report_key_event, (uint8_t*)&keyevent, sizeof(keyevent));
zdatachannel_data_send2((uint8_t*)txpacket, (uint16_t)txpacket->packetlen);
int32_t event32 = event;
zble_proto_utils_create_report(reportpacket, index++, kzble_app_report_key_event, (uint8_t*)&event32, sizeof(event32));
zdatachannel_data_send2((uint8_t*)reportpacket, (uint16_t)reportpacket->packetlen);
}

2
app_protocols

@ -1 +1 @@
Subproject commit 1be600cfcc00a33264e0a8344acfd22601372236
Subproject commit 5f6308f9929809ffe5481b03d32488334f33c0e9
Loading…
Cancel
Save