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",
"type.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
{
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()
// L0_uart0_uc('.');
// 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) //等待
{
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);
}
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;
}
// 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)
{
_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(按键进入)****************************** */
TTSS_Task_step(TTSS_TASK_GM35_FLOW_ST_SERVE)
if(s->send == 0)
{//发送
L3_gm35_send_str(AT_INS_AP_SERVER_CLOSE); //关闭服务器
s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s;
s->send = 1;
}
else if(s->st_error)
{
s->send = 0;
s->st_error = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_ST_CIPMODE0,D_Tdelay_300ms);
}
else if((s->serve_ok == 1)|| (s->ins_ok == 1)) //等待
{
s->send = 0;
s->serve_ok = 0;
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)
{//超时重发
s->send = 0;
}
TTSS_Task_step(TTSS_TASK_GM35_FLOW_ST_CIPMODE0)
if(s->send == 0)
{//发送
L3_gm35_send_str(AT_INS_ST_CIPMODE0);
s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s;
s->send = 1;
}
else if(1 == s->ins_ok) //等待(等待过程中,进入AP模式)
{
s->send = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP,D_Tdelay_300ms);
}
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
{//超时重发(超时,设置单连接模式)
s->send = 0;
L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_CIPMUX0,D_Tdelay_300ms);
}
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_CIPMUX0)
if(s->send == 0)
{//发送
L3_gm35_send_str(AT_INS_ST_CIPMUX0);
s->ins_ok = 0;
s->st_wifi_ok = 0;
s->ins_stmp = s_nos_tick.t_1s;
s->send = 1;
}
else if(1 == s->ins_ok) //等待
{
s->send = 0;
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)
{//超时重发
s->send = 0;
}
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP)
if(s->send == 0)
{//发送
L3_gm35_send_str(AT_INS_AP);
s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s;
s->send = 1;
}
else if(1 == s->ins_ok) //等待
{
s->send = 0;
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)
{//超时重发
s->send = 0;
}
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_WIFI)
if(s->send == 0)
{//发送
L3_gm35_send_str(AT_INS_AP_WIFI);
s->ins_ok = 0;
s->st_error = 0;
s->ins_stmp = s_nos_tick.t_1s;
s->send = 1;
}
else if((1 == s->ins_ok)||(1 == s->st_error)) //等待
{
s->send = 0;
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)
{//超时重发
s->send = 0;
}
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_CIPMUX1)
if(s->send == 0)
{//发送
L3_gm35_send_str(AT_INS_AP_CIPMUX1);
s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s;
s->send = 1;
}
else if(1 == s->ins_ok) //等待
{
s->send = 0;
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)
{//超时重发
s->send = 0;
}
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_SERVER)
if(s->send == 0)
{//发送
L3_gm35_send_str(AT_INS_AP_SERVER);
s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s;
s->send = 1;
}
else if(1 == s->ins_ok) //等待
{
s->send = 0;
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)
{//超时重发
s->send = 0;
}
TTSS_Task_step(TTSS_TASK_GM35_FLOW_TCP_TIME)
if(s->send == 0)
{//发送
L3_gm35_send_str(AT_INS_AP_TCP_TIME);
// LED2 = 0;
s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s;
s->send = 1;
}
else if(1 == s->ins_ok) //等待
{
s->send = 0;
s->ap_tcp_ok = 0;
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)
{//超时重发
s->send = 0;
}
TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_TCP_CONN_WAIT) //等待TCP连接
if(1 == s->ap_tcp_ok)
{
s->ap_conn_ok = 0;
s->ap_tcp_ok = 0;
s->ap_rec_ok = 0;
s->ins_stmp = s_nos_tick.t_1s;
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)
if(1 == s->ap_rec_ok)//收到正确的数据才会ok=1
{//ok回复#ok$\r\n
s->ap_rec_ok = 0;
s->rev = 1;
s->ins_stmp = s_nos_tick.t_1s;
//L0_uart0_sendstr("ap config ok");
//L3_gm35_send_str(AT_INS_AP_SEND);//进入发送模式
//L2_task_go(TTSS_TASK_MODE_TRAN);
}
else if(1 == s->ap_conn_ok)
{
s->ap_conn_ok = 0;
s->ap_tcp_ok = 0;
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))
{//超时重发
s->ap_data_ok = 0;
s->rev= 0;
L3_gm35_send_str(AT_INS_AP_SEND);
L2_task_go_Tdelay(TTSS_TASK_MODE_TRAN,D_Tdelay_100ms);
}
TTSS_Task_step(TTSS_TASK_MODE_TRAN)
if(s->send == 0)
{//发送
L3_gm35_send_str("#OK$\r\n");
// LED2 = 1;
s->ap_rec_ok = 0;
s->ins_ok = 0;
s->send = 1;
s->ins_stmp = s_nos_tick.t_1s;
}
else if(1 == s->ap_data_ok) //等待//此处进入ins_ok,不进入send_ok,因为之前有一个no change OK,在进入AP关闭服务器那里
{
s->send = 0;
s->ap_tcp_ok = 0;
L2_task_go_Tdelay(TTSS_TASK_MODE_SERVER_CLOSE,D_Tdelay_100ms);
}
TTSS_Task_step(TTSS_TASK_MODE_SERVER_CLOSE)
if(s->send == 0)
{//发送
L3_gm35_send_str(AT_INS_AP_SERVER_CLOSE);
s->ins_ok = 0;
s->ins_stmp = s_nos_tick.t_1s;
s->send = 1;
}
else if(1 == s->ins_ok) //等待
{
s->send = 0;
// LED1 = 1;
// LED2 = 1;
L3_task_W600_flow_init(W600_ST);
}
else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
{//超时重发
s->send = 0;
}
// TTSS_Task_step(TTSS_TASK_GM35_FLOW_ST_SERVE)
// if(s->send == 0)
// {//发送
// L3_gm35_send_str(AT_INS_AP_SERVER_CLOSE); //关闭服务器
// s->ins_ok = 0;
// s->ins_stmp = s_nos_tick.t_1s;
// s->send = 1;
// }
// else if(s->st_error)
// {
// s->send = 0;
// s->st_error = 0;
// L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_ST_CIPMODE0,D_Tdelay_300ms);
// }
// else if((s->serve_ok == 1)|| (s->ins_ok == 1)) //等待
// {
// s->send = 0;
// s->serve_ok = 0;
// 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)
// {//超时重发
// s->send = 0;
// }
// TTSS_Task_step(TTSS_TASK_GM35_FLOW_ST_CIPMODE0)
// if(s->send == 0)
// {//发送
// L3_gm35_send_str(AT_INS_ST_CIPMODE0);
// s->ins_ok = 0;
// s->ins_stmp = s_nos_tick.t_1s;
// s->send = 1;
// }
// else if(1 == s->ins_ok) //等待(等待过程中,进入AP模式)
// {
// s->send = 0;
// L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP,D_Tdelay_300ms);
// }
// else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
// {//超时重发(超时,设置单连接模式)
// s->send = 0;
// L2_task_go_Tdelay(TTSS_TASK_GM35_FLOW_AP_CIPMUX0,D_Tdelay_300ms);
// }
// TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_CIPMUX0)
// if(s->send == 0)
// {//发送
// L3_gm35_send_str(AT_INS_ST_CIPMUX0);
// s->ins_ok = 0;
// s->st_wifi_ok = 0;
// s->ins_stmp = s_nos_tick.t_1s;
// s->send = 1;
// }
// else if(1 == s->ins_ok) //等待
// {
// s->send = 0;
// 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)
// {//超时重发
// s->send = 0;
// }
// TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP)
// if(s->send == 0)
// {//发送
// L3_gm35_send_str(AT_INS_AP);
// s->ins_ok = 0;
// s->ins_stmp = s_nos_tick.t_1s;
// s->send = 1;
// }
// else if(1 == s->ins_ok) //等待
// {
// s->send = 0;
// 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)
// {//超时重发
// s->send = 0;
// }
// TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_WIFI)
// if(s->send == 0)
// {//发送
// L3_gm35_send_str(AT_INS_AP_WIFI);
// s->ins_ok = 0;
// s->st_error = 0;
// s->ins_stmp = s_nos_tick.t_1s;
// s->send = 1;
// }
// else if((1 == s->ins_ok)||(1 == s->st_error)) //等待
// {
// s->send = 0;
// 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)
// {//超时重发
// s->send = 0;
// }
// TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_CIPMUX1)
// if(s->send == 0)
// {//发送
// L3_gm35_send_str(AT_INS_AP_CIPMUX1);
// s->ins_ok = 0;
// s->ins_stmp = s_nos_tick.t_1s;
// s->send = 1;
// }
// else if(1 == s->ins_ok) //等待
// {
// s->send = 0;
// 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)
// {//超时重发
// s->send = 0;
// }
// TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_SERVER)
// if(s->send == 0)
// {//发送
// L3_gm35_send_str(AT_INS_AP_SERVER);
// s->ins_ok = 0;
// s->ins_stmp = s_nos_tick.t_1s;
// s->send = 1;
// }
// else if(1 == s->ins_ok) //等待
// {
// s->send = 0;
// 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)
// {//超时重发
// s->send = 0;
// }
// TTSS_Task_step(TTSS_TASK_GM35_FLOW_TCP_TIME)
// if(s->send == 0)
// {//发送
// L3_gm35_send_str(AT_INS_AP_TCP_TIME);
// // LED2 = 0;
// s->ins_ok = 0;
// s->ins_stmp = s_nos_tick.t_1s;
// s->send = 1;
// }
// else if(1 == s->ins_ok) //等待
// {
// s->send = 0;
// s->ap_tcp_ok = 0;
// 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)
// {//超时重发
// s->send = 0;
// }
// TTSS_Task_step(TTSS_TASK_GM35_FLOW_AP_TCP_CONN_WAIT) //等待TCP连接
// if(1 == s->ap_tcp_ok)
// {
// s->ap_conn_ok = 0;
// s->ap_tcp_ok = 0;
// s->ap_rec_ok = 0;
// s->ins_stmp = s_nos_tick.t_1s;
// 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)
// if(1 == s->ap_rec_ok)//收到正确的数据才会ok=1
// {//ok回复#ok$\r\n
// s->ap_rec_ok = 0;
// s->rev = 1;
// s->ins_stmp = s_nos_tick.t_1s;
// //L0_uart0_sendstr("ap config ok");
// //L3_gm35_send_str(AT_INS_AP_SEND);//进入发送模式
// //L2_task_go(TTSS_TASK_MODE_TRAN);
// }
// else if(1 == s->ap_conn_ok)
// {
// s->ap_conn_ok = 0;
// s->ap_tcp_ok = 0;
// 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))
// {//超时重发
// s->ap_data_ok = 0;
// s->rev= 0;
// L3_gm35_send_str(AT_INS_AP_SEND);
// L2_task_go_Tdelay(TTSS_TASK_MODE_TRAN,D_Tdelay_100ms);
// }
// TTSS_Task_step(TTSS_TASK_MODE_TRAN)
// if(s->send == 0)
// {//发送
// L3_gm35_send_str("#OK$\r\n");
// // LED2 = 1;
// s->ap_rec_ok = 0;
// s->ins_ok = 0;
// s->send = 1;
// s->ins_stmp = s_nos_tick.t_1s;
// }
// else if(1 == s->ap_data_ok) //等待//此处进入ins_ok,不进入send_ok,因为之前有一个no change OK,在进入AP关闭服务器那里
// {
// s->send = 0;
// s->ap_tcp_ok = 0;
// L2_task_go_Tdelay(TTSS_TASK_MODE_SERVER_CLOSE,D_Tdelay_100ms);
// }
// TTSS_Task_step(TTSS_TASK_MODE_SERVER_CLOSE)
// if(s->send == 0)
// {//发送
// L3_gm35_send_str(AT_INS_AP_SERVER_CLOSE);
// s->ins_ok = 0;
// s->ins_stmp = s_nos_tick.t_1s;
// s->send = 1;
// }
// else if(1 == s->ins_ok) //等待
// {
// s->send = 0;
// // LED1 = 1;
// // LED2 = 1;
// L3_task_W600_flow_init(W600_ST);
// }
// else if(s_nos_tick.t_1s - s->ins_stmp > INS_TIMEOUT)
// {//超时重发
// s->send = 0;
// }
TTSS_Task_end();
}

9
source/bsp/bsp_WT2605B.c

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

6
source/clib/clib.c

@ -17,7 +17,11 @@
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;
}
U8 Lc_strStartsWith(U8 *s1,U8 *s2)

Loading…
Cancel
Save