完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
这是我有疑问的一段程序,我的问题在下面 程序中的蓝色字体描述了,望高手赐教,谢谢!!! void timer_init() //定时器初始化函数 { TMOD = 0x10; //timer定时器工作模式1,16位 TH1 = 0x4b; TL1 = 0xfe; //定时50ms 装载的初值 TR1 = 1;//启动定时器 } void main() { while(1) { timer_init(); //定时器初始化(这个地方,为什么放到while(1)上面数码管就正常显示,放到这个位置数码管就只能显示00) if(TF1 == 1) { TF1 = 0; TH1 = 0x4b; TL1 = 0xfe; //重新装载初值 counter++; } |
|
相关推荐
2个回答
|
|
|
定时器初始化程序只需在main程序开始执行1次,你放到while(1)死循环里面1ms被重新初始化N次,永远也等不到定时器溢出标志TF1为1。if(TF1 == 1)花括号里语句不会被执行。
最佳答案
|
|
|
|
|
wulinwl 发表于 2018-1-5 19:13 谢谢你的解答,受教了。 |
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
有人有STM8H1K08T连接TM1650的源码吗,可以直接使用的那种,我的代码在烧录之后数码管一直处于熄灭状态
271 浏览 0 评论
【瑞萨RA6E2】瑞萨E2S软件安装过程,等待过程玩下97_e2 studio_ZGZZ
493 浏览 0 评论
589 浏览 0 评论
【原创】【RA4M2-SENSOR开发板评测】低功耗+USB综合测试
891 浏览 0 评论
1436 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16927 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-4 11:35 , Processed in 0.614050 second(s), Total 75, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1948