generated from hulk/gd32e23x_template_cmake_vscode
new project
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
#include <stdio.h>
|
||||
#include "board_config.h"
|
||||
#include "gd32e23x_usart.h"
|
||||
#include "ultrasonic_analog.h"
|
||||
|
||||
/* ============================================================================
|
||||
* 协议格式说明
|
||||
@@ -52,7 +53,7 @@
|
||||
/** @name 协议帧标识符
|
||||
* @{ */
|
||||
#define PROTOCOL_PACKAGE_HEADER 0xD5 /**< 命令帧包头标识 */
|
||||
#define PROTOCOL_BOARD_TYPE 0x03 /**< 板卡类型标识 */
|
||||
#define PROTOCOL_BOARD_TYPE 0x04 /**< 板卡类型标识 */
|
||||
/** @} */
|
||||
|
||||
/** @name 命令长度限制
|
||||
@@ -82,6 +83,8 @@ static const uint8_t s_report_status_ok[] = { 'o', 'k' }; /**< 成功响应
|
||||
static const uint8_t s_report_status_err[] = { 'e','r','r' }; /**< 错误响应数据 */
|
||||
/** @} */
|
||||
|
||||
extern volatile bool g_ultrasonic_measure_done;
|
||||
|
||||
/* ============================================================================
|
||||
* 公共接口函数
|
||||
* ============================================================================ */
|
||||
@@ -251,20 +254,31 @@ void handle_command(const uint8_t *frame, uint8_t len) {
|
||||
// 仅基础命令,如 M1, M2, M3
|
||||
switch (base_cmd) {
|
||||
case 1u: // M1: enable sensor report
|
||||
send_response(RESP_TYPE_OK, s_report_status_ok, sizeof(s_report_status_ok));
|
||||
return;
|
||||
// g_ultrasonic_measure_done = false;
|
||||
ultrasonic_pwm_out_cycles();
|
||||
gpio_bit_toggle(GPIOA, GPIO_PIN_0);
|
||||
|
||||
while (g_ultrasonic_measure_done)
|
||||
{
|
||||
g_ultrasonic_measure_done = false;
|
||||
send_response(RESP_TYPE_OK, s_report_status_err, sizeof(s_report_status_err));
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
case 2u: // M2: disable sensor report
|
||||
send_response(RESP_TYPE_OK, s_report_status_ok, sizeof(s_report_status_ok));
|
||||
return;
|
||||
|
||||
case 3u:
|
||||
send_response(RESP_TYPE_OK, s_report_status_ok, sizeof(s_report_status_ok));
|
||||
return;
|
||||
// case 3u:
|
||||
//
|
||||
// return;
|
||||
|
||||
case 4u:
|
||||
send_response(RESP_TYPE_OK, s_report_status_ok, sizeof(s_report_status_ok));
|
||||
return;
|
||||
// case 4u:
|
||||
//
|
||||
// return;
|
||||
|
||||
// case 201u: // M201命令
|
||||
// send_response(RESP_TYPE_OK, s_report_status_ok, sizeof(s_report_status_ok));
|
||||
@@ -404,4 +418,3 @@ void command_process(void) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user