This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] LAUNCHXL-CC3235SF:STA 模式在 READY Wi-Fi HTTP 服务器代码中不起作用。 只有 AP 模式有效。

Guru**** 2478765 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1422773/launchxl-cc3235sf-sta-mode-does-not-work-in-the-ready-wi-fi-http-server-code-only-ap-mode-works

器件型号:LAUNCHXL-CC3235SF

工具与软件:

大家好、在现成的 WIFI-HTTP 代码中、它可以像 AP 一样正常运行、但当我把它置于 STA 模式时、代码无法正常运行。 我离开下面的代码块。  

void * httpserverThread (void * pvParameters)

mq_attr 属性;
int32_t msgqRetVal;
int32_t retc = 0;
pthread_t spawn_thread =(pthread_t) NULL;
pthread_attr_t pAttrs_spawn;
结构 sched_param priParam;

spi_init();

/* NWP günlüğü*/
MAP_PinTypeUART (PIN_62、PIN_MODE_1);
/*为 UART 输出配置显示模块*/
display_init();

Display = Display_open (Display_Type_、SNLULL);
if (display == NULL){
/*无法打开显示模块*/
while (1);
}

/*使用 CC3x20接口初始化 SlNetSock 层*/
/*我们正在使用优先级5 */
SlNetIF_init (0);
SlNetIF_ADD (SLNETIF_ID_1、"CC32xx"、(const If_Config_*表皮357)&SlNetIfConfigWifi、/* PRIORITY*/ 5);
SlNetSock_init (0);
SlNetUtil_init (0);

/*创建 sl_Task */
pthread_attr_init (&pAttrs_spawn);
priparam.sched_priority = spawn_task_priority;
retc = pthread_attr_setschedparam (&pAttrs_spawn、&priParam);
retc |= pthread_attr_setstacksize (&pAttrs_spawn、TASKSTACKSIZE);
retc |= pthread_attr_setdetachstate (&pAttrs_spawn、pthread_create_detached);

retc = pthread_create (&spawn_thread、&pAttrs_spawn、sl_Task、NULL);

如果(Retc < 0)

/*处理错误*/
Display_printf (display、0、0、"[HTTP 服务器任务]无法创建 SimpleLink 任务");
while (1);
}

Retc = sl_Start (0、0、0);
如果(Retc < 0)

/*处理错误*/
Display_printf (display、0、0、"[HTTP 服务器任务] sl_Start failed");
while (1);
}

/*将设备信息输出到 UART 终端*/
DisplayBanner (application_name、application_version);

Retc = SL_Stop (SL_STOP_TIMEOUT);
如果(Retc < 0)

/*处理错误*/
Display_printf (display、0、0、"[HTTP 服务器任务] sl_Stop failed");
while (1);
}

/*关闭红色 LED */
GPIO_WRITE (CONFIG_GPIO_LED_0、CONFIG_GPIO_LED_OFF);

/*重置机器的状态*/
network_if_ResetMCUStateMachine();

/*启动驱动程序*/
Retc = Network_IF_InitDriver (ROLE_AP);
如果(Retc < 0)

Display_printf (display、0、0、"[HTTP 服务器任务]未能启动 SimpleLink 设备"、retc);
}

/*初始化 http 消息的邮箱*/
ATTR.MQ_maxmsg = 1;/*队列大小*/
attr.mq_msgsize = sizeof (SlNetAppRequest_t*);/*消息的大小*/
httpserverMPuet = mq_open ("httpserver msg q"、O_creat、0、&attr);
if (httpserverQueue == NULL)

display_printf (display、0、0、"[HTTP 服务器任务]无法创建 msg 队列");
while (1);
}

Retc = ConfigureHttpServer();
如果(Retc < 0)

/*处理错误*/
Display_printf (display、0、0、"[HTTP 服务器任务]配置 HTTP 服务器失败");
while (1);
}
initHttpserverDB();

while (1)

SlNetAppRequest_t * netAppRequest;

msgqRetVal = mq_receive (https://server排队、(char *)&netAppRequest、sizeof (SlNetAppRequest_t*)、NULL);
if (msgqRetVal < 0)

Display_printf (display、0、0、"[HTTP 服务器任务]无法从 msg 队列接收元素");
while (1);
}

display_printf (display、0、0、"[HTTP 服务器任务] netapp request received - handle from main context appId =%d、Type =%d、handle =%d"、netAppRequest -> AppId、netAppRequest -> Type、 netAppRequest ->句柄);

display_printf (display、0、0、"[HTTP 服务器任务] Metadata len =%d"、netAppRequest -> requestData。 MetadataLen);

if (((netAppRequest->Type == sl_NETAPP_Request_HTTP_GET)||(netAppRequest->Type == sl_NETAPP_Request_HTTP_delete ))

if (netAppRequest ->类型== SL_NETAPP_Request_HTTP_GET)

Display_printf (display、0、0、"[HTTP 服务器任务] HTTP GET 请求");
}
设计

Display_printf (display、0、0、"[HTTP 服务器任务] HTTP 删除请求");
}

httpGetHandler (netAppRequest);
}
否则为((netAppRequest ->类型== sl_NetApp_Request_HTTP_post)||(netAppRequest ->类型== sl_NetApp_Request_HTTP_Put))

if (netAppRequest->Type == SL_NETAPP_Request_HTTP_post)

display_printf (display、0、0、"[HTTP 服务器任务] HTTP POST 请求");
}
设计

Display_printf (display、0、0、"[HTTP 服务器任务] HTTP PUT request");
}

display_printf (display、0、0、"[HTTP 服务器任务]接收到数据、len =%d、flags=%x"、netAppRequest -> requestData。 PayloadLen、netAppRequest -> requestData。 旗帜);

httpPostHandler (netAppRequest);
}

if (netAppRequest -> requestData)。 MetadataLen > 0)

免费(netAppRequest -> requestData.pMetadata);
}
if (netAppRequest -> requestData)。 PayloadLen > 0)

免费(netAppRequest -> requestData.pPayload);
}

免费(netAppRequest);
}

}

此处 retc = Network_if_InitDriver (ROLE_AP);
我对这项声明的修改如下。 Retc = Network_IF_InitDriver (ROLE_STA);。 当我以这种方式更改它时、没有连接。 我需要更改的其他位置。

/* AP SSID */
#define SSID_NAME"SSID_NAME"
/*安全类型(开放或 WEP 或 WPA_WPA2)*/
#define SECURITY_TYPE SL_WLAN_SEC_TYPE_OPEN
/*安全 AP 的密码*/
#define SECURITY_KEY ""

#define SSID_AP_MODE " "
#define SEC_TYPE_AP_MODE SL_WLAN_SEC_TYPE_OPEN
#define PASSWORD_AP_MODE ""
我在此处输入了要连接的 AP 的 SSID 和密码、但仍然无法成功连接。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我想在这里完成器件的所有设置、其中大部分设置都可以正常工作、但无法在这里将器件设置为 STA 模式。