TI中文支持网
TI专业的中文技术问题搜集分享网站

CC3100: CC3100在STA模式下,与服务端通信,一段时间后异常

Part Number:CC3100Other Parts Discussed in Thread: CC3200, CC3120

TI工程师好:

我用cc3100与stm32通过SPI连接,配置成STA模式,mcu为客户端,mcu通过AP连接到服务端,TCP一直发送数据,一定时间后进入_SlNonOsMainLoopTask()函数里死循环,TCP也不返回send失败,请问怎么排查问题?

Yolande Wang:

您好,

qiang zhou 说:请问怎么排查问题?

有以下 3 点建议:

请确保 SPI 通信配置正确且稳定。
检查 CC3100 驱动和配置参数,确保初始化配置在 STA 模式下正确且网络连接稳定。
确保在使用 TCP 发送数据时,分配的缓冲区大小足够。检查一下内存分配、数据处理过程是否存在内存溢出的问题。

,

Yolande Wang:

_SlNonOsMainLoopTask() 函数使用情景是:

在没有用操作系统的时候
在等待事件的时候

,

Yolande Wang:

您使用的是什么操作系统?

,

Yolande Wang:

建议您添加一个简单的 printf 来测试 _SlNonOsMainLoopTask 是否在运行。

,

qiang zhou:

我在mcu上跑了一个KEIL自带的RTX实时系统,会有影响吗?tcp通信我就是用的cc3100里没有带系统的例程修改的

,

Yolande Wang:

上位机(st mcu)不跑 rtos,才能使用 CC3100 nortos 的例程。建议您用 linux 电脑安装 wireshark 抓一下包,看看网络情况是怎样的

,

Yolande Wang:

您用的是哪个例程,我在这边测试一下。

另外,

按照 user manual 的 debug 章节里的描述,需要抓一下 NWP log。

您可以把 pin 62 引出来,看一下 NWP log。

,

Yolande Wang:

您好,

您问题的疑惑点解决了吗?

,

Yolande Wang:

如果您使用 RTOS,为什么选择非操作系统实现呢?

要调试这样的问题(这肯定与平台适配有关),您应该检查代码卡住的确切位置(_SlNonOsMainLoopTask 本身没有无限循环,因此它必须位于该函数调用的回调中) – 这样您就可以获得有关根本原因的更多信息。

您可以尝试暂停调试器并调试堆栈或在 simplelink 驱动程序中添加调试打印。

确保您使用最新的 SDK 和服务包以避免已修复的问题。您可以考虑使用 CC3200 SDK 1.5 中的主机驱动程序(这是 CC3x00 系列的最新版本)。

最后,如果这是一个新项目 – 请考虑迁移到更新的 Wi-Fi 设备(例如 CC3120/35 或 CC33xx)。 CC3100 是非常老的设备,有很多限制。

,

qiang zhou:

做了一些调整,目前看来还行,需要长时间运算看看后续会不会再复现出来

赞(0)
未经允许不得转载:TI中文支持网 » CC3100: CC3100在STA模式下,与服务端通信,一段时间后异常
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1