V1.0
This commit is contained in:
@@ -0,0 +1,114 @@
|
||||
/*!
|
||||
* \file shell_handler.c
|
||||
*
|
||||
* \brief Target shell handler implementation
|
||||
*
|
||||
* \copyright Revised BSD License, see section \ref LICENSE.
|
||||
*
|
||||
* \code
|
||||
*
|
||||
* _ __ _ ________ _
|
||||
* | |/ /(_)___ / ____/ /_ (_)___
|
||||
* | // / __ \/ / / __ \/ / __ \
|
||||
* / |/ / / / / /___/ / / / / /_/ /
|
||||
* /_/|_/_/_/ /_/\____/_/ /_/_/ .___/
|
||||
* /_/
|
||||
* (C) 2022-2025 XinChip
|
||||
*
|
||||
* \endcode
|
||||
*
|
||||
* \author ( XinChip ) Alex-J
|
||||
*
|
||||
* \author ( XinChip )
|
||||
*/
|
||||
|
||||
/*-----------------------------------------------------------------------------------
|
||||
INCLUDE HEADE FILES
|
||||
------------------------------------------------------------------------------------*/
|
||||
#include "shell_handler.h"
|
||||
|
||||
/*------------------------------------------------------------------------------------
|
||||
Global Variables
|
||||
-------------------------------------------------------------------------------------*/
|
||||
uint8_t XC_Cmd[XC_CMD_SIZE] = { 0 };
|
||||
|
||||
BLE_Mac_Addr_t Mac_Addr;
|
||||
|
||||
/*------------------------------------------------------------------------------------
|
||||
Functions
|
||||
-------------------------------------------------------------------------------------*/
|
||||
/**
|
||||
****************************************************************************************
|
||||
* @brief
|
||||
*
|
||||
* @param[in]
|
||||
* @param[in]
|
||||
*
|
||||
* @return[out]
|
||||
*
|
||||
****************************************************************************************
|
||||
*/
|
||||
eXC_Cmd_State xc_test_handler(eCMD_Type opt, int srgc, char *srgv[])
|
||||
{
|
||||
eXC_Cmd_State ret = XC_CMD_ERROR;
|
||||
|
||||
switch(opt) {
|
||||
case QUERY_CMD: {
|
||||
ret = XC_CMD_SUCCESS;
|
||||
snprintf((char *)XC_Cmd, XC_CMD_SIZE, "\r\n%s\r\n", XC_OK);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/**
|
||||
****************************************************************************************
|
||||
* @brief
|
||||
*
|
||||
* @param[in]
|
||||
* @param[in]
|
||||
*
|
||||
* @return[out]
|
||||
*
|
||||
****************************************************************************************
|
||||
*/
|
||||
eXC_Cmd_State xc_ble_mac_addr_handler(eCMD_Type opt, int srgc, char *srgv[])
|
||||
{
|
||||
eXC_Cmd_State ret = XC_CMD_ERROR;
|
||||
|
||||
switch(opt) {
|
||||
case QUERY_CMD: {
|
||||
ret = XC_CMD_SUCCESS;
|
||||
snprintf((char *)XC_Cmd, XC_CMD_SIZE, "\r\n%s: %02x:%02x:%02x:%02x:%02x:%02x\r\nOK\r\n",
|
||||
XC_CMD_BLE_MAC, Mac_Addr.byte0, Mac_Addr.byte1, Mac_Addr.byte2,
|
||||
Mac_Addr.byte3, Mac_Addr.byte4, Mac_Addr.byte5);
|
||||
}
|
||||
break;
|
||||
|
||||
case SET_CMD: {
|
||||
if(srgc < 1) break;
|
||||
Mac_Addr.byte0 = atoi(srgv[0]);
|
||||
Mac_Addr.byte1 = atoi(srgv[1]);
|
||||
Mac_Addr.byte2 = atoi(srgv[2]);
|
||||
Mac_Addr.byte3 = atoi(srgv[3]);
|
||||
Mac_Addr.byte4 = atoi(srgv[4]);
|
||||
Mac_Addr.byte5 = atoi(srgv[5]);
|
||||
|
||||
ret = XC_CMD_SUCCESS;
|
||||
snprintf((char *)XC_Cmd, XC_CMD_SIZE, "\r\n%s: %02x:%02x:%02x:%02x:%02x:%02x\r\nOK\r\n",
|
||||
XC_CMD_BLE_MAC, Mac_Addr.byte0, Mac_Addr.byte1, Mac_Addr.byte2,
|
||||
Mac_Addr.byte3, Mac_Addr.byte4, Mac_Addr.byte5);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
Reference in New Issue
Block a user