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.

CC3100+STM32F103RC的SPI驱动相关问题

Other Parts Discussed in Thread: CC3100SDK

    我们参考并移植官方SDK1.0的C:\TI\CC3100SDK_1.1.0\cc3100-sdk\examples\tcp_socket 程序到STM32F103RC上面,最高速度也能跑到每秒900KB+;调用函数sl_SendTo()或sl_Send()函数每次进行1024个字节发送,该函数会阻塞MCU主程序的执行,从而打乱主程序的时序。通过分析产生阻塞的问题,定位到底层发送函数,发现底层SPI也是使用DMA+查询寄存器的方式,因此阻塞相当长的时间。

    如果想实现STM32的SPI接口DMA中断收发,就需要对sl_SendTo()或sl_Send()函数进行修改。将官方TCP例程和我们移植后的例程就行对比都使用了DMA进行数据收发,但是DMA都是等待查询寄存器的方式。对于我们修改sl_SendTo()或sl_Send()函数实现DMA的中断收发有一定的难度,因此,请相关技术人员能够帮忙解决这个问题,或提供能实现DMA中断收发的参考例程,谢谢!