CH32F207VCT6 USART1 dma 有bug?
uart1 使用 PA9,PA10引脚,设定DMA1_CH5通道接收。经常会少收一个数据。程序已经按照官方例程修改了对比uart4,同样的程序没有任何问题。
程序移植过stm32,国民技术n32g45x ,都是很稳定执行。
波特率是 38400 7 E 1 测试uart4,uart5正常,usart1不支持 您好,这边测试串口1 DMA收发都是没有问题的,附件为测试例程,可以参考一下
WCHTech2 发表于 2022-12-6 11:03
您好,这边测试串口1 DMA收发都是没有问题的,附件为测试例程,可以参考一下
好的,我来拿例程测试一下看看
WCHTech2 发表于 2022-12-6 11:03
您好,这边测试串口1 DMA收发都是没有问题的,附件为测试例程,可以参考一下
暂时完美接收,还是需要原厂支持。{:handshake:} 谢谢,应该是解决了。换了例程部分接收处理代码,问题解决,dma优先级也降低了不影响,原例程dma优先级改为DMA_Priority_Low也不影响 那说明你的代码还是有问题啊,原厂的就没有问题。 weifeng90 发表于 2022-12-6 19:17
那说明你的代码还是有问题啊,原厂的就没有问题。
uart的sr和dr主流程里面不读取就好了,每家芯片不一样,有解决方案就可以了。测试1天,稳定 wxheky 发表于 2022-12-7 10:42
uart的sr和dr主流程里面不读取就好了,每家芯片不一样,有解决方案就可以了。测试1天,稳定 ...
其他MCU应该都有影响吧,至少STM32也是,读取DR就会将数据读出来,从而使状态寄存器发生变化。理论上一样会影响DMA,除非DMA优先级比CPU高,一直都是DMA把数据读出来。 binbin0317 发表于 2022-12-8 08:04
其他MCU应该都有影响吧,至少STM32也是,读取DR就会将数据读出来,从而使状态寄存器发生变化。理论上一样 ...
批量实测cks32,stm32,at32,n32g45x
没这个问题
但这个问题不是问题,只要解决,改改代码,长时间测试一下就可以,国产越来越好
		页: 
[1]