TI论坛
直播中

李亮涟

7年用户 167经验值
私信 关注
[问答]

CC2541的串口没法发送出去

你好,在使用CC2541时目前遇到一个很困惑的问题,我的程序希望通过串口发送,同样的程序在开发板上运行能够正常的收发,将程序下载到我们自己的目标板上,就没法发送出去了,跟踪到HalUARTWriteDMA函数体,
if (HAL_UART_DMA_TX_AVAIL() < len)
[
return 0;
]
发现总是在这个地方就返回了,感觉不知是DMA还是UART中断没有产生,DMA缓存满了
不能理解的就是在开发板上就可以。

回帖(11)

苏醒

2020-3-18 08:44:22
请问您的目标板的硬件连接和开发板是一样的吗?
举报

李亮涟

2020-3-18 09:10:06
引用: 合肥冉坤 发表于 2020-3-18 09:17
请问您的目标板的硬件连接和开发板是一样的吗?

会不会是单片机内核中的串口或者DMA有问题了?
举报

苏醒

2020-3-18 09:23:18
引用: xncvywyerwe 发表于 2020-3-18 09:43
会不会是单片机内核中的串口或者DMA有问题了?

单片机?你应该使用的是CC2541本身的DMA吧?是有使用协议栈还是没有使用协议栈?
感觉DMA出问题的可能性很低,但如果有多个板子可以换个板子试一下
举报

苏醒

2020-3-18 09:42:35
开发板上默认使用的是P0_2 P0_3 P_4 P_5做的串口
感觉您应该是把CC2541作为8051在编程,请参考TI已经提供的代码http://www.ti.com/lit/zip/swrc257
里面有UART_DMA的例程
举报

更多回帖

发帖
×
20
完善资料,
赚取积分