計數器定時器的實質是加1計數器(16位),由高8位和低8位兩個寄存器組成。TMOD是定時器/計數器的工作方式寄存器,確定工作方式和功能;TCON是控制寄存器,控制T0、T1的啟動和停止及設置溢出標志。
計數器定時器的工作原理:
計數器輸入的計數脈沖源
系統的時鐘振蕩器輸出脈沖經12分頻后產生;
T0或T1引腳輸入的外部脈沖源。
計數過程:
每來一個脈沖計數器加1,當加到計數器為全1(即FFFFH)時,再輸入一個脈沖就使計數器回零,且計數器的溢出使TCON中TF0或TF1置1,向CPU發出中斷請求。如果定時器/計數器工作于定時模式,則表示定時時間已到;如果工作于計數模式,則表示計數值已滿。
定時應用:
用作定時器:此時設置為定時器模式,加1計數器是對內部機器周期計數(1個機器周期等于12個振蕩周期,即計數頻率為晶振頻率的1/12)。計數值N乘以機器周期Tcy就是定時時間t 。
計數運用:
用作計數器:此時設置為計數器模式,外部事件計數脈沖由T0或T1引腳輸入到計數器。每來一個外部脈沖,計數器加1。但單片機對外部脈沖有基本要求:脈沖的高低電平持續時間都必須大于1個機器周期。