复制定时器PWM输出工程,重命名为Timer_ETR,打开工程。查看原理图使用杜邦线将PF9和PA0连接,使用定时器2的外部计数功能。
选择定时器2,设置外部计数模式
设置定时器2的最大计数值,开启自动重装载功能。
生成MDK工程,并添加测试代码。打开main.c文件,开启定时器2,启动定时器14的PWM输出。
先将定时器2的计数值清零,延迟1s中,获取当前计数器2的值(单位时间内外部计数)。
打开time.c文件,设置PWM输出周期为5ms,定时器2每秒技术值应该为1000ms/5ms=200
查看定时器2的计数值,每秒钟计数值为200
修改PWM输出周期为10ms,定时器2的计数值应为每秒钟1000ms/10ms=100
查看定时器2的计数值,计数值为100
通过定时器的外部计数功能,可以统计输入的脉冲数,计算频率。这里用的系统自带的延迟函数,实际中可以在开启一个定时器,通过定时器的定时功能使外部计数更准确。