新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 51單片機(jī)在片設(shè)備與中斷(1)

51單片機(jī)在片設(shè)備與中斷(1)

作者: 時間:2016-11-26 來源:網(wǎng)絡(luò) 收藏
并行端口要點
  1. MCS-51單片機(jī)內(nèi)部有4個8位的并行I/O口P0、P1、P2、P3。其中P3口、P2口、P1口為準(zhǔn)雙向口,P0口為雙向的三態(tài)數(shù)據(jù)線口。各端口均由端口鎖存器、輸出驅(qū)動器、輸入緩沖器等構(gòu)成。各端口除可進(jìn)行字節(jié)的輸入/輸出外,每個位口線還可單獨用作輸入/輸出,實際應(yīng)用非常方便。
  2. 對并行I/O口的“讀—修改—寫”類指令(例如CPL P0.0、ANL P1,#0FH等)實際是讀出對應(yīng)的端口鎖存器的內(nèi)容,執(zhí)行修改后再寫回到端口鎖存器中。之所以是“讀鎖存器”而不是“讀引腳”,是為了避免因引腳外部電路的原因而使引腳的狀態(tài)發(fā)生改變而造成誤讀。
  3. P0口是一個三態(tài)雙向I/O口,在需要進(jìn)行外部ROM、RAM等擴(kuò)展時,采用分時復(fù)用的方式,通過地址鎖存器后作為地址總線的低8位和8位數(shù)據(jù)總線;在不需要進(jìn)行外部ROM、RAM等擴(kuò)展時,作為通用的I/O口使用。P0在用作通用輸出口時必須外接上拉電阻,用作輸入口時,則必須先把鎖存器寫入1。P0口的輸出級具有驅(qū)動8個LSTTL負(fù)載的能力。

    本文引用地址:http://butianyuan.cn/article/201611/321803.htm
  4. 當(dāng)不需要在單片機(jī)芯片外部擴(kuò)展程序存儲器,只需擴(kuò)展256字節(jié)的片外RAM時,訪問片外RAM就可以利用“MOVX A,@Ri”,“MOVX @Ri,A”類指令來實現(xiàn)。這時只用到了地址線的低8位,P2口不受該類指令的影響,仍可以作為通用I/O口使用。

  5. P3口相應(yīng)的端口線處于第二功能,應(yīng)滿足的條件是:

    串行I/O口處于運行狀態(tài)(RXD,TXD)。

    外部中斷已經(jīng)打開(INT0、INT1)。

    定時/計數(shù)器處于外部計數(shù)狀態(tài)(T0、T1)。

    執(zhí)行讀/寫外部RAM的指令(RD、WR)。

定時/計數(shù)器4種工作方式的特點

  1. 方式0是13位計數(shù)器,最大計數(shù)值213=8192,計數(shù)范圍比方式1小,計算定時初值比較麻煩,容易出錯,與方式1比較無任何優(yōu)點(設(shè)計初衷是為了兼容更早的48系列單片機(jī))。
  2. 方式1是16位計數(shù)器,最大計數(shù)值為216=65536,計數(shù)范圍大,適用于定時范圍較大的應(yīng)用場合。
  3. 方式2是8位計數(shù)器,最大計數(shù)值是28=256,缺點是計數(shù)范圍小,優(yōu)點是定時初值可自動恢復(fù),適用于需要重復(fù)定時,而定時范圍還不大的應(yīng)用場合。
  4. 方式3是8位計數(shù)器,僅適用于T0,T1無方式3。T0方式3時,被拆成兩個獨立的8位計數(shù)器TH0、TL0:TL0使用T0原有的控制寄存器組成一個8位的定時/計數(shù)器;TH0借用T1的TF1、TR1,只能對機(jī)內(nèi)機(jī)器周期脈沖計數(shù),組成另一個8位定時器。T0方式3時T1方式2作串行口波特率發(fā)生器。

定時器初值的計算

定時時間的計算公式為:

T=(M-TC)×T0(或TC=M-T/T0)

其中 T:定時器的定時時間,即設(shè)計任務(wù)要求的定時時間;

T0:計數(shù)器計數(shù)脈沖的周期,即單片機(jī)系統(tǒng)主頻周期的12倍;

M:計數(shù)器在相應(yīng)工作方式下的計數(shù)模值;

TC:定時器需要預(yù)置的初值。

若設(shè)初值TC=0,則定時器定時時間為最大。當(dāng)單片機(jī)系統(tǒng)主頻為12MHz時,各種工作方式下定時器的最大定時時間為:

工作方式0Tmax=2^13×1us=8.192ms

工作方式1Tmax=2^16×1us=65.536ms

工作方式2和3:Tmax=2^8×1us=0.256ms



評論


技術(shù)專區(qū)

關(guān)閉