使用STM32H743的TIM5触发DMA来驱动GPIO
使用STM32H743的TIM5触发DMA来驱动GPIO(Bit-Banging)是一个常见的应用。下面我将为您提供详细的步骤和代码实现。1. 功能概述
目标是通过TIM5的更新事件(溢出)触发DMA,DMA将数据(通常是0x00002000 置位 PB13,0x00000000 清零 PB13)传输到GPIOB->BSRRL寄存器,从而控制PB13引脚的电平,而无需CPU介入。传输完成后,在DMA传输完成中断中关闭TIM5和DMA流。
关键点:
GPIOB->BSRRL是置位寄存器。写入1 BSRRH寄存器(写入1 BSRR寄存器,它是一个32位寄存器,高16位用于清零(BSRRH),低16位用于置位(BSRRL)。
置位 PB13: GPIOB->BSRR = (1 BSRR = (1 BSRR。
DMA需要传输的数据是:
0x00002000 (即 1 BSRR = (1UL BSRR = (1UL 感谢分享 不错,里面软件多更新就更好了 过来提前占个楼 不错,里面软件多更新就更好了 不错,里面软件多更新就更好了 很好很强大我过来先占个楼 待编辑 懂技术并乐意极积无私分享的人越来越少。珍惜 东西不错很实用谢谢分享 这个有用。 收藏一下 不知道什么时候能用到 感谢分享,学习下。 新版吗?好像是停更了吧。 东西不错很实用谢谢分享 感谢,下载保存了 感谢分享,学习下。 感谢分享,下载保存了,貌似很强大 用心讨论,共获提升! 这个有用。 热心回复!
页:
[1]
2