完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 forrest1234 于 2016-10-18 09:26 编辑
程序如下: if(IRCON>0)// { IRCON=0; counter++; if(counter==8) { counter=0; LED2=LED1; LED3=!LED2; LED1=!LED1; //其实这里的定时时间由128分频下(自由运行模式),每一次定时器中断可以产生的定时时间是0.5s,简单计算可知如在32分频下,每一次定时间器中断就是0.125s,那如果定时1s呢?是不是需要定时器中断的次数就是8呢,因此在上面的程序中会出现 if(counter==8),这里的意思就是如果counter里的值不满足8的话LED的状态是不会改变的,也就是说定时器中断产生8次才会程序才会执行到灯的状态取反的这一过程。 关于128分频下是如何定时0.5s的可以参考下这个帖子:https://bbs.elecfans.com/jishu_941961_1_1.html |
|
相关推荐 |
|
只有小组成员才能发言,加入小组>>
12142 浏览 2 评论
4475 浏览 3 评论
3706 浏览 5 评论
9575 浏览 47 评论
4517 浏览 9 评论
716浏览 0评论
522浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-28 14:11 , Processed in 0.550535 second(s), Total 73, Slave 55 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号