最近终于调通了多串口DMA接收,其实也挺简单的,记录一下备忘。
一、CUBEMX配置F405rgt6工程
设置所有串口参数,开启串口中断,DMA中断
其他的串口类似,就不贴了,比较懒。。。。
二、修改工程源码
用cubemx自动生成代码,需要修改几处代码,也是关键,直接上代码
首先是增加printf函数
注意头文件中包含这些头文件
接下来是多串口dma接收
首先dma使能函数
然后是回调函数
最后是在串口中断中加入回调函数
这就完成了,要使用多串口dam接受记得要在main函数调用UARTx_DMA_ENABLE()函数。
下面是测试函数