问题描述:
1、使用 TLSR821 UART 遇到一个比较奇怪的问题,同样的固件在开发板上 UART 串口接收、发送都是正常的,在我们自己的板子上串口没有数据输出,接收是否正常判断判断不了,我们的板子UART PIN是直接连接串口板的;
2、将与 UART 无关代码去掉后,在开发板上、我们自己的板子上验证都是正常的
总结两个固件(一个只有 UART 功能、另一个还有其他模块的功能)
1、在开发板上无论用哪个固件串口都正常
2、在我们的板子上用单独的 UART 固件验证正常
3、用另外一个附带其他功能的固件 UART 没有输出(已经检查 TX、RX 没有被其他地方使用)
你好,
检查是否加入休眠了呢,休眠之后串口需要重新初始化,可以尝试在初始化完成之后,main函数中执行空函数,测试串口是否正常。
我们的软件里面没有加入休眠呢,我看了我们编译出来的 Bin 文件大小是 55KB,我们使用芯片型号是 TLSR8251F512ET32 ,这个会不会和固件大小有关系呢?
还有就是我加入 UART 之后,好像代码没有跑起来呢,其他的功能也是不好用了;将其他功能去掉单独验证 UART 又是正常的,这个还有什么其他可以排查的方向吗?
@TL_Soyo
你好,
检查是否加入休眠了呢,休眠之后串口需要重新初始化,可以尝试在初始化完成之后,main函数中执行空函数,测试串口是否正常。
我们的软件里面没有加入休眠呢,我看了我们编译出来的 Bin 文件大小是 55KB,我们使用芯片型号是 TLSR8251F512ET32 ,这个会不会和固件大小有关系呢?
还有就是我加入 UART 之后,好像代码没有跑起来呢,其他的功能也是不好用了;将其他功能去掉单独验证 UART 又是正常的,这个还有什么其他可以排查的方向吗?
@TL_Soyo
判断代码是否在运行可以使用BDT工具的PC按钮,以及Tedbug观察程序运行以及变量状况,也可以比对下和开发板的原理图是否有元器件裁剪了呢,导致芯片供电不完全等等。
您好请问UART与DMIC是不是有什么联系呢?我初始化UART之后 DMIC 就不正常了,去掉DMIC就正常,然后我去掉audiotask UART 就正常了呢
从串口信息看是死在了这儿,不明白什么原因
上面的问题解决了,是因为我采用的是 dma 方式,然后 uart_irq_enable(0, 0);这里设置为了(1,1)导致的,但是很奇怪,串口好用之后我之前的GPIO中断初始化的时候有卡住了这有什么联系吗?