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.

[参考译文] CC3200-LAUNCHXL:sock 事件处理程序:[sock event]- Unexpected Event [20x],在 HTTPS GET 期间

Guru**** 2797615 points

Other Parts Discussed in Thread: CC3200, CC3200SDK, CC3100

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/598998/cc3200-launchxl-sock-event-handler-sock-event---unexpected-event-20x-during-https-get

器件型号:CC3200-LAUNCHXL
主题中讨论的其他器件:CC3200CC3200SDKCC3100

你(们)好  

我正在连接到 https 云服务器并每5秒获取一次数据。 根据所获得的数据、我可能会也可能不会跟踪发布数据。

现在、在随机时间、我会遇到以下错误:

[SOCK_EVENT]-意外事件[20x]

这是由 sock 事件处理程序生成的。

当出现此错误时、我的 Get 数据将失败。 我通过删除现有客户端并创建新客户端并再次获取数据在代码中处理它。 这种情况会持续一段时间没有出现错误、但稍后会再次出现此错误。 由于我正在删除客户端并创建新的客户端、我的代码不会挂起、但我不理解为什么会出现此错误。

请给出建议

 

谢谢、此致

AV

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

    请访问 e2e.ti.com/.../2072673

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

    你(们)好、Jan

    感谢你的答复。

    问题非常相似。

    错误为2

    来自 socket.h (C:\ti_tirtos_cc32xx_2_16_01_14\products\tidrivers_cc32xx_2_16_01_13\packages/ti\mw\wifi \cc3x00\simplelink\include)

    /*接收 sl_socket_ASYNC_EVENT_时 可能的类型*/
    #define SSL_Accept (1)/* Accept failed due to SSL issement (TCP pass)*/
    #define RX_RACING_TO_BIG (2)//无连接模式,Rx 数据包分段> 16K,数据包正在发布*/
    #define OTHER 端_CLOCK_SSL_DATA_NOT_encrypted (3)//远程端从安全到不安全*/

    我了解它与计时器的关系。

    我使用的是 tirtos、而不是非 OS。 该线程的格式如下

    void connect_TO_cloud
    {
    while (1)
    {
    if (CLI handle=NULL)
    {
    connect to cloud ();
    }
    Task_sleep (1000);
    }
    
    
    void get_or post_TO_cloud
    {
    while (1)
    {
    if (CLI handle!=NULL)
    {
    ret=get from cloud ();
    if (5000=failure)
    }{
    delete CLI handle
    }
    
    Task_sleep (ret); //5秒
    }
    

    如何避免该误差

    如果错误来自云服务器-是什么原因导致的?

    非常感谢

    AV

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

    大家好、

    这个问题不是很相似、实际上是一样的。 问题的根本原因未与计时器连接。 它与代码内部与云服务器的套接字通信不正确有关。 您的服务器可能无法接收正确的数据,因此 SSL 通信已关闭。 您应该通过 Wireshark 网络监听器在 CC3200和服务器之间进行通信、以便能够确定正在发生的情况。

    BTW... 您使用的是 SDK 和 ServicePack 的哪个版本?

    更新:您的问题肯定不是 RX_RACING_TO_BIG。 您的问题是 Other_Side _Close_SSL_data_not _encrypted。 看起来您使用的是 SDK 版本1.1.0。 此 SDK 非常旧。 我建议不要使用此旧 SDK 并转至最新的1.3.0。

    1月

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

    你(们)好、Jan

    SDK 版本为 CC3200SDK_1.2.0

    tirtos 版本为 tirtos_cc32xx_2_16_01_14

    socket.h 文件来自 tirtos 文件夹

    它与代码内部与云服务器的套接字通信不正确有关。

    我将对此进行研究、然后返回

    非常感谢  

    AV

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

    大家好、

    以及什么 ServicePack 版本?

    BTW... SDK 1.2中包含以下代码:

    /*接收 sl_socket_ASYNC_EVENT_时 可能的类型*/
    #define SSL_Accept (0)/*由于 SSL 问题(TCP PASS)导致接受失败*/
    #define RX_RACITY_TO_BIG (1)/*无连接模式、Rx 数据包分段> 16K、数据包正在发布*/
    #define OTHER 侧_CLOCK_SSL_DATA_NOT_encrypted (2)/*远程侧从安全到不安全*/ 

    (笑声) SDK 1.1的内部内容如下:

    /*接收 sl_socket_ASYNC_EVENT_时 可能的类型*/
    #define SSL_Accept (1)/*由于 SSL 问题(TCP PASS)而导致接受失败*/
    #define RX_RACITY_TO_BIG (2)/*无连接模式、Rx 数据包分段> 16K、数据包正在发布*/
    #define OTHER 侧_CLOCK_SSL_DATA_NOT_encrypted (3)/*远程侧从安全到不安全*/ 

    您是否确定您使用的 SDK 版本是什么并已编译到您的代码中?

    1月

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

    你(们)好、Jan

    由于我的代码是一个 RTSC 工程、使用 TI-RTOS、因此使用的源文件和头文件来自 TIRTOS 文件夹(而不是 SDK 文件夹)。 这是文件的位置:(c:\ti_tirtos_cc32xx_2_16_01_14\products\tidrivers_cc32xx_2_16_01_13\packages/ti\mw\wifi \cc3x00\simplelink\include)。

    Service Pack 版本:CC3100_CC3200_ServicePack_1.0.1.6-2.7.0.0

    谢谢
    AV

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

    此目录中包含旧的 SDK 版本(1.1.0)。 即使您有与 TI-RTOS 配合使用的项目、您仍然可以使用最新的 SDK。 我知道 SDK 版本1.2和更高版本要好得多且稳定得多。 我认为使用旧 SDK 不是一个好主意、即使这可能与您的问题无关。

    1月