愿隙 发表于 2025-8-20 14:01:32

使用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

恿榫 发表于 2025-11-30 08:48:25

感谢分享

水苯 发表于 2025-12-13 18:31:59

不错,里面软件多更新就更好了

府扔影 发表于 2025-12-26 13:35:57

过来提前占个楼

株兆凝 发表于 2025-12-28 13:43:22

不错,里面软件多更新就更好了

钤凑讪 发表于 2026-1-16 16:44:32

不错,里面软件多更新就更好了

厨浴 发表于 2026-1-16 21:49:59

很好很强大我过来先占个楼 待编辑

洪势 发表于 2026-1-18 10:58:07

懂技术并乐意极积无私分享的人越来越少。珍惜

佟棠华 发表于 2026-1-20 08:51:18

东西不错很实用谢谢分享

轩辕娅童 发表于 2026-1-20 10:59:03

这个有用。

搁胱 发表于 2026-1-21 02:37:52

收藏一下   不知道什么时候能用到

左丘平莹 发表于 2026-1-21 05:41:45

感谢分享,学习下。

趣侮 发表于 2026-1-21 09:03:23

新版吗?好像是停更了吧。

蜴间囝 发表于 2026-1-21 13:20:23

东西不错很实用谢谢分享

慢秤 发表于 2026-1-21 16:52:54

感谢,下载保存了

颜清华 发表于 2026-1-23 09:35:08

感谢分享,学习下。

拼匍弦 发表于 2026-1-24 12:23:53

感谢分享,下载保存了,貌似很强大

金娅鸣 发表于 2026-2-5 04:22:15

用心讨论,共获提升!

曲愍糙 发表于 2026-2-6 11:29:36

这个有用。

寨重 发表于 2026-2-8 02:49:33

热心回复!
页: [1] 2
查看完整版本: 使用STM32H743的TIM5触发DMA来驱动GPIO