// #include "custom_utils.h"
-
+#include <string.h>
#include "at_cmd_api.h"
#include "pm_control.h"
#include "custom_utils.h"
return ERRCODE_SUCC;
}
-// 录音相关AT指令实现
+// 产测模式AT指令实现
static uint32_t custom_enter_factory_test_mode(uint8_t *para, uint32_t paraLen, char *strCommonCmd)
{
UNUSED(strCommonCmd);
int ret = ConvertCmdToParam(para, paraLen, argv, &argc);
if (ret != CUSTOM_UTILS_SUCCESS) {
- wstp_print("AUDIO TEST ATCMD Convert Command Failed\n");
+ wstp_print("FACTORY ATCMD Convert Command Failed\n");
return ERRCODE_FAIL;
}
+ // 查询模式:无参数或参数为"?"
+ if (argc == 0 || (argc == 1 && strcmp((char*)argv[0], "?") == 0)) {
+ // 获取产测模式标志
+ uint8_t factory_flag = custom_get_factory_test_flag();
+
+ // 获取runtime中的产测状态
+ uint8_t factory_status = uapi_dev_runtime_get_factory_test_status_flag();
+
+ if (factory_flag != 0 || factory_status != 0) {
+ wstp_print("FACTORY TEST MODE: ENABLED (flag=%d, status=%d)\n", factory_flag, factory_status);
+ } else {
+ wstp_print("FACTORY TEST MODE: DISABLED (flag=%d, status=%d)\n", factory_flag, factory_status);
+ }
+
+ return ERRCODE_SUCC;
+ }
+
+ // 设置模式:需要参数
if (argc != 1) {
- wstp_print("AUDIO TEST ATCMD Set Parameter Failed argc %d\n", argc);
- wstp_print("Usage: AT^AUDIOTEST=cmd\n");
- wstp_print(" cmd: 1=start record, 2=stop record, 3=start play, 4=stop play\n");
+ wstp_print("FACTORY ATCMD Set Parameter Failed argc %d\n", argc);
+ wstp_print("Usage: AT^FACTORY=cmd or AT^FACTORY?\n");
+ wstp_print(" cmd: 0=restore factory, 1-255=set factory test flag\n");
return ERRCODE_FAIL;
}