1. 添加一个AT指令
a) AT+HELLO,返回+HELLO,WORLD
b) Cp/data/atcop/src/Dsatctab.c, dsat_ext_table全局数组中添加元素:
{ "+HELLO", READ_ONLY,
SPECIAL_NONE, 0, NULL, NULL,
dsatact_exec_hello_cmd, NULL }
c) Cp/data/atcop/inc/Dsatact.h声明函数
dsat_result_enum_typedsatact_exec_hello_cmd
(
dsat_mode_enum_type mode, /* AT command mode: */
const dsati_cmd_type *parse_table, /* Ptr to cmd in parse table */
const tokens_struct_type *tok_ptr, /* Command tokens from parser */
dsm_item_type *res_buff_ptr /* Place to put response */
);
d) Cp/data/atcop/src/Dsatact.c中实现函数dsatact_exec_hello_cmd的定义
2. AT指令框架
at_cmd_table为AT指令总表
process_at_cmd_line函数对AT指令总表进行遍历,符合时调用其处理函数
dsat_process_sio_command函数应该AT口数是据的总入口,它通过process_at_cmd_mode调用了process_at_cmd_line