单片机/MCUwilliam hill官网
直播中

蒋美燕

7年用户 895经验值
私信 关注
[问答]

怎么编程去计算51单片机某个io口的输入高低电平时间?

本人是个新手刚刚接触51单片机,怎么编程去计算51单片机某个io口的输入高低电平时间,比如我从P1.0口输入了一个方波信号,那么怎么通过单片机编程去检测我这个方波高电平的时间(或者说长度),还有低电平的时间(或者说长度),这个检测时间要精确到ms。         

回帖(1)

倪驰銮

2023-10-20 11:19:40
通过外部中断和定时器计算时间,原理就是下降沿触发中断后立马开启定时器,然后在主循环里面判断io电平变高就停止计时,这个计数器就是脉宽长度,还要考虑计数器溢出次数一起计算,注意这种测量一定要用外部晶振比较精确   
举报

更多回帖

发帖
×
20
完善资料,
赚取积分