zwadmkoe 发表于 2026-2-11 10:07:23

AiCube生成的项目,PWM输入捕获中断函数获取的值如何转化为所需的信息

AiCube生成的项目,使用的是擎天柱开发板AI8051U,设置PWMB_5为输入捕获引脚,IO口是P1.1


AiCube的PWM输入捕获设置:









请教一下,PWMB中断服务程序获取的值串口打印出来一些数值,如何处理中断函数返回的值,正确提取出脉冲信号的高低电平宽度值。



乘风飞扬 发表于 2026-2-11 15:37:44

捕获脉宽时间=捕捉的时钟数/PWM时钟源, 比如 捕捉的时钟数 = 500, PWM时钟源 = 24MHz, 脉宽 = 500/24MHz = 20.83us.
此外, %d是有符号的十进制整数, %u是无符号的十进制整数。

龙国之芯 发表于 2026-2-11 17:27:33

乘风飞扬 发表于 2026-2-11 15:37
捕获脉宽时间=捕捉的时钟数/PWM时钟源, 比如 捕捉的时钟数 = 500, PWM时钟源 = 24MHz, 脉宽 = 500/24MHz =...

谢谢大佬的指教,明天回到开机再试试,以上数值是PWM输入捕获到风扇转速FG的值,我想用捕获到的数值用公式转化成风扇每分钟的转速
页: [1]
查看完整版本: AiCube生成的项目,PWM输入捕获中断函数获取的值如何转化为所需的信息