完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本人现在正在学习单片机,在学习定时器时遇到点问题,求高手指点。
下面是我写的一个程序,定时器0控制LED2每一秒闪一次,定时器1控制LED1前5秒灭,后10秒亮,预期效果应该是LED2闪第五次时LED1开始闪第一次,可为什么实验时LED2闪第三次LED1就开始闪了啊??求高手指点,多多感谢。。。 #include #define uint unsigned int ***it led1=P1^3; ***it led2=P1^7; uint num=0,num1=0; void main() { TMOD=0x11; TH0=(65636-50000)/256; TL0=(65636-50000)%256; TH1=(65536-50000)/256; TL1=(65536-50000)%256; EA=1; ET0=1; TR0=1; ET1=1; TR1=1; while(1); } void T0_time() interrupt 1 { TH0=(65636-50000)/256; TL0=(65636-50000)%256; num++; if(num==20) { num=0; led2=~led2; } } void T1_time() interrupt 3 { TH1=(65636-50000)/256; TL1=(65636-50000)%256; num1++; if(num1>300) num1=0; if(num1<100) led1=1; else led1=0; } |
|
相关推荐
4个回答
|
|
童鞋啊 你的led2=~led2 不是一秒闪一次 是每隔2秒闪一次 所以才会在第三次亮时 已经是5秒了。
|
|
|
|
童鞋啊 你的led=~led 是没两秒闪一次 不是一秒闪一次
|
|
|
|
|
|
|
|
啊啊啊。。对对对,是这样,谢谢你的指点,谢谢。。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
205 浏览 0 评论
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
1253 浏览 1 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
848 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
853 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
1073 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12013 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 07:59 , Processed in 0.730629 second(s), Total 74, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号