利用51单片机定时器实现时实时钟功能(汇编)
答案:3 悬赏:10 手机版
解决时间 2021-03-10 08:38
- 提问者网友:富士山上尢
- 2021-03-09 10:11
先谢过各位高手的解答了!本人初学单片机
最佳答案
- 五星知识达人网友:一袍清酒付
- 2021-03-09 10:51
51单片机有两个16位的定时器,若果采用方式1的话,计时16位,最大计时时间
65536*1us=65.36ms,一个定时器 计时,一个定时器计数,完成一次的时间
65.36ms*65536大于一个小时的时间,去适当的值,定时一周期一个小时,
然后循环,在定时的过程中,把定时的秒数分别转化成小时,分钟和秒用LED显示,就行了。编程也很简单,书上第五,六章有定时器的用法。
65536*1us=65.36ms,一个定时器 计时,一个定时器计数,完成一次的时间
65.36ms*65536大于一个小时的时间,去适当的值,定时一周期一个小时,
然后循环,在定时的过程中,把定时的秒数分别转化成小时,分钟和秒用LED显示,就行了。编程也很简单,书上第五,六章有定时器的用法。
全部回答
- 1楼网友:妄饮晩冬酒
- 2021-03-09 13:03
随便举个例子:
//定时器中断 10ms中断一次
void timer0_isr(void) interrupt 1
{
if(flag == 0)
{
//这里是第一件事情
flag = 1;//在主程序处理完第一件事,将此标记清除
}
if (++uccount == 100) //累加100次达到1秒
{
uccount = 0; //复位计数
ioled = !ioled; //这是第二件事情,实现led闪烁
}
}
- 2楼网友:神的生死簿
- 2021-03-09 11:53
如果你是初学,就从简单的开始吧,一步一步来才行,让别人给你写的话,你领悟不到其中的奥妙的!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