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.

[参考译文] BOOSTXL-CC3135:移植 CC3135驱动程序

Guru**** 2393725 points
Other Parts Discussed in Thread: CC3135

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/833374/boostxl-cc3135-porting-cc3135-driver

器件型号:BOOSTXL-CC3135
主题中讨论的其他器件:CC3135

您好!

我正在尝试将 CC3135端口连接到 ST 微控制器。 我遵循了程序员指南中给出的步骤、  

当我调用 sl_start 时、它永远不会从下面的行返回  

SL_DRV_SYNC_OBJ_WAIT_FOREVER (&G PCB->ObjPool[ObjIdx].SyncObj);
函数_SlReturnVal_t _SlDrvWaitForInternalEvent (_u8 ObjIdx、_u32 Timeout、_SlOpcode_t Opcode)的说明
有什么想法、可能会出什么问题?(我正在使用 FreeRTOS)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Siva1、

    您没有收到 CC3135的响应、这可能是移植主机驱动程序时出现的一些问题。

    1. 您是从 BoosterPack 开始还是从自己的电路板开始? 如果您使用的是自己的电路板、请务必查看硬件设计检查清单 :http://www.ti.com/lit/zip/swru552
    2. 从 数据表中验证您的时序特性是否正确
    3. 检查您的 SPI 实现和时钟(最大值为20MHz)。
    4.  是否定义了 sl_platform_multi_threaded?
    5. 您是否使用现有示例进行测试? 如果您使用的是 FreeRTOS、则需要在调用 sl_Start 之前创建 sl_Task。

    此致、

    Sarah

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

    您好、Sarah、

    显然、问题是在 user.h 中定义了"sl_platform_multi_threaded"、一旦将其声明为编译器标志、sl_start 返回。  

    我面临的下一个问题是、如果我调用'sl_DeviceGet;它在函数'_SlDriverIsApiAllded'处中止、 则语句 if (sl_is_restart_required)返回值256。  

     g_SlDeviceStatus 的值为2304。  

    调用顺序为  

    RetVal = sl_Start (NULL、NULL、NULL);
    if (retval = 0)
    Int16_t 状态;
    uint16_t pConfigLen;
    uint8_t pConfigOpt;
    SlDeviceVersion_t ver;
    pConfigLen = sizeof (ver);
    pConfigOpt = SL_DEVICE_General_version;
    状态= sl_DeviceGet (sl_device_General、&pConfigOpt、&pConfigLen、(_u8 *)(&V));
    if (状态)
    /*错误*/

    我正在使用自己的板。  

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

    您好、Siva1、

    sl_is-restart_required 标志在_SlDrvHandleFatalError 中设置、这是由于同步丢失或 SimpleLink API 调用导致主机驱动程序超时而导致的致命错误。 是否 实现了 slcb_GetTimestamp?  SL_TIMESTAMP_TICKS_IN_10_milliseconds 也需要准确。

    此致、

    Sarah

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

     您好、Sarah、

    谢谢、这个问题得到了解决。 现在它的状态是、SPI 在 sl_start 期间一直读取0、从而产生事件 SL_DEVICE_EVENT_FSAFY_NO_CMD_ACK。  当 boostxl 通电时、我可以看到模块通告的 SSID、这是正确的模式吗? 是否有任何其他方法可以确保器件正常工作、我可以尝试、当我检查 SPI 线路时、我可以看到时钟、数据输出、器件禁用/启用、IRQ 线路、cs 线路按预期工作。  

    此致、

    Sivaram  

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

    事实证明、问题是通信线路上的间歇性接触、现在工作正常。