<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

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

51單片機在片設備與中斷(1)

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

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

  5. P3口相應的端口線(xiàn)處于第二功能,應滿(mǎn)足的條件是:

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

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

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

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

定時(shí)/計數器4種工作方式的特點(diǎn)

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

定時(shí)器初值的計算

定時(shí)時(shí)間的計算公式為:

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

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

T0:計數器計數脈沖的周期,即單片機系統主頻周期的12倍;

M:計數器在相應工作方式下的計數模值;

TC:定時(shí)器需要預置的初值。

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

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

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

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



關(guān)鍵詞: 51單片機在片設備中

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>