完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
中断设置双沿触发,打开一个定时器,这个定时器在自由跑的模式下运行。
当来中断的时候,在中断服务程序中先判断当前的IO口的电平是高还是低,判断后读取定时器的计数值作为电平的起始计数值,等待第二次中断到来,判断当前IO口的电平,如果电平有翻转,那么记录定时器的计数值,并于上一次的定时器计数值进行计算(注意查询溢出标志位),得到上次电平的具体计数时钟的个数,通过设置的定时器的时钟,计算出具体的电平时间。然后把第二次得到的计数值赋值给第一次取计数值的变量。 两点注意:1.中断设置双沿触发,因为有电平的变化,所以你要考虑清楚,当判断到下降沿的时候(即IO口是低电平的时候)是这个IO口为高电平的结束点,这时候参与计算得到的数值是高电平的宽度。 2.定时器的设定,你要大概知道这个电平的宽度最小是多少,尽量要求定时器跑的慢,因为定时器如果溢出,标志位会被置位,如果再次溢出,标志位是不会有变化的,也就是说,即使定时器多次溢出,也只能读到一个标志位,这样的话,会影响到检测的结果。 大概就是这么一个思路。应该可以满足你的目的。 |
|
|
|
只有小组成员才能发言,加入小组>>
请问一个迭代法图形二值化的程序代码把宽改成240之后整个屏幕不显示是什么原因?
2644 浏览 0 评论
2632 浏览 1 评论
1869 浏览 1 评论
2026 浏览 2 评论
2587 浏览 2 评论
679浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 23:49 , Processed in 0.705938 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号