单片机定时器与数码管静态显示
很多新手在单片机上走的第一步是点亮第一个LED灯,实际上因为开发板的不同,所编写的代码也不同,关键是你要去了解你用的开发板的电路布局。
对于电路方面的知识我这里也不详讲,我要做的是无论你用哪一种开发板我的文章都能帮助你。
P0 = 0xFE;
这句代码大家不陌生。
void main(){
unsigned char count = 0;
while(1){
P0 = ~(0x01 =8){
count = 0;
}
}
}
以上就是实现流水灯的基本代码,这里没有电路供你分析,但是无论什么开发板,核心代码可以用以上代码实现。
我相信你能看到这里也是有点基础的,这里的延时函数Delay,接下来要讲的是定时器,定时器就是可以替代延时函数的。
定时器
标准的51单片机内部有T0和T1两个定时器,实际上就是TCON特殊功能的寄存器来控制这两个定时器的。
除此之外,定时值存储寄存器有TH和TL,给TL赋值后,TL会自动加1,加到255后TH加1,有趣的TH也可以提前赋值,但这只是定时器工作的一种模式,定时器有四种模式,这里我不祥讲,而且我们几乎用的模式就是这种,后面涉及到会详细讲解。
这里只需要知道TCON(地址0x88)位分配,以后会经常用到。
还有一个TMOC就是定时器作用的模式,位分配如下图:。