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.

[参考译文] CCS/CC3120MOD:CC3120 API 驱动程序 UART 接口存在问题

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/887036/ccs-cc3120mod-problems-with-cc3120-api-driver-uart-interface

器件型号:CC3120MOD
主题中讨论的其他器件:MSP430FR5964CC3120CC3100UNIFLASH

工具/软件:Code Composer Studio

您好!

我在将 cc3120 API 与 MSP430fr5964移植时尝试使用 UART 接口。  在 TX 线上发送消息后、CC3120似乎没有关闭 HOST_INTR 线路。

它会在发送下一条消息之前很快将其关闭。  正确的行为。   我还想知道。 具有 CS 引脚(通常与 SPI 一起使用的芯片选择)、使用 UART 时需要注意的任何影响。

是与 CC3100 UART 接口类似的协议和计时、 可在 TI 的 wiki 上找到。   sl_IfRead 段的调用长度为8字节、但来自 CC3120的消息更长。 那么,如何解释这一点,应该将消息全部剪切或复制到*pbuff 中

感谢你的帮助

Heimo Lähdemäki ć

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

    您好、Heimo、

    CC3120 UART 主机接口实际上与 CC3100使用的接口相同、因此 Wiki 上 CC3100主机接口指南中的详细信息仍然与 CC3120相关:

    https://processors.wiki.ti.com/index.php/CC3100_Host_Interface

    https://processors.wiki.ti.com/index.php/CC3100_UART_Host_Interface

    如果您使用的是 UART 接口、CS 引脚不会产生任何影响。

    为了使主机中断线路失效、主机驱动程序需要处理中断。 中断线的 GPIO 中断处理程序应清除该线。 您观察到的行为似乎是正确的。 请参阅以下文章中的信息:

    https://e2e.ti.com/support/wireless-connectivity/wifi/f/968/p/550866/2012521#2012521

    对于消息处理、您应该让主机驱动程序处理消息解析和复制。 您只需要实现 sl_IfRead ()。

    此致、

    Michael

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

    您好!

    感谢您的建议。 现在、 我想我终于让接口正常工作了。

    现在的问题是 sl_start 只在角色= 1 (保留)时进行响应。  不管怎样、它不能识别 WiFi 是否正常工作。

    但 lelsiminkxxxxx WiFi 网络可用、我可以通过 Web 浏览器连接。

    任何想法、该应答的原因可能是什么(角色= 1)

    此致

    Heimo Lähdemäki ć

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

    您好!

    不打算从 sl_Start()获取角色= role_unknown。 您所完成的端口很可能存在一些故障、可能是低级 UART 读取故障。

    可能会导致您获得该 Role_Unknown 代码的各种潜在问题、我建议您查看 E2E 上过去已解答的主题、了解从何处开始查找和调试。 例如、以下是两个已解决的线程、它们具有不同的角色未知问题的特定原因、但将其作为主机驱动程序问题的一般概念是一个常见的主题:

    https://e2e.ti.com/support/wireless-connectivity/wifi/f/968/t/595388

    https://e2e.ti.com/support/wireless-connectivity/wifi/f/968/t/858459

    此外、请确保您已使用 Uniflash 将最新的 CC3120服务攻击刷写到器件中。 将旧的服务包与较新的主机驱动程序版本一起使用可能会导致问题。

    此致、

    Michael

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

    您好!

    问题似乎在于此  

    _SlSyncObj_t 和_SlLockObj_t  

    我使用 SDK 版本 simplelink_sdk_wifi 插件_2_40_00_22。  这些对象未在 该 SDK 的文件"nonos.c"上定义(锁定和信标)。

    我自己定义了它们。  超时功能出错、但当我修复了信标上被占用的程序时、显然正在等待来自 WiFi 模块的事件消息。   以前,超时函数立即返回,之后显然 sl_Start()返回了 role_UNKONWN。 但是,消息是通过的,但 sl_Start()在该消息之前已经返回。

    您能否告诉我们、将 MSP430fr5964用作主机的 CC3120搭配使用的驱动程序软件版本是正确的、我可以在哪里找到该软件。

    此致

    Heimo  

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

    您好、Heimo、

    MSP430上当前没有 CC3120端口。 CC3100主机驱动程序的一个端口确实存在到 MSP430的以下位置:

    http://www.ti.com/tool/CC3100SDK

    关于移植同步对象、我在这里键入了一篇关于使用 CC3100主机驱动程序端口作为示例的文章:

    https://e2e.ti.com/support/wireless-connectivity/wifi/f/968/p/690115/2543517#2543517

    如果您还没有查看同步对象实现的 nonos.c 文件、建议您查看。 您可以将它们直接复制到您的端口中、看看这是否对事情有所帮助。

    此致、

    Michael