您好!
我仍然遇到此问题、mutex 断言导致处理器锁定。 详情请见以下链接。
https://e2e.ti.com/support/wireless_connectivity/simplelink_wifi_cc31xx_cc32xx/f/968/t/674363
这并不一致、因为它并不是在运行代码时一直发生、但如果确实发生了这种情况、它似乎是在同一个位置发生的。
配置完成后,它会调用 HandleProvisioningComplete 函数,并打印****星号的第一行,然后锁定断言。
我添加 了 SL_WLAN_PROVISIONING_CMD_STOP、这是能够在没有应用程序的情况下使用 WIFI 进行配置的一部分(根据我阅读的文档)。 您应该在配置完成后调用停止、并且不需要应用程序的响应。
我使用此命令启动配置:
RetVal = sl_WlanProvisioning (provisioningCmd、role_STA、PROVISIONING_INACTUMODE_TIMEOUT、NULL、(uint32_t) sl_WLAN_PROVISIONING_CMD_FLAG_EXTERNAL_CONFIRMATION);
int32_t HandleProvisioningComplete (空)
{
_i16角色;
_i16状态;
int32_t slRetVal;
gStopInProgress = 0;
gIsWlanConnected = 1;
Log_message("[Provisioning]配置应用程序已成功结束\r\n ");
log_message("********* \r\n");
log_message ("设备已配置\r\n);
log_message("********* \r\n");
//完成外部配置后,JK 停止
slRetVal = sl_WlanProvisioning (sl_WLAN_PROVISIONING_CMD_STOP、Role_STA、0、NULL、(uint32_t) sl_WLAN_PROVISIONING_CMD_FLAG_EXTERNAL_CONFIRMATION);
//JK 需要此项吗?
ASSERT_ON_ERROR (slRetVal);
/*将器件设置为 STA 模式*/
状态= SL_WlanSetMode (Role_STA);
if (状态)
{
/*错误设置模式*/
ASSERT_ON_ERROR (状态);
}
/*重置设备*/
//Status = sl_Stop (0);
状态= sl_Stop (sl_stop_timeout);
角色= sl_Start (NULL、NULL、NULL);
//role = sl_Start (NULL、NULL、(P_INIT_CALLBACK) SimpleLinkInitCallback);
if (Role_STA!=角色)
{
/*角色错误*/
ASSERT_ON_ERROR (状态);
}
StartAppelimer (reconnection_established _ timeout_sec);
G_RemoConfig.ProvisionStatus = WifiProvStatus_Provisioned;
EH_SendEventID (Q_ScreenManager、Event_Provisioning_Complete);
返回0;
}
提前感谢您的任何帮助!
Joe K.






