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.

[参考译文] RTOS/CC3200-LAUNCHXL:无法连接到 WIFI

Guru**** 2012440 points
Other Parts Discussed in Thread: CC3200-LAUNCHXL, CC3200, CC3200SDK
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/577291/rtos-cc3200-launchxl-unable-to-connect-to-wifi

器件型号:CC3200-LAUNCHXL
Thread 中讨论的其他器件: CC3200CC3200SDK

工具/软件:TI-RTOS

我在连接到 WiFi 时遇到问题。 在旧版本的中、我使用了 nonos 项目 http dep 客户端、我可以连接到本地 wi-fi、但现在我已将我的项目移植到 TI RTOS。 在移植之后,WiFi 无法加入网络并在 ConfigureSimpleLinkToDefaultState();API 中挂起。 剂量不会从函数返回。 问题是什么、有些人可能会帮助找到解决方案。

调试后、我在中找到 lMode = sl_Start (0、0、0);  

long ConfigureSimpleLinkToDefaultState() API 挂起。 原因可能是什么。 如果我在 nonos 项目中调用相同的 API、则可以正常工作。 如果我在 TI RTOS 中使用同一 API、则该 API 在输入后挂起  

_i16 sl_Start (const void* pIfHdl、_i8* pDevName、const P_init_callback pInitCallBack);API。 什么是可定位性。 请帮帮我。

我正在使用
CC3100_CC3200_ServicePack_1.0.1.6-2.7.0.0- SDK
CC3200SDK_1.2.0-服务器包  
CCSv6 - CCS IDE 版本

谢谢
哈里

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

    哈里

    是否在调用 sl_Start()之前调用了 OSI_start()?

    Derrick

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

    感谢您的回复 Derrick,没有,我没有使用 OSI_START();在 sl_Start()之前,API 请检查我的主函数。

    //
    //主函数
    //
    void main()

    long lRetVal;

    Semaphore_Params SEM_params;

    ERROR_Block EB;

    lRetVal =-1;

    memset (&SEM_params、0、sizeof (SEM_params));

    memset (&EB、0、sizeof (EB));

    //
    //电路板初始化
    //
    BoardInit();
    //
    //引脚初始化
    //
    PinMuxConfig();

    //
    //配置 UART
    //
    #ifndef NOTERM
    InitTerm();
    #endif //NOTERM

    InitializeAppVariables();

    Semaphore_Params_init (&SEM_params);
    SEM_params.mode = Semaphore_Mode_binary;
    SEM_Rx= Semaphore_create (0、&SEM_params、&EB);

    //
    //配置全部3个 LED
    //
    GPIO_IF_LedConfigure (LED1|LED2|LED3);

    //关闭所有 LED
    GPIO_IF_LedOff (MCU_ALL_LED_IND);
    UART_PRINT ("电路板配置完成\n"\});

    OSAL_QueueInit();

    lRetVal = ConnectToAP ();

    如果(lRetVal < 0)

       UART_PRINT ("发生连接到 AP 错误\n\r\n);

      UART_PRINT ("RTC 初始化\n"r);
      RTCIF_Init();

    //启动 SimpleLink 主机
    //
    lRetVal = VStartSimpleLinkSpawnTask (sawn_task_priority);

    if (lRetVal < 0)

      ERR_PRINT (lRetVal);  
      loop_forever ();

    //
                //开始任务


       lRetVal = OSI_TaskCreate (ReadandPostData、\
                                      (const signed char*)"ReadandPostData"、\
                                                 OSI_STACK_SIZE,NULL,1,NULL);

       

        lRetVal = OS_TaskCreate (ReceivePacketandWrite、\
                                        (const signed char*)"ReceivePacketandWrite"、\
                                             OSI_STACK_SIZE,NULL,1,NULL);

        //启动任务调度程序

         OSI_START();

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Hai Derrick、
    我正在等待您的回复。 我想知道为什么 http 演示客户端在 nonos 实现中工作正常、以及在移植到 TI RTOS 后、为什么未正确配置 wifi。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    哈里

    将现有工程从无操作系统移植到 TI-RTOS 时涉及许多细节。 我建议您从 TI-RTOS CC32xx 2.16.01.14版本导入 TI-RTOS 示例。 构建并运行它。 这将为您提供一个有效的基准。 您可以从此处比较您的项目和 TI-RTOS 示例之间的差异。

    TI-RTOS 版本下载

    您可以尝试使用两个网络示例。

    CCS
    View > Resource Explorer Classic
    TI Resource Explorer
    封装:适用于 CC32xx 的 TI-RTOS
    无线连接 MCU > CC3200 > CC3200-LaunchXL SimpleLink
    网络示例> TI 网络示例> WiFi 示例
    TCP Echo for CC3X00 >选择
    将示例项目导入 CCS

    此时、我关闭 TI Resource Explorer 并以常规方式处理该项目。

    ~Ramsey

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

    感谢您的回复 Ramsey、

    我的尝试与您在回复中提到的相同。但我得到的错误为

    说明资源路径位置类型
    gmake:***没有规则使目标'configPkg/compiler.opt'需要'configPkg/linker.cmd'。tcpEchoCC3X00_CC3200_LAUNCHXL_TI_CC3200未知 C/C++问题。 如何解决此问题。

    我有疑问请您澄清一下、我创建了一个以 WLAN_STATION 项目为参考的 TI尔 图斯项目。  我看到所有 API 调用命名都不同。 例如、

    WLAN 站                                                          TCP 回波

    1) OSI_TaskCreate()                                                    1) Task_construct();

    2) OSI_START();                                                          2) BIOS_start();

    有些 APL 就像这样。 我对哪一个是 ti RTOS 感到困惑。  我已使用 WLAN 站创建了一个项目、该项目作为 来自 cc3200 SDK 的临时设置。 我能否使用 TCP 回显项目中提到的 API

    CC3200 SDK 中的 WLAN 站示例。 请回复我、我正在等待指导。

    谢谢

    哈里  

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

    哈里

    是的、这是令人困惑的。 对于 CC3200、有两种不同的 SDK 产品:

    CC3200SDK 1.2.0
    TI-RTOS CC32xx 2.16.01.14

    有关 CC3200 SDK 的问题、请将问题发布到 SimpleLink WiFi CC31xx/CC32xx 论坛。 有关 TI-RTOS SDK 的问题、请使用 TI-RTOS 论坛(此论坛)。

    CC3200 SDK 中的示例使用称为 OSI 的抽象层。 这会将您的代码与实际的 RTOS API 调用分开。 如果您计划使用此方法开发应用、则应将内容发布到 SimpleLink 论坛。

    TI-RTOS SDK 中的示例直接调用 SYS/BIOS 内核。 在您的计算机上下载并安装 TI-RTOS SDK。 然后将 TI-RTOS SDK 安装到 CCS 中。

    CCS
    Windows >首选项
    Code Composer Studio >产品
    安装... >选择 TI-RTOS 安装文件夹

    完成此操作后、您可以按照我之前的帖子中的说明导入 TI-RTOS 示例。 不要创建新项目、只需导入和示例。 该示例应能够正常构建和运行。

    ~Ramsey