新聞中心

51單片機-IO口

作者: 時間:2016-12-02 來源:網(wǎng)絡 收藏
IO口寄存器是RAM中的一些特殊功能單元,映射到片上外設相應的功能。如P0就是寄存器的變量,代表的是一個8位的存儲空間,它的每一位映射到單片機的P0口的每一位。寄存器是程序,單片機以及外設口發(fā)生聯(lián)系的橋梁。IO口是可以將“0”或“1”轉(zhuǎn)換為電壓信號的端口。單片機中最常用的TTL電平:0V代表“0”,+5V代表“1”。MCS51有4個8位IO口:P0,P1,P2,P3,每個IO口有8位。

IO口的性能指標: 灌電能力:能夠流入IO口的最大電流 拉電能力:能夠從IO口流出的最大電流 上拉電阻與下拉電阻 最大輸入電壓



輸入口接了一個大于10M歐的電阻,輸入+5V或0會產(chǎn)生微弱的電流。

IO口的輸出:



MCS51的拉電流能力<100us,灌電流能力10ms。使用MCS51的IO口直接驅(qū)動LED,數(shù)碼管等均采用“共陽接法”
IO口的輸入:



MCS51的IO口輸入狀態(tài)時有若上拉電阻效應,值為100K數(shù)量級,最大輸入電壓-0.5V"Vcc+0.5V
C語言,IO口寄存器與IO口的映射:



IO口與IO寄存器的映射(X代表0"3)

IO口寄存器:Px,P0,P1,P2,P3這是4個51單片機寄存器的名稱。這些寄存器相應的位發(fā)生改變,就會引起IO對應引腳上物理電平,物理電壓的變化。reg52.h這個文件中將所有寄存器映射為同名的變量,對這些變量的讀寫相當于對寄存器的讀寫,對寄存器的讀寫就相當于對IO口的讀寫。

輸出狀態(tài)IO寄存器的設置

PX某一位置1或0,對應IO口相應位的電平高低,在讀取PX某一位之前,要向該為寫入1,然后讀回的數(shù)據(jù)真實的反映該為IO的輸入狀態(tài)。如果使用匯編寫需要這樣做,如果使用C寫,編譯器會自動完成寫1操作。


評論


技術專區(qū)

關閉