在STM32的输入捕获模式下,IC1F(Input Capture 1 Filter)是一个用于配置输入捕获通道1的滤波器参数的寄存器字段。TIM_ICFilter 是一个与 IC1F 对应的枚举值,用于在STM32 HAL库中配置滤波器。
1. 为什么 IC1F=0000 对应 TIM_ICFilter=0x00?
IC1F 是一个4位的字段,用于配置输入捕获通道1的滤波器。IC1F=0000 表示不使用滤波器,即输入信号直接通过,不进行任何滤波处理。在这种情况下,TIM_ICFilter 的值为 0x00,表示滤波器被禁用。
2. 如果 IC1F=1000,那么 TIM_ICFilter 是多少?
IC1F 的4位值决定了滤波器的采样频率和采样次数。IC1F=1000 对应的滤波器配置是:采样频率为 f_{CK_INT}/8,采样次数为 6。
在STM32 HAL库中,TIM_ICFilter 是一个枚举类型,其值与 IC1F 的值对应。IC1F=1000 对应的 TIM_ICFilter 值是 0x08。
3. 它们之间的对应关系是什么?
IC1F 和 TIM_ICFilter 之间的对应关系是直接的,TIM_ICFilter 的值就是 IC1F 的值。具体对应关系如下:
IC1F (二进制) |
IC1F (十六进制) |
TIM_ICFilter |
滤波器配置 |
|---|
0000 |
0x00 |
0x00 |
无滤波器 |
0001 |
0x01 |
0x01 |
f_{CK_INT}/1, N=2 |
0010 |
0x02 |
0x02 |
f_{CK_INT}/1, N=4 |
0011 |
0x03 |
0x03 |
f_{CK_INT}/1, N=8 |
0100 |
0x04 |
0x04 |
f_{CK_INT}/2, N=6 |
0101 |
0x05 |
0x05 |
f_{CK_INT}/2, N=8 |
0110 |
0x06 |
0x06 |
f_{CK_INT}/4, N=6 |
0111 |
0x07 |
0x07 |
f_{CK_INT}/4, N=8 |
1000 |
0x08 |
0x08 |
f_{CK_INT}/8, N=6 |
1001 |
0x09 |
0x09 |
f_{CK_INT}/8, N=8 |
1010 |
0x0A |
0x0A |
f_{CK_INT}/16, N=5 |
1011 |
0x0B |
0x0B |
f_{CK_INT}/16, N=6 |
1100 |
0x0C |
0x0C |
f_{CK_INT}/16, N=8 |
1101 |
0x0D |
0x0D |
f_{CK_INT}/32, N=5 |
1110 |
0x0E |
0x0E |
f_{CK_INT}/32, N=6 |
1111 |
0x0F |
0x0F |
f_{CK_INT}/32, N=8 |
总结
IC1F=0000 对应 TIM_ICFilter=0x00,表示禁用滤波器。
IC1F=1000 对应 TIM_ICFilter=0x08,表示采样频率为 f_{CK_INT}/8,采样次数为 6。
IC1F 和 TIM_ICFilter 之间的对应关系是直接的,TIM_ICFilter 的值就是 IC1F 的值。
在STM32的输入捕获模式下,IC1F(Input Capture 1 Filter)是一个用于配置输入捕获通道1的滤波器参数的寄存器字段。TIM_ICFilter 是一个与 IC1F 对应的枚举值,用于在STM32 HAL库中配置滤波器。
1. 为什么 IC1F=0000 对应 TIM_ICFilter=0x00?
IC1F 是一个4位的字段,用于配置输入捕获通道1的滤波器。IC1F=0000 表示不使用滤波器,即输入信号直接通过,不进行任何滤波处理。在这种情况下,TIM_ICFilter 的值为 0x00,表示滤波器被禁用。
2. 如果 IC1F=1000,那么 TIM_ICFilter 是多少?
IC1F 的4位值决定了滤波器的采样频率和采样次数。IC1F=1000 对应的滤波器配置是:采样频率为 f_{CK_INT}/8,采样次数为 6。
在STM32 HAL库中,TIM_ICFilter 是一个枚举类型,其值与 IC1F 的值对应。IC1F=1000 对应的 TIM_ICFilter 值是 0x08。
3. 它们之间的对应关系是什么?
IC1F 和 TIM_ICFilter 之间的对应关系是直接的,TIM_ICFilter 的值就是 IC1F 的值。具体对应关系如下:
IC1F (二进制) |
IC1F (十六进制) |
TIM_ICFilter |
滤波器配置 |
|---|
0000 |
0x00 |
0x00 |
无滤波器 |
0001 |
0x01 |
0x01 |
f_{CK_INT}/1, N=2 |
0010 |
0x02 |
0x02 |
f_{CK_INT}/1, N=4 |
0011 |
0x03 |
0x03 |
f_{CK_INT}/1, N=8 |
0100 |
0x04 |
0x04 |
f_{CK_INT}/2, N=6 |
0101 |
0x05 |
0x05 |
f_{CK_INT}/2, N=8 |
0110 |
0x06 |
0x06 |
f_{CK_INT}/4, N=6 |
0111 |
0x07 |
0x07 |
f_{CK_INT}/4, N=8 |
1000 |
0x08 |
0x08 |
f_{CK_INT}/8, N=6 |
1001 |
0x09 |
0x09 |
f_{CK_INT}/8, N=8 |
1010 |
0x0A |
0x0A |
f_{CK_INT}/16, N=5 |
1011 |
0x0B |
0x0B |
f_{CK_INT}/16, N=6 |
1100 |
0x0C |
0x0C |
f_{CK_INT}/16, N=8 |
1101 |
0x0D |
0x0D |
f_{CK_INT}/32, N=5 |
1110 |
0x0E |
0x0E |
f_{CK_INT}/32, N=6 |
1111 |
0x0F |
0x0F |
f_{CK_INT}/32, N=8 |
总结
IC1F=0000 对应 TIM_ICFilter=0x00,表示禁用滤波器。
IC1F=1000 对应 TIM_ICFilter=0x08,表示采样频率为 f_{CK_INT}/8,采样次数为 6。
IC1F 和 TIM_ICFilter 之间的对应关系是直接的,TIM_ICFilter 的值就是 IC1F 的值。
举报