主题中讨论的其他器件: UNIFLASH
您好!
我有一个板、其中的主机微处理器运行 Web 服务器。 主机处理器通过 SPI 连接到配置为发挥 AP 角色的 CC3120R。
启动时、任何客户端设备(Windows PC、MAC Book、Android 手机、iOS 手机)都能够成功连接到网络并交换数据(通过 HTTPS)。
然后,如果尝试后电路板已经运行了几个小时(即使没有任何客户端连接到同时)非 iOS 客户端仍然能够成功地交互;相反,任何 iOS 客户端会导致模块卡住。
行为如下:Status = sl_Recv (i、&rxBuffer、MAX_BUF_SIZE、0);返回-452、其值应为#define SL_ERROR_BSD_ESECCLOSED (-452L)/* secure layrer 按其他大小关闭、TCP 仍连接 */
所用服务包具有以下组件:NWP 3.10.0.5、MAC 2.0.0.0、PHY 2.2.0.6
模块初始化的代码如下:
uint8_t max_ap_stations = (uint8_t)configAp.maximumAPStations; uint8_t val = SL_WLAN_SEC_TYPE_WPA_WPA2; uint8_t channel = configAp.channel; /* Set general AP parameters */ Status = sl_WlanSetMode(ROLE_AP); if (Status != 0) { syslog(LOG_ERR, "[ERROR] - %d - sl_WlanSetMode ROLE_AP\n", Status); } Status = sl_WlanSet(SL_WLAN_CFG_AP_ID, SL_WLAN_AP_OPT_SSID, strlen(configAp.ssid), (unsigned char*)configAp.ssid); // ssid max 32 char! if (Status != 0) { syslog(LOG_ERR, "[ERROR] - %d - sl_WlanSetMode SL_WLAN_AP_OPT_SSID\n", Status); } Status = sl_WlanSet(SL_WLAN_CFG_AP_ID, SL_WLAN_AP_OPT_CHANNEL, 1, (uint8_t*)(&channel)); if (Status != 0) { syslog(LOG_ERR, "[ERROR] - %d - sl_WlanSetMode SL_WLAN_AP_OPT_CHANNEL\n", Status); } Status = sl_WlanSet(SL_WLAN_CFG_AP_ID, SL_WLAN_AP_OPT_HIDDEN_SSID, 1, (uint8_t*) &configAp.hidden); if (Status != 0) { syslog(LOG_ERR, "[ERROR] - %d - sl_WlanSetMode SL_WLAN_AP_OPT_HIDDEN_SSID\n", Status); } Status = sl_WlanSet(SL_WLAN_CFG_AP_ID, SL_WLAN_AP_OPT_SECURITY_TYPE, 1, (uint8_t*)&val); if (Status != 0) { syslog(LOG_ERR, "[ERROR] - %d - sl_WlanSetMode SL_WLAN_AP_OPT_SECURITY_TYPE\n", Status); } Status = sl_WlanSet(SL_WLAN_CFG_AP_ID, SL_WLAN_AP_OPT_PASSWORD, strlen(configAp.password), (uint8_t*)configAp.password); if (Status != 0) { syslog(LOG_ERR, "[ERROR] - %d - sl_WlanSetMode SL_WLAN_AP_OPT_PASSWORD\n", Status); } Status = sl_WlanSet(SL_WLAN_CFG_AP_ID, SL_WLAN_AP_OPT_MAX_STATIONS, sizeof(max_ap_stations), (uint8_t*)&max_ap_stations); // default: 4
对于 TLS 握手、cc3120颁发的证书是由自定义 CA 连接到由自定义 CA 签名的服务器证书所形成的链。
此错误是否与 iOS 客户端设备中处理 TLS 的某些特定方式有关?
提前感谢。
Br
Lorenzo。