聯系贛鑫
18069884716 18069884716
杭州市濱江區浦沿工業園園區中路(至仁街)22號泰衡大樓2號樓3樓
led-gift@gxleds.net
51單片機/計數器基礎知識介紹
一、基本概念
1、89C51有兩個計數器T0和T1,89C52還有一個T2。每個計數器都是由兩個8位的RAM
2、提供給定時器的計數源又是從哪里來的呢?就是由單片機的晶振經過12
3、預置數計數法。如果每個脈沖是1微秒,則計滿65536個脈沖需時65.536毫秒。但是如果只需要10毫秒就可以了,怎么辦?只要在計數器里預先放進55536,這樣只需要計數65536-55536=10000次,也就是10毫秒了。
二、相關寄存器
特殊功能寄存器TMOD(89H)
GATE
GATE:0用于內部脈沖;1用于外部脈沖。
C/T:0用于定時器;1用于計數器。
M1M0:工作方式
M1,M0
0,0工作方式0
0,1工作方式1
1,0工作方式2
1,1工作方式3
特殊功能寄存器TCON(88H)
TF1
TR0/TR1:定時器 的開關。
TF0/TF1:計數溢出后由0變為1
IT0/IT1:定時器/計數器中斷允許位。
在今天的分享中我們學習下單片機/計數器的使用,在前面的分享中我們接觸到了單片機時鐘周期、機器周期和指令周期的概念,我們再溫習下:
為了計數器定時器工作,需要預先填充定時器初值(初值=定時器計數最大計數次數-所需定時計數次數)。所以需設置定時器初值 15536=65536-50000,即3CB0H(10進制15536轉換成16進制數3CB0),所以TH0=0x3c,TL0=0xb0,高位就是 TH0的值,低位為TL0的值。
#include
void
{
}
void
{
}
void
{
}
另外,單片機定時器/計數器的使用不單單體現在定時器中斷方面,但它們的使用都萬變不離其綜,大家掌握了一種用法,對于其它的應用也就不難掌握了。