Browse Source

fix: 修复strcmp函数

issu01
Zhangwen 4 months ago
parent
commit
3d25f444e7
  1. 4
      .vscode/settings.json
  2. 3
      source/app/main.c
  3. 3
      source/app/task_w600 copy.c
  4. 454
      source/app/task_w600.c
  5. 9
      source/bsp/bsp_WT2605B.c
  6. 6
      source/clib/clib.c

4
.vscode/settings.json

@ -42,6 +42,8 @@
"task_keystatus.h": "c", "task_keystatus.h": "c",
"type.h": "c", "type.h": "c",
"task_smartconfig.h": "c", "task_smartconfig.h": "c",
"uartx.h": "c" "uartx.h": "c",
"uart4.h": "c",
"limits": "c"
} }
} }

3
source/app/main.c

@ -116,6 +116,9 @@ void main(void)
if(1 == s_nos_tick.t1s_heartbeat)//1s if(1 == s_nos_tick.t1s_heartbeat)//1s
{ {
s_nos_tick.t1s_heartbeat = 0;//置0清空 s_nos_tick.t1s_heartbeat = 0;//置0清空
// L0_uart0_sendstr("_s_task_w600_para.serve_ok = ");
// L0_uart0_uchex(_s_task_w600_para.serve_ok);
// L0_uart0_0d0a();
// D_print_heartbeat() // D_print_heartbeat()
// L0_uart0_uc('.'); // L0_uart0_uc('.');
// L0_uart0_sendstr("eeprom test :"); // L0_uart0_sendstr("eeprom test :");

3
source/app/task_w600 copy.c

@ -450,7 +450,8 @@ void L2_task_W600_flow_handle(struct _s_task_W600_Para *s)
else if(1 == s->serve_ok) //等待 else if(1 == s->serve_ok) //等待
{ {
s->send = 0; s->send = 0;
R.app_status = TCP_CONNECTED; // R.app_status = TCP_CONNECTED;
L0_uart0_sendstr("TCP connected\r\n");
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_ST_CIPMODE1,D_Tdelay_1s); L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_ST_CIPMODE1,D_Tdelay_1s);
} }
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT) else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)

454
source/app/task_w600.c

