STMCU小助手
发布时间:2022-8-2 18:43
|
导语 4 B# S4 n2 x2 j/ E. M 当使用 Timer 做捕获输入时,有时候需要将捕获得到的数据通过 DMA 方式写到定义好的数据或数组中,本文将详细介绍使用 CubeMx 配置 PWM 捕获功能,用户可以直接得到输入的 PWM 信号的频率以及占空比,Cube 库可以很方便配置。 实验过程中,当配置超过两个以上的 Timer 通道 DMA 时会遇到一些问题,本文也对其进行了说明并给出了解决方案。" s |& e. B' _8 j Timer2 的 PWM 信号捕获功能 使用 Timer 的 IC1,IC2 两个捕获输入通道,两个通道的外部管脚输入配置为相同 TI1 通道;3 ^0 `9 e9 G3 N) K' u 两个通道的捕获输入极性,一个为 Active,另外一个为 Inactive; 其中一个 TI1FP1 作为触发输入,从模式配置为复位模式; 这样 CCR1 为 PWM 输入的频率值,CCR2 为占空比值(正/负)。% E! r p; N' s) P; L 3 _! j3 `1 u( a' u& p2 R6 v( a * g O! Q. Y2 D- f/ M& J
8 Q- f- E: m4 `6 z ! v9 Y6 r) ^( ^5 K1 f6 A% B 使用 CubeMx 对外设进行初始化配置: Step1: TIM1 的输出 PWM 波作为捕获输入的被测信号,输出管脚为 PA8+ k& \+ ^: S6 n/ e; k8 G Step2: TIM2 的输入管脚为 PA5(CH1)! g# l4 f( [4 L" X- b
Y7 O: Z% I$ { Step3: 配置 TIM2 的输入捕获参数
3 A* V! s! Y9 X& s Step4: 捕获数据直接通过 DMA 方式保存到 RAM 变量 Update_Value1 和 Update_Value2。! G) i0 `) h0 {9 @; p/ k
+ N C7 u, T% t0 a, X Step5: 测试读取到的 CCR1、CCR2 的数据与 Update_Value1、Update_Value2 对应,PWM 波的频率) m P+ H! |) ~1 L& Z. p8 i 和占空比都可以捕获得到。 . T; S' S( A: z0 y: V- b 9 Z& T3 ^0 S& r9 u, P+ e
完整版请查看:附件! M: A/ N6 R6 ?/ {5 Q3 A3 o0 S- x # W' }: j: ]- k7 C- i( z |
notes for timer input capture features when using DMA mode_V0.2.pdf
下载596.51 KB, 下载次数: 0
【STM32H735G-DK 测评】STM32H735G-DK External Loder 编译和测试
Keil-MDK 在线调试设置断点的高级用法
请教下STM32N6570 怎么把分辨率改成320x240并可以全屏显示
【福利三:逢7发帖赢大礼】想要充分利用STM32H743VI片内的RAM空间(但并不顺利)
基于stm32平台上的IC-MU磁绝对值编码器SPI通讯和码盘数据处理
使用STM32 MCU和MPU连接PDM数字麦克风
分享STM32资料-采用 STM32U031R8 MCU 的 STM32 Nucleo-64 开发板,官方资料,数据手册等资料
HRTIM 指南
使用 STM32 的 DWT 单元监控内存
DAC,COMP,HRTIM Fault 功能的使用
微信公众号
手机版