完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
定时器0工作在2模式下,采用中断计时,计数满100,p0口0位改变电位。
示波器显示周期为51.2ms,为什么去掉while(1){ },周期变为512us,求解释。 还有就是定时器在工作的时候,能不能对TH0,TL0进行赋值。 #include ***it p00=P0^0; static unsigned int i; void main() { EA=1; ET0=1; TMOD=0x02; TR0=1; TH0=0;TL0=0; while(1){ } } void T0_int () interrupt 1 {i++; if(i>=100){i=0;p00=!p00;} } |
|
相关推荐
12个回答
|
|
谢谢 学习
|
|
|
|
正在学习
|
|
|
|
支持下
|
|
|
|
可以赋值啊,也可以在中断里面赋值
|
|
|
|
|
|
|
|
while(1){ },你把这句 取消后,输出信号不是由定时器控制的了,是程序不停在跑飞,复位给出的信号!
|
|
|
|
程序跑飞?怎么周期正好是1000倍啊。main()里面的语句是不是执行完最后一行就接着从main()第一条语句重新循环? |
|
|
|
理论上是执行完最后一句后就从第一句重新开始执行。但是这并没有可靠的依据。 |
|
|
|
同意楼上 的说话 所以经常要用死循环的啦
|
|
|
|
对定时器TH0 TL0赋值一般是在子函数中赋值,楼主的程序TH0 TL0都赋值为0.这部感觉没必要。赋值的意思就是定时器在多久后要开始工作。
|
|
|
|
while去掉就程序就等于是死掉了,8位工作方式只需要赋值一次就够了啊
|
|
|
|
请问一下,如果没有while(1);这条语句的话,程序在从main()函数往下运行的时候,遇到中断,并且在执行完中断函数后,下一步要返回主函数继续运行,请问他是从主函数哪里继续运行下去?我这个地方不是很理解啊,求指教。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
使用Keil建立完整的工程,并使用外部中断0触发数码管显示903
418 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-使用AHT20进行环境监测之AHT20传感器介绍
1083 浏览 0 评论
846 浏览 0 评论
886 浏览 1 评论
基于瑞萨FPB-RA4E2智能床头灯项目——1编译环境搭建与点亮驱动ws2812全彩LED
882 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11824 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-30 15:24 , Processed in 0.870039 second(s), Total 64, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号