@ -82,6 +82,14 @@ void L3_uart2_wifi_parse(void)
{ {
_s_task_w600_para.serve_ok = 1; _s_task_w600_para.serve_ok = 1;
} }
// else if(Lc_strcmp(wifi_tmp,"CONNECT") == 0 )
// {
// _s_task_w600_para.serve_ok = 1;
// }
// else if(Lc_strcmp(wifi_tmp,"ALREADY CONNECTED") == 0 )
// {
// _s_task_w600_para.serve_ok = 1;
// }
else if(Lc_strcmp(wifi_tmp,">") == 0) else if(Lc_strcmp(wifi_tmp,">") == 0)
{ {
_s_task_w600_para.st_cip_ok = 1; _s_task_w600_para.st_cip_ok = 1;
@ -286,229 +294,229 @@ void L2_task_W600_flow_handle(struct _s_task_W600_Para *s)
/********************s->mode = W600_AP(按键进入)****************************** */ /********************s->mode = W600_AP(按键进入)****************************** */
TTSS_Task_step(TTSS_TASK_GM35_FLOW_ST_SERVE) // TTSS_Task_step(TTSS_TASK_GM35_FLOW_ST_SERVE)
if(s->send == 0) // if(s->send == 0)
{//发送 // {//发送
L3_gm35_send_str(AT_INS_AP_SERVER_CLOSE); //关闭服务器 // L3_gm35_send_str(AT_INS_AP_SERVER_CLOSE); //关闭服务器
s->ins_ok = 0; // s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
s->send = 1; // s->send = 1;
} // }
else if(s->st_error) // else if(s->st_error)
{ // {
s->send = 0; // s->send = 0;
s->st_error = 0; // s->st_error = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_ST_CIPMODE0,D_Tdelay_300ms); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_ST_CIPMODE0,D_Tdelay_300ms);
} // }
else if((s->serve_ok == 1)|| (s->ins_ok == 1)) //等待 // else if((s->serve_ok == 1)|| (s->ins_ok == 1)) //等待
{ // {
s->send = 0; // s->send = 0;
s->serve_ok = 0; // s->serve_ok = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_ST_CIPMODE0,D_Tdelay_300ms); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_ST_CIPMODE0,D_Tdelay_300ms);
} // }
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT) // else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
{//超时重发 // {//超时重发
s->send = 0; // s->send = 0;
} // }
TTSS_Task_step(TTSS_TASK_GM35_FLOW_ST_CIPMODE0) // TTSS_Task_step(TTSS_TASK_GM35_FLOW_ST_CIPMODE0)
if(s->send == 0) // if(s->send == 0)
{//发送 // {//发送
L3_gm35_send_str(AT_INS_ST_CIPMODE0); // L3_gm35_send_str(AT_INS_ST_CIPMODE0);
s->ins_ok = 0; // s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
s->send = 1; // s->send = 1;
} // }
else if(1 == s->ins_ok) //等待(等待过程中,进入AP模式) // else if(1 == s->ins_ok) //等待(等待过程中,进入AP模式)
{ // {
s->send = 0; // s->send = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP,D_Tdelay_300ms); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP,D_Tdelay_300ms);
} // }
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT) // else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
{//超时重发(超时,设置单连接模式) // {//超时重发(超时,设置单连接模式)
s->send = 0; // s->send = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_CIPMUX0,D_Tdelay_300ms); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_CIPMUX0,D_Tdelay_300ms);
} // }
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_CIPMUX0) // TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_CIPMUX0)
if(s->send == 0) // if(s->send == 0)
{//发送 // {//发送
L3_gm35_send_str(AT_INS_ST_CIPMUX0); // L3_gm35_send_str(AT_INS_ST_CIPMUX0);
s->ins_ok = 0; // s->ins_ok = 0;
s->st_wifi_ok = 0; // s->st_wifi_ok = 0;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
s->send = 1; // s->send = 1;
} // }
else if(1 == s->ins_ok) //等待 // else if(1 == s->ins_ok) //等待
{ // {
s->send = 0; // s->send = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_ST_CIPMODE0,D_Tdelay_300ms); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_ST_CIPMODE0,D_Tdelay_300ms);
} // }
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT) // else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
{//超时重发 // {//超时重发
s->send = 0; // s->send = 0;
} // }
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP) // TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP)
if(s->send == 0) // if(s->send == 0)
{//发送 // {//发送
L3_gm35_send_str(AT_INS_AP); // L3_gm35_send_str(AT_INS_AP);
s->ins_ok = 0; // s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
s->send = 1; // s->send = 1;
} // }
else if(1 == s->ins_ok) //等待 // else if(1 == s->ins_ok) //等待
{ // {
s->send = 0; // s->send = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_WIFI,D_Tdelay_300ms); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_WIFI,D_Tdelay_300ms);
} // }
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT) // else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
{//超时重发 // {//超时重发
s->send = 0; // s->send = 0;
} // }
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_WIFI) // TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_WIFI)
if(s->send == 0) // if(s->send == 0)
{//发送 // {//发送
L3_gm35_send_str(AT_INS_AP_WIFI); // L3_gm35_send_str(AT_INS_AP_WIFI);
s->ins_ok = 0; // s->ins_ok = 0;
s->st_error = 0; // s->st_error = 0;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
s->send = 1; // s->send = 1;
} // }
else if((1 == s->ins_ok)||(1 == s->st_error)) //等待 // else if((1 == s->ins_ok)||(1 == s->st_error)) //等待
{ // {
s->send = 0; // s->send = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_CIPMUX1,D_Tdelay_300ms); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_CIPMUX1,D_Tdelay_300ms);
} // }
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT) // else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
{//超时重发 // {//超时重发
s->send = 0; // s->send = 0;
} // }
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_CIPMUX1) // TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_CIPMUX1)
if(s->send == 0) // if(s->send == 0)
{//发送 // {//发送
L3_gm35_send_str(AT_INS_AP_CIPMUX1); // L3_gm35_send_str(AT_INS_AP_CIPMUX1);
s->ins_ok = 0; // s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
s->send = 1; // s->send = 1;
} // }
else if(1 == s->ins_ok) //等待 // else if(1 == s->ins_ok) //等待
{ // {
s->send = 0; // s->send = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_SERVER,D_Tdelay_300ms); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_SERVER,D_Tdelay_300ms);
} // }
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT) // else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
{//超时重发 // {//超时重发
s->send = 0; // s->send = 0;
} // }
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_SERVER) // TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_SERVER)
if(s->send == 0) // if(s->send == 0)
{//发送 // {//发送
L3_gm35_send_str(AT_INS_AP_SERVER); // L3_gm35_send_str(AT_INS_AP_SERVER);
s->ins_ok = 0; // s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
s->send = 1; // s->send = 1;
} // }
else if(1 == s->ins_ok) //等待 // else if(1 == s->ins_ok) //等待
{ // {
s->send = 0; // s->send = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_TCP_TIME,D_Tdelay_300ms); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_TCP_TIME,D_Tdelay_300ms);
} // }
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT) // else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
{//超时重发 // {//超时重发
s->send = 0; // s->send = 0;
} // }
TTSS_Task_step(TTSS_TASK_GM35_FLOW_TCP_TIME) // TTSS_Task_step(TTSS_TASK_GM35_FLOW_TCP_TIME)
if(s->send == 0) // if(s->send == 0)
{//发送 // {//发送
L3_gm35_send_str(AT_INS_AP_TCP_TIME); // L3_gm35_send_str(AT_INS_AP_TCP_TIME);
// LED2 = 0; // // LED2 = 0;
s->ins_ok = 0; // s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
s->send = 1; // s->send = 1;
} // }
else if(1 == s->ins_ok) //等待 // else if(1 == s->ins_ok) //等待
{ // {
s->send = 0; // s->send = 0;
s->ap_tcp_ok = 0; // s->ap_tcp_ok = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_TCP_CONN_WAIT,D_Tdelay_300ms); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_TCP_CONN_WAIT,D_Tdelay_300ms);
} // }
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT) // else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
{//超时重发 // {//超时重发
s->send = 0; // s->send = 0;
} // }
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_TCP_CONN_WAIT) //等待TCP连接 // TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_TCP_CONN_WAIT) //等待TCP连接
if(1 == s->ap_tcp_ok) // if(1 == s->ap_tcp_ok)
{ // {
s->ap_conn_ok = 0; // s->ap_conn_ok = 0;
s->ap_tcp_ok = 0; // s->ap_tcp_ok = 0;
s->ap_rec_ok = 0; // s->ap_rec_ok = 0;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_WIFI_DATA_STA_WAIT,0); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_WIFI_DATA_STA_WAIT,0);
} // }
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_WIFI_DATA_STA_WAIT) // TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_WIFI_DATA_STA_WAIT)
if(1 == s->ap_rec_ok)//收到正确的数据才会ok=1 // if(1 == s->ap_rec_ok)//收到正确的数据才会ok=1
{//ok回复#ok$\r\n // {//ok回复#ok$\r\n
s->ap_rec_ok = 0; // s->ap_rec_ok = 0;
s->rev = 1; // s->rev = 1;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
//L0_uart0_sendstr("ap config ok"); // //L0_uart0_sendstr("ap config ok");
//L3_gm35_send_str(AT_INS_AP_SEND);//进入发送模式 // //L3_gm35_send_str(AT_INS_AP_SEND);//进入发送模式
//L2_task_go(TTSS_TASK_MODE_TRAN); // //L2_task_go(TTSS_TASK_MODE_TRAN);
} // }
else if(1 == s->ap_conn_ok) // else if(1 == s->ap_conn_ok)
{ // {
s->ap_conn_ok = 0; // s->ap_conn_ok = 0;
s->ap_tcp_ok = 0; // s->ap_tcp_ok = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_CIPMUX1,D_Tdelay_300ms); // L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_CIPMUX1,D_Tdelay_300ms);
} // }
else if((s_nos_tick.t_1s - s->ins_stmp > 3) && (s->rev == 1)) // else if((s_nos_tick.t_1s - s->ins_stmp > 3) && (s->rev == 1))
{//超时重发 // {//超时重发
s->ap_data_ok = 0; // s->ap_data_ok = 0;
s->rev= 0; // s->rev= 0;
L3_gm35_send_str(AT_INS_AP_SEND); // L3_gm35_send_str(AT_INS_AP_SEND);
L2_task_go_Tdelay(TTSS_TASK_MODE_TRAN,D_Tdelay_100ms); // L2_task_go_Tdelay(TTSS_TASK_MODE_TRAN,D_Tdelay_100ms);
} // }
TTSS_Task_step(TTSS_TASK_MODE_TRAN) // TTSS_Task_step(TTSS_TASK_MODE_TRAN)
if(s->send == 0) // if(s->send == 0)
{//发送 // {//发送
L3_gm35_send_str("#OK$\r\n"); // L3_gm35_send_str("#OK$\r\n");
// LED2 = 1; // // LED2 = 1;
s->ap_rec_ok = 0; // s->ap_rec_ok = 0;
s->ins_ok = 0; // s->ins_ok = 0;
s->send = 1; // s->send = 1;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
} // }
else if(1 == s->ap_data_ok) //等待//此处进入ins_ok,不进入send_ok,因为之前有一个no change OK,在进入AP关闭服务器那里 // else if(1 == s->ap_data_ok) //等待//此处进入ins_ok,不进入send_ok,因为之前有一个no change OK,在进入AP关闭服务器那里
{ // {
s->send = 0; // s->send = 0;
s->ap_tcp_ok = 0; // s->ap_tcp_ok = 0;
L2_task_go_Tdelay(TTSS_TASK_MODE_SERVER_CLOSE,D_Tdelay_100ms); // L2_task_go_Tdelay(TTSS_TASK_MODE_SERVER_CLOSE,D_Tdelay_100ms);
} // }
TTSS_Task_step(TTSS_TASK_MODE_SERVER_CLOSE) // TTSS_Task_step(TTSS_TASK_MODE_SERVER_CLOSE)
if(s->send == 0) // if(s->send == 0)
{//发送 // {//发送
L3_gm35_send_str(AT_INS_AP_SERVER_CLOSE); // L3_gm35_send_str(AT_INS_AP_SERVER_CLOSE);
s->ins_ok = 0; // s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s; // s->ins_stmp = s_nos_tick.t_1s;
s->send = 1; // s->send = 1;
} // }
else if(1 == s->ins_ok) //等待 // else if(1 == s->ins_ok) //等待
{ // {
s->send = 0; // s->send = 0;
// LED1 = 1; // // LED1 = 1;
// LED2 = 1; // // LED2 = 1;
L3_task_W600_flow_init(W600_ST); // L3_task_W600_flow_init(W600_ST);
} // }
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT) // else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
{//超时重发 // {//超时重发
s->send = 0; // s->send = 0;
} // }
TTSS_Task_end(); TTSS_Task_end();
} }

