HRTIM 的故障输入配置为输出?
用 STM32G474 的 HRTIM,想要将故障输入配置为输出。在 STM32CubeIDE 中 HRTIM 的 GPIO 配置中看到故障输入引脚HRTIM_FLT1配置为替代功能推挽,测了 HRTIM_FLT1 引脚中电平是 0V。看起来并不少输入在代码中,我看到 pTimerCfg.FaultEnable = HRTIM_TIMFAULTENABLE_NONE,我认为它应该是HRTIM_TIMFAULTENABLE_FAULT1,我理解的对吗?还看到 FLTxR = 0,是否应该是 1:0:忽略故障 1 输入1:故障 1 输入有效并禁用 HRTIM 输出应该怎样配置才对?
若引脚电平为0V,可能是GPIO未正确配置为复用功能,或未启用HRTIM时钟。
HRTIM_FLT1引脚需配置为复用功能模式,并选择正确的AF编号(通常在STM32G474中为GPIO_AF1_HRTIM)。
在STM32CubeMX中检查GPIO配置,确认HRTIM_FLT1的AF模式已启用,且时钟HRTIM1已使能(__HAL_RCC_HRTIM1_CLK_ENABLE())。 检查是否启用了内部上拉或下拉电阻。如果没有外部信号,可以考虑启用内部上拉电阻。 FLT1R寄存器的FLT1M字段:设置故障发生时的动作(如禁用输出、复位计数器等)
关键寄存器:HRTIM_TIMx_FLT1R(x为定时器编号)FLT1E位(Fault1 Enable):必须置1以启用故障输入FLT1。
FLT1P位设置故障信号极性(0=低电平有效,1=高电平有效),需与外部电路匹配 必须置1以启用故障检测(与FaultEnable全局使能不冲突)。 确认FLT1E和FaultEnable均已置1。检查FLT1P极性是否与外部信号匹配(如外部故障信号为高电平有效时,FLT1P=1)。
引脚电平仍为0V:检查GPIO配置是否为AF模式且AF编号正确。确认HRTIM1时钟已使能(__HAL_RCC_HRTIM1_CLK_ENABLE())。用示波器测量HRTIM_FLT1引脚是否有外部故障信号输入。
FLT1P位设置故障信号极性(0=低电平有效,1=高电平有效),需与外部电路匹配
如果你想让故障输入 1(FLT1)生效,应改为:
c
复制
编辑
pTimerCfg.FaultEnable = HRTIM_TIMFAULTENABLE_FAULT1;
页:
[1]