計數(shù)器/定時器的C編程
1。初始化步驟
1〉確定T/C的工作方式------編程TMOD寄存器。
D7 D6 D5 D4 D3 D2 D1 D0
GATE1 C/-T1 M11 M01 GATE0 C/-T0 M10 M00
C/-T:1——〉計數(shù)器;0——〉定時器
GATE:1——〉T/C的啟動受到雙重控制,即要求TR和-INT同時為高;
0——〉僅受TR控制
M1和M0:工作方式選擇位。 最大定時值(fosc=6MHz) 計數(shù)值
00:方式0,13位T/C,TL存低5位,TH 存高8位; 16.384ms 213=8192
01:方式1,16位T/C,TL存低8位,TH 存高8位; 131.072ms 65535
10:方式2,常數(shù)自動裝入的8位T/C 512us 256
11:方式3,只用于T/C0, TL0可作T/C,TH0只能作定時器,而T/C1用作串行口的波特率發(fā)生器
2〉計算計數(shù)初值,裝入TH,TL;
定時器方式下是對機器周期計數(shù)的, 一個機器周期為12/fosc
3〉T/C工作在中斷方式時,須開CPU中斷和源中斷,即設(shè)置IE寄存器
4〉啟動T/C——編程TCON中TR1或TR0位
D6:TR1 ;D4:TR0
擴展閱讀:單片機計數(shù)器和定時器有何區(qū)別?
編輯:admin 最后修改時間:2018-05-18