51单片机常用知识点总结
這兩天復習了51的基礎,基礎不牢地動山搖,理清了一些東西
首先是定時器
定時器/計數器
定時器很重要,單片機的心臟
首先幾個概念
時鐘頻率:fosc(晶振提供,51一般是12Mhz,11.0592Mhz這兩種)
12分頻:fosc/12(這里我設為fT)
機器周期:T=1/fT
定時器就配置兩種,
第一是工作模式:定時器/計數器
第二是四種工作方式
然后是兩個寄存器
TMOD&TCON
工作方式寄存器和控制寄存器
工作方式寄存器TMOD
(修改T2為T0)
(1)GATE——門控位
GATE=0時,僅由控制位TRX(X=0,1)來啟動定時器/計數器運行。
GATE=1時,由TRX(X=0,1)和中斷引腳(INT0和INT1)上的高電平共同來啟動定時器/計數器運行。
(2)M0、M1——工作方式選擇位
M0、M1共有四種編碼,對應于4種工作方式。對應關系
| 0 | 0 | 方式0,為13位定時器/計數器 |
| 0 | 1 | 方式1,為16位定時器/計數器 |
| 1 | 0 | 方式2,8位初值自動重新裝入的8位定時器/計數器 |
| 1 | 1 | 方式3,僅適用于T0,分為兩個8位計數器,T1停止計數 |
(3)C/T——計數器模式和定時器模式選擇位
C/T=0,為定時器模式
C/T=1,為計數器模式,計數器對外部輸入引腳T0(P3.4腳)或T1(P3.5腳)的外部脈沖(負跳變)計數。
定時器/計數器控制寄存器TCON
TCON的字節地址為88H,可進行位尋址,位地址為88H~8FH。
低四位和中斷有關,高四位
(1)TF0,TF1——T0,T1計數溢出標志位
當計數器計數溢出時,該位置“1”。使用查詢方式時,此位作為狀態位供CPU查詢,但應當注意在查詢該位有效后應當以軟件方法及時將該位清0.使用中斷方式時,此位作為中斷申請標志位,進入中斷服務程序后由硬件自動清0.
(2)TR0,TR1——計數運行控制位
TR1位(或TR0位)=1,啟動定時器/計數器工作的必要條件,還與GATE位有關。
TR1位(或TR0位)=0,關閉定時器/計數器工作。
關于幾個工作方式的初值計算
第一個工作方式是一個13位的定時器
它的最大值是213=81922^{13}=8192213=8192
初值計算就是
比如要定時1ms
1ms是時間,對應的就是單片機走多少步
首先計算出一步是多少時間,就是機器周期12/fosc
就可以算出一共是fosc/(12*1000)步
用定時器的最大值減去這個步數就是定時器初值
第二個工作方式同理
第三個是自動重裝載,它高位和低位寄存器的值都是一樣的
總結
以上是生活随笔為你收集整理的51单片机常用知识点总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: stm32 systick定时器
- 下一篇: MPU6050学习