9
source/bsp/bsp_WT2605B.c

@ -24,17 +24,18 @@ void L2_WT2605B_init()
{ {
D_stdIO_P0(BITN0); D_stdIO_P0(BITN0);
D_stdIO_P0(BITN1); D_stdIO_P0(BITN1);
// 模块电源控制 //电源控制引脚
D_stdIO_P0(BITN5); D_HighI_P0(BITN5);
L2_WT2605B_PWRON();
} }
void L2_WT2605B_PWRON() void L2_WT2605B_PWRON()
{ {
D_P05_OFF(); D_P05_ON();
} }
void L2_WT2605B_PWROFF() void L2_WT2605B_PWROFF()
{ {
D_P05_ON(); D_P05_OFF();
} }
void L2_WT2605B_Broadcast(TS_SPEECH_AUDIO *music) void L2_WT2605B_Broadcast(TS_SPEECH_AUDIO *music)

6
source/clib/clib.c

@ -17,7 +17,11 @@
U8 Lc_strcmp(U8 *s1,U8 *s2) U8 Lc_strcmp(U8 *s1,U8 *s2)
{ {
while(*s1 != 0 && *s2 != 0 && *s1++ == *s2++); while(*s1 != 0 && *s2 != 0 && *s1 == *s2)
{
s1++;
s2++;
}
return *s1 - *s2; return *s1 - *s2;
} }
U8 Lc_strStartsWith(U8 *s1,U8 *s2) U8 Lc_strStartsWith(U8 *s1,U8 *s2)

Loading…
Cancel
Save