並行I/O口

開篇

MCS51單片機有4個8位的並行I/O端口,分別爲P0、P1、P2、P3。
每個端口都包括一個同名的特殊功能寄存器、一個輸出驅動器和輸入緩衝器。

講解順序爲 P1–> P3 --> P0 --> P2

P1口

P1 口具有通用I/O口方式,可實現輸出,讀引腳(輸入)和讀鎖存器三種功能。

輸出方式:

單片機執行寫P1口的指令(就是你的C51程序命令),如果你讓某位的數據爲1,根據高1低0,那麼可判斷輸出爲高電平,反之爲低電平。 (詳解:如果某位的數據爲1,則該爲鎖存器輸出端Q=1–>-Q=0 --> V截止,從而在引腳上P1.n 上輸出高電平。)
在這裏插入圖片描述

讀引腳方式:

在讀引腳之前,爲了防止V接通零線變成低電平,所以在讀引腳之前,必須先用輸出指令置Q=1,_Q爲0讓V截止。以免出現外面(輸入的數據)是高電平,讀進來是低電平。
解釋完這裏,輸出方式那裏也是融會貫通了。
在這裏插入圖片描述

因爲P1口作爲輸入口時是有條件的(要先寫1),而輸出時是無條件的,因此,被P1口被稱爲準雙向口。

讀鎖存器:

在這裏插入圖片描述

P3口

P3口的特點:

除通用的I/O口功能外(P1口的功能),還能實現第二功能口功能。
在這裏插入圖片描述
P3口作爲準雙向通用口,作爲通用輸入口時應先先使P3.n–>1 ,作爲通用輸出口時應先使第二輸出 端–>1.

P0口

P0口的功能:

在CPU控制信號的作用下,可以作爲通用的I/O口進行數據的輸入輸出,也可以作爲單片機系統的地址/數據線使用。
在這裏插入圖片描述
作爲通用I/O口使用:CPU使控制端保持“0”電平
在這裏插入圖片描述


P0口的重點:

科普:漏極開路輸出一般情況下都需要外接上拉電阻,才能輸出高電平。

在使用I/O口功能時,爲了能正常改變電平的變化,需要外接一個上拉電阻。地址/數據分時複用方式時無需外接上拉電阻;

P0口具有地址/數據分時複用方式,可實現地址/數據輸出、數據輸入兩種功能;

分時複用方式的數據輸入時無需程序寫1操作。

P2口

在這裏插入圖片描述

P2口的功能特點

在這裏插入圖片描述

與P1口相比就多了數據控制單元、一個多路開關MUX。P2可以實現通用I/O口和地址輸出兩種功能。

工作方式:

用作通用I/O口時,在“控制端”的作用下,多路開關向下打連接至鎖存器實現通用功能。

在這裏插入圖片描述

注意:用作通用I/O口時,P2口無需外接上拉電阻。

用作地址輸出時,MUX在CPU的控制下轉向“地址線”一端,使“地址端”信號與P2.n電平同 相 變化。
在這裏插入圖片描述

總結

1.P0~P3口 都可作爲準雙向通用I/O口;
2.其中只有P0口需要外接上拉電阻;
3.在需要擴展片外設備時,P2口可作爲其地址線接口;
4.P0口可作爲其地址線/數據線複用接口,此時它是真正的雙向口。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章