完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
STM32F103串口3使用DMA交替发送和接收10个字节数据,流程 :串口3使用DMA接收数据,无误后关闭接收DMA,打开发送DMA发送两个字节数据,在发送完毕的中断里面关闭发送DMA,重新设置接收DMA,当接收的DMA打开的时候会立即把现在的DR寄存器数据保存到定义的接收数组里面,这个有办法解决吗?
现在我是暂时解决了,我接收DMA的接收数据设置的是15,接收10个数据用不完,在发送完毕的中断里面先打开接收DMA,会把现在的DR寄存器数据保存到首位,然后再重新设置接收DMA,就不会出现问题了。 这个问题的具体原因是什么呢?怎么解决呢? |
|
相关推荐
2个回答
|
|
|
|
|
|
USART3_TX使用DMA1的通道2,USART3_RX使用DM1的通道3,两个不在一个通道,完全可以独立运行啊!
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
STM32串口接受中断使用C++STL中的queue导致所有中断失效
3507 浏览 1 评论
2717 浏览 0 评论
STM32配合可编程加密芯片SMEC88ST的防抄板加密方案设计
1289 浏览 0 评论
3571 浏览 1 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
3375 浏览 4 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-3 01:22 , Processed in 0.526429 second(s), Total 74, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号