improve esp8266 driver for multi module support

This commit is contained in:
mculover666
2020-08-11 19:30:18 +08:00
parent f5114d7dbf
commit 78c8876dba
2 changed files with 16 additions and 16 deletions

View File

@@ -42,13 +42,13 @@ static int esp8266_net_mode_set(esp8266_net_mode_t mode)
at_echo_t echo; at_echo_t echo;
switch (mode) { switch (mode) {
case SAL_NET_MODE_STA: case ESP8266_NET_MODE_STA:
cmd = "AT+CWMODE=1\r\n"; cmd = "AT+CWMODE=1\r\n";
break; break;
case SAL_NET_MODE_AP: case ESP8266_NET_MODE_AP:
cmd = "AT+CWMODE=2\r\n"; cmd = "AT+CWMODE=2\r\n";
break; break;
case SAL_NET_MODE_STA_AP: case ESP8266_NET_MODE_STA_AP:
cmd = "AT+CWMODE=3\r\n"; cmd = "AT+CWMODE=3\r\n";
break; break;
default: default:
@@ -72,7 +72,7 @@ static int esp8266_send_mode_set(esp8266_send_mode_t mode)
tos_at_echo_create(&echo, NULL, 0, NULL); tos_at_echo_create(&echo, NULL, 0, NULL);
while (try++ < 10) { while (try++ < 10) {
tos_at_cmd_exec(&echo, 1000, "AT+CIPMODE=%d\r\n", mode == SAL_SEND_MODE_NORMAL ? 0 : 1); tos_at_cmd_exec(&echo, 1000, "AT+CIPMODE=%d\r\n", mode == ESP8266_SEND_MODE_NORMAL ? 0 : 1);
if (echo.status == AT_ECHO_STATUS_OK) { if (echo.status == AT_ECHO_STATUS_OK) {
return 0; return 0;
} }
@@ -87,7 +87,7 @@ static int esp8266_multilink_set(esp8266_multilink_state_t state)
tos_at_echo_create(&echo, NULL, 0, "link is builded"); tos_at_echo_create(&echo, NULL, 0, "link is builded");
while (try++ < 10) { while (try++ < 10) {
tos_at_cmd_exec(&echo, 500, "AT+CIPMUX=%d\r\n", state == SAL_MULTILINK_STATE_ENABLE ? 1 : 0); tos_at_cmd_exec(&echo, 500, "AT+CIPMUX=%d\r\n", state == ESP8266_MULTILINK_STATE_ENABLE ? 1 : 0);
if (echo.status == AT_ECHO_STATUS_OK || echo.status == AT_ECHO_STATUS_EXPECT) { if (echo.status == AT_ECHO_STATUS_OK || echo.status == AT_ECHO_STATUS_EXPECT) {
return 0; return 0;
} }
@@ -127,7 +127,7 @@ static int esp8266_reconnect_init(void)
return -1; return -1;
} }
#else #else
if (esp8266_multilink_set(SAL_MULTILINK_STATE_ENABLE) != 0) { if (esp8266_multilink_set(ESP8266_MULTILINK_STATE_ENABLE) != 0) {
printf("esp8266 multilink set FAILED\n"); printf("esp8266 multilink set FAILED\n");
return -1; return -1;
} }
@@ -363,12 +363,12 @@ static int esp8266_init(void)
return -1; return -1;
} }
if (esp8266_net_mode_set(SAL_NET_MODE_STA) != 0) { if (esp8266_net_mode_set(ESP8266_NET_MODE_STA) != 0) {
printf("esp8266 net mode set FAILED\n"); printf("esp8266 net mode set FAILED\n");
return -1; return -1;
} }
if (esp8266_send_mode_set(SAL_SEND_MODE_NORMAL) != 0) { if (esp8266_send_mode_set(ESP8266_SEND_MODE_NORMAL) != 0) {
printf("esp8266 send mode set FAILED\n"); printf("esp8266 send mode set FAILED\n");
return -1; return -1;
} }
@@ -379,7 +379,7 @@ static int esp8266_init(void)
return -1; return -1;
} }
#else #else
if (esp8266_multilink_set(SAL_MULTILINK_STATE_ENABLE) != 0) { if (esp8266_multilink_set(ESP8266_MULTILINK_STATE_ENABLE) != 0) {
printf("esp8266 multilink set FAILED\n"); printf("esp8266 multilink set FAILED\n");
return -1; return -1;
} }

View File

@@ -21,19 +21,19 @@
#include "tos_hal.h" #include "tos_hal.h"
typedef enum esp8266_net_mode { typedef enum esp8266_net_mode {
SAL_NET_MODE_STA, ESP8266_NET_MODE_STA,
SAL_NET_MODE_AP, ESP8266_NET_MODE_AP,
SAL_NET_MODE_STA_AP, ESP8266_NET_MODE_STA_AP,
} esp8266_net_mode_t ; } esp8266_net_mode_t ;
typedef enum esp8266_send_mode { typedef enum esp8266_send_mode {
SAL_SEND_MODE_NORMAL, ESP8266_SEND_MODE_NORMAL,
SAL_SEND_MODE_TRANSPARENT, ESP8266_SEND_MODE_TRANSPARENT,
} esp8266_send_mode_t; } esp8266_send_mode_t;
typedef enum esp8266_multilink_state { typedef enum esp8266_multilink_state {
SAL_MULTILINK_STATE_ENABLE, ESP8266_MULTILINK_STATE_ENABLE,
SAL_MULTILINK_STATE_DISABLE, ESP8266_MULTILINK_STATE_DISABLE,
} esp8266_multilink_state_t; } esp8266_multilink_state_t;
int esp8266_sal_init(hal_uart_port_t uart_port); int esp8266_sal_init(hal_uart_port_t uart_port);