定時器是一種用于控制時間的儀表,隨著科學技術的提升,人們對定時器不斷進行改進升級,現在已經可以達到準確控制時間的目的了。定時器的出現給人們生活帶來了極大的便利,無論是在工控領域還是軍事領域,定時器都有非常廣泛的應用。今天這篇文章就為大家介紹一下
單片機定時器的工作原理。
一、什么是單片機定時器 單片機定時器其實跟我們平時常說的計數器,是同一個電子元件,只不過計數器記錄的是單片機外部情況,所接收的也是外部脈沖,而定時器則是由單片機自身提供的一個非常穩定的計數器,這個穩定的計數器就是單片機上連接的晶振部件。
二、單片機定時器的類型 在單片機中,分為軟件定時器,不可編程硬件定時器,可編程定時器。
1、軟件定時:CPU每執行一條指令時,是需要固定時間的,所以,通過執行空指令可以達到延時的效果,這樣子做的代價是占用CPU時間,所以一般很少這么做。
2、不可編程硬件定時器:是由電路和硬件來完成定時功能的,一般采用基本電路,外接定時部件(電阻和電容),通過改變電阻的阻值和電容的電容值來修改定時值,一旦確定后件不能通過軟件修改,這樣子做的優點是不需要占用CPU時間。
3、可編程定時器:通過軟件來確定定時值及其范圍,可編程定時器功能強大,靈活性高。這是本文詳細講解的定時器。
三、單片機定時器工作原理 定時器的核心是一個加1計數器,在作定時器使用時,它對機器周期進行計數,每過一個機器周期計數器加1,直到計數器計滿溢出。當它用作對外部事件計數時,計數器接相應的外部輸入引腳T0(P3.4)或T1(P3.5)并在每個機器周期的S5P2時采樣,當采樣到1—0的負跳變時,計數器加1。
所以,單片機定時器的工作原理本質上是一個計數器。每次脈沖下降時,計數寄存器值將增加1。如果計數脈沖來自單片機內部的晶體振動,則稱為定時器;如果計數脈沖來自單片機外部的引腳,則稱為計數器。