制造好一个电子时钟时,单片机就差不多学会了80%,这个电子钟能够显现时刻而且能够调理时刻的秒,分,时。单片机首要的效果便是守时和中止,怎么充分利用好这两个方面便是学习的要点。首要介绍下中止,中止便是指你在履行一个指令的时分忽然要履行另一个指令时就要先将指令暂停先去履行另一个指令,当另一个指令完结时再回来完结中止前的指令。单片机含有5个中止,外部中止0和1,守时器/计数器中止0和1,串行口中止。要履行中止时就要翻开总中止EA,将EA=1(高电平),在数字电路中1代表高电平,0代表低电平。总中止开完后,假设要开守时器中止0的话就输入ET0=1;再将TR0=1;这就敞开了守时器0的中止(简略吧)。中止条件条件:1,有中止请求(下面讲),开总中止EA=1,开中止源中止(ET0=1)。关于中止的具体说明咱们能够检查www.51hei.com单片机网主页上的第18课。
守时器有四种方法,我就用了方法1来写电子钟。怎么守时呢?先声明守时器工作方法TMOD,守时器0为低四位,守时器1为高四位。GATE大多数状况为 0(不具体介绍),C/T为0时是守时器,1为计数器。咱们选工作方法1所以第二位为01,所以TMOD=0x01;后边咱们要装初值也便是要往守时器 16位中装初始值,因为单片机一个机器周期约为1微秒,一个机器周期守时器加1个值,TH0为守时器0的高8位,TL0为低八位。咱们都知道一个字节为最大值为65535,所以假设你要守时50ms的话就要装65535-50000的值。只装满后就溢出履行中止(我就大约的介绍下)。中止出去后履行一个中止函数大约局势为
TMOD=0x01;
TH0=0x4c;
TL0=0x00;
EA=1;
ET0=1;
TR0=1;
void timer0() interrupt 1
{
TH0=0x4c;
TL0=0x00;
}
}
接下来我要写我电子钟的程序,这个程序还没彻底写好,还差一个I^2c总线断电数据保存的程序,今后再弥补。单片机不同端口具有不同的效果,当咱们向端口输入不同的凹凸电平常就有不同的效果,这儿咱们用到了液晶屏的操控,守时器,中止体系,键盘。今后改善会用到蜂鸣器,I^2c总线。额,电脑要没电了
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/5g/318481.html