Browse Source

at指令修改网络模式

external_Interrupt
tianjialong 2 years ago
parent
commit
ea38c3d458
  1. 6
      MDK-ARM/LWIP.uvguix.29643
  2. 22
      usersrc/atcmd.c
  3. 3
      usersrc/atcmd.h

6
MDK-ARM/LWIP.uvguix.29643

@ -3705,9 +3705,9 @@
</Doc>
<Doc>
<Name>..\usersrc\atcmd.c</Name>
<ColumnNumber>0</ColumnNumber>
<TopLine>37</TopLine>
<CurrentLine>47</CurrentLine>
<ColumnNumber>5</ColumnNumber>
<TopLine>78</TopLine>
<CurrentLine>110</CurrentLine>
<Folding>1</Folding>
<ContractedFolders></ContractedFolders>
<PaneID>0</PaneID>

22
usersrc/atcmd.c

@ -46,7 +46,7 @@ const AT_cmd_func at_cmd_func[] = {
{AT_CMD_IP, "AT+IP=", at_cmd_ip},
{AT_CMD_GW, "AT+GW=", at_cmd_gw},
{AT_CMD_NETMASK, "AT+NETMASK=", at_cmd_netmask},
{AT_CMD_NETMODULE, "AT+NETMODULE=", NULL},
{AT_CMD_OBTAINING_IP_MODE, "AT+OBTAINING_IP_MODE=", at_cmd_obtaining_ip_mode},
{AT_END, NULL, NULL}};
@ -102,6 +102,26 @@ AT_STATUS at_cmd_netmask(unsigned char *p, unsigned char len)
at_address_cmd_template(config_get()->netmask);
}
AT_STATUS at_cmd_obtaining_ip_mode(unsigned char *p, unsigned char len)
{
if (*p == '?')
{
printf("config obtaining_ip_mode:%d\r\n", config_get()->obtaining_ip_mode);
}
else
{
if (((*p != '0') && (*p != '1')) || (len > 1))
{
printf("AT+ERR\r\n");
return AT_ERR;
}
config_get()->obtaining_ip_mode = *p - 48; /* ascii码字符0十进制为48 */
config_dump_config();
printf("AT+OK\r\n");
}
return AT_SUCCESS;
}
/* 查找指令表中对应的指令 */
unsigned char AT_cmd_search(unsigned char *p, unsigned char len)
{

3
usersrc/atcmd.h

@ -17,7 +17,7 @@ typedef enum
AT_CMD_IP, /* 设置IP */
AT_CMD_GW, /* 设置网关 */
AT_CMD_NETMASK, /* 设置子网掩码 */
AT_CMD_NETMODULE, /* 设置网络模式 */
AT_CMD_OBTAINING_IP_MODE, /* 设置网络模式 */
AT_END
} AT_Cmd;
@ -37,6 +37,7 @@ AT_STATUS at_cmd_test(unsigned char *p, unsigned char len);
AT_STATUS at_cmd_ip(unsigned char *p, unsigned char len);
AT_STATUS at_cmd_gw(unsigned char *p, unsigned char len);
AT_STATUS at_cmd_netmask(unsigned char *p, unsigned char len);
AT_STATUS at_cmd_obtaining_ip_mode(unsigned char *p, unsigned char len);
unsigned char AT_cmd_search(unsigned char *p, unsigned char len);
AT_STATUS at_cmd_parse(unsigned char *p, unsigned char len);
void at_cmd_processer_push_data(uint8_t rxdata);

Loading…
Cancel
Save