51單片機在嵌入式系統中有著廣泛的應用,幾乎所有嵌入式系統中都會使用到定時器模塊。前幾天有用戶問51單片機有幾個16位定時器,一起來了解一下吧。
51單片機有幾個16位定時器
在了解51單片機的定時器之前,首先需要了解什么是定時器。定時器是用于計時和計數的計時器,它們可以產生中斷以響應計時周期結束和預設的計數閥值。定時器還可以用于生成PWM(脈沖寬度調制)信號。
51單片機有幾個16位定時器
51單片機有4個定時器,分別是定時器0、定時器1、定時器2和定時器3。其中,定時器0和定時器1是16位計數器,定時器2和定時器3是8位計數器。
對于16位定時器,除了計時能力更強之外,在讀取定時器值和設置計時器初值時,需要分別對高8位和低8位進行操作。
定時器0
定時器0是51單片機中最常用的定時器之一。它有16位的計數器寄存器TH0和TL0。它可以被編程為工作在模式0~3。
模式0
13位定時器,TH0在 8 毫秒的溢出一次,TL0則為計時器低字節,從00H開始自動遞增。
模式1
16位定時器,TH0和TL0作為完整的計時器使用,可編程分成 1~65536 個計數器時鐘脈沖。
模式2
8位自動重新加載定時器,TH0為計時器初始值,TL0為計時器變量,用于縮小計數范圍。
模式3
兩個8位定時器計數器,TH0用作計時變量,TL0可以作為一個單獨的計數器使用。
除了以上模式外,它還可以以串行方式用作16位計數器或計時器。
當定時器0完成計時操作時,將向中斷控制器發出中斷請求。在中斷服務程序中,可以讀取計時器的值和設置計時器初值。
定時器1
與定時器0類似,定時器1也有16位的計數器寄存器TH1和TL1。它可以被編程為工作在模式0~3。
模式0
13位定時器,TH1在 8 毫秒的溢出一次,TL1則為計時器低字節,從00H開始自動遞增。
模式1
16位定時器,TH1和TL1作為完整的計時器使用,可編程分成 1~65536 個計數器時鐘脈沖。
模式2
8位自動重新加載定時器,TH1為計時器初始值,TL1為計時器變量,用于縮小計數范圍。
模式3
兩個8位定時器計數器,TH1用作計時變量,TL1可以作為一個單獨的計數器使用。
除了以上模式外,它還可以以串行方式用作16位計數器或計時器。
當定時器1完成計時操作時,將向中斷控制器發出中斷請求。在中斷服務程序中,可以讀取計時器的值和設置計時器初值。
在51單片機中,有4個定時器,其中定時器0和定時器1是16位計數器,定時器2和定時器3是8位計數器,在實際使用中,可以被編程為不同的模式。
聲明:網站文章由長龍鑫電子http://www.hc118.cn/原創或轉載自其他自媒體,引用或轉載本文內容請注明來源!
Copyright ? 2002-2022 長龍鑫 版權所有 Powered by EyouCms 地址:廣東省深圳市寶安區新安街道創業二路 新一代信息技術產業園C座623號 備案號:粵ICP備17052896號 網站地圖