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

CC3120驱动移植到MCU,调用sl_start(0,0,0)返回值1,能说明什么问题,该函数有返回值能不能说明MCU与CC3120的SPI接口驱动是通的,还有出现返回值为1,能说明我的驱动那一块有问题,我改排查哪里。

CC3120驱动移植到MCU,调用sl_start(0,0,0)返回值1,能说明什么问题,该函数有返回值能不能说明MCU与CC3120的SPI接口驱动是通的,还有出现返回值为1,能说明我的驱动那一块有问题,我改排查哪里。

Alvin Chen:

ROLE_RESERVED = 1 ,

这个返回值来自_SlDeviceGetStartResponseConvert().

正常可以返回 STA/AP/P2P , ROLE_RESERVED 只有 async status为 0 o在_SlDeviceGetStartResponseConvert.

这个文档应该来自于你自己移植的平台中如何存储或解释从CC3120收到的数据导致的同步问题。

user6105077:

回复 Alvin Chen:

您认为可能是我移植CC3120驱动的哪一个部分导致的问题,是SPI驱动写的不对导致从CC3120读出的数据错误还是其他的问题导致的,请给点建议,我好排查代码。谢谢。

Alvin Chen:

回复 user6105077:

是不是SPI问题不好说,但是你这个问题是同步问题。

你什么平台?freertos? 你先去用示波器抓一下你的SPI波形看一下是否良好。如果你是FreeRTOS的平台。可以参考我们SDK里面的:

C:\ti\simplelink_sdk_wifi_plugin_2_40_00_22\examples\rtos\MSP_EXP432P401R\demos\network_terminal\freertos

下载和参考这个SDK 需要的工具:

CCS:http://www.ti.com/tool/CCSTUDIO

\simplelink_sdk_wifi_plugin_2_40_00_22:

msp432 SDK :

http://www.ti.com/tool/SIMPLELINK-MSP432-SDK

user6105077:

回复 Alvin Chen:

我单步调试了一下代码,发现在执行sl_start()函数时,会执行SPI_WRITE()写到CC3120的数据是08 00 62 44,接着会执行SPI_READ()从CC3120中读出的数据是20 00 35 d0 问一下SPI读出的数据正常吗,代表什么意思。

Alvin Chen:

回复 user6105077:

你现在的问题是异步处理的问题造成了信息不完整,我们提了MSP432的freertos 例程请去参考处理逻辑。

user6105077:

回复 Alvin Chen:

我就是按照你们给出的例程去移植的代码,你们提供的例程我都参考过,关于异步处理这块哪里出的问题,能给点详细的建议吗,什么错误会导致这类问题?

user6105077:

回复 user6105077:

我参考你们给的程序将你们给的驱动文件中的接口ccpal.c里面的函数都实现了,在应用层的调用上也是参考你们的代码,先创建一个任务运行sl_task任务,接着在执行sl_start函数启动CC3120

Alvin Chen:

回复 user6105077:

这要看你具体移植程序。你现在出现的只能说明是异步处理出现了,只能你自己去检查你的程序。

user6105077:

回复 Alvin Chen:

异步处理 是什么机制,能说详细点吗,是不是我的中断处理的问题。

Alvin Chen:

回复 user6105077:

看下面的code:
关于case SL_OPCODE_DEVICE_INITCOMPLETE:_SlDeviceHandleAsync_InitComplete(pHdr);break;case SL_OPCODE_DEVICE_STOP_ASYNC_RESPONSE:_SlDeviceHandleAsync_Stop(pHdr);break;case SL_OPCODE_DEVICE_RESET_REQUEST_ASYNC_EVENT:

dev.ti.com/…/device_8c_source.html

赞(0)
未经允许不得转载:TI中文支持网 » CC3120驱动移植到MCU,调用sl_start(0,0,0)返回值1,能说明什么问题,该函数有返回值能不能说明MCU与CC3120的SPI接口驱动是通的,还有出现返回值为1,能说明我的驱动那一块有问题,我改排查哪里。
分享到: 更多 (0)