可編程計數(shù)計時器ct系列的定時應(yīng)用技術(shù)分析使用可編程計數(shù)計時器ct系列可以得到高精度可控的計時時間,操作簡單方便,因此得到廣泛應(yīng)用。
單片機的內(nèi)部計數(shù)器是一個可編程計數(shù)計時器,它既可以工作在13位定時方式,也可以工作在16位定時方式和8位定時方式。只要通過設(shè)置特殊功能寄存器tmod,即可完成。定時/計數(shù)器何時工作也是通過軟件來設(shè)定tcon特殊功能寄存器來完成的。
to產(chǎn)生一秒的定時時間,作為秒計數(shù)時間,當一秒產(chǎn)生時,秒計數(shù)加1,秒計數(shù)到60時,自動從0開始。
程序設(shè)計:
選擇16位定時工作方式,對于t0來說,大定時也只有65536us,即65.536ms,無法達到我們所需要的1秒的定時,因此,我們必須通過軟件來處理這個問題,假設(shè)我們?nèi)0的大定時為50ms,即要定時1秒需要經(jīng)過20次的50ms的定時。對于這20次我們就可以采用軟件的方法來統(tǒng)計了。
因此,我們設(shè)定tmod=00000001b,即tmod=01h;
下面給t0可編程計數(shù)計時器的th0,tl0裝入預置初值,通過下面的公式可以計算出:
th0=(65536-50000)/256;
tl0=(65536-50000)mod 256。
當t0在工作的時候,我們?nèi)绾蔚弥?0ms的定時時間已到,通過檢測tcon特殊功能寄存器中的tf0標志位,如果tf0=1表示定時時間已到。