51微控制器系列知識4 並口 1

2021-07-10 02:26:54 字數 2046 閱讀 4281

l 51微控制器有4個並行輸入∕輸出口,每個口有8根口線,因而4個埠共有32根口線。每個都是雙向口,既可以做輸入口,又可以做輸出口用。每個口都包含乙個鎖存器和1個輸入緩衝器及輸出驅動器。(《單片微機實用技術》第二版.王桂良、孫明義編著.四川大學出版社)

1、 po口

l 埠和其中的鎖存器(p0~p3)有時的值是不同的(後面會說明原因),為方便起見,我們把4個埠和其中的鎖存器都一律表示為p0~p3。po口對應的專用暫存器的助記符是po,它是1個8位的專用暫存器,位元組位址是80h,可位定址。

l po口的結構:由乙個輸出鎖存器,2個三態緩衝器,乙個輸出驅動電路和乙個輸出電路組成。其中,輸出驅動電路有t0和t1組成,輸出控制電路由與門y,非門f和轉換開關mux組成,三態緩衝器由b1和b2組成,輸出鎖存器有d觸發組成。每位的結構見下圖。

l po的用途有兩種,一是作為通用i∕o口使用,二是作為位址資料匯流排使用,其工作原理如下:

(1)p0口作通用i∕o口使用

(2)po口作位址∕資料匯流排使用

分析:在訪問片外儲存器需要從po口輸出位址或資料訊號是,控制訊號電平為高電平「1」使轉換器開關mux把反相器與非門f相接通,同時開啟與門y。當位址∕資料為「1」,經反相器使t1截止,而經與門使t0導通,po.x引腳出現相應的高電平「1」,當位址資料線為「0」經反相器使t1導通,而t0截止,引腳上出現相應的低電平「0」。(這裡需不需要用到接上拉電阻?)這就將位址∕資料的訊號輸出。

(《微控制器原理及應用(嵌入式)》方華、許江淳 主編 重慶大學出版社)

情況2:從po口輸入資料,其工作過程與po口作通用i∕o口類似。

關cpu的控制訊號與轉換開關mux,cpu的控制訊號c=0、c=1只是用來控制轉換開關是與q接通還是與反相器f接通,並不代表開關上的實時電平,開關上的實時電平瘦q與相反器f控制。

當po口作通用i∕o口時,應注意以下幾點:

(1) 在輸出資料時,由於t0截止,輸出級是漏極開路電路,要使「1」訊號正常輸出,必須拉上拉電阻。

(2)po口作為通用i∕o口使用時,是準雙向的。其特點是在輸入資料時,應先把口置1(寫1),此時鎖存器的q為0,使輸出級的兩個場效電晶體t0、t1均截至,引腳處於懸浮狀態,才可做高阻輸入。因為,從po口引腳輸入資料時,t0一直處於截至狀態,引腳上的訊號既加在三態緩衝器b2的輸入端,又加在t1的漏極。假定在此之前曾輸出鎖存過資料為0,則t1是導通的,這樣引腳上的電位就始終被箝位在低電平,便使輸入的高電平無法讀入。因此,在輸入資料時,應人為地向口寫1,使t0、t1截至,方可高阻態輸入。這就p0稱為準雙向口的原因。但p0用作位址∕資料分時復用功能連線外部儲存器時,由於訪問外部儲存器期間,cpu會自動向p0口的鎖存器寫入0ffh,對使用者而言,po口此時是真正的三態雙向口。

(3)當po口作位址∕資料匯流排時,不能當通用i∕o使用。

補充:51微控制器有不少指令可直接進行埠操作,例如

anl  p0,a ;    (po)←(po)***(a)

orl   p0,#date;(po)←(po)*** date

del   po.     ;(po)←(po)-1

這些指令的執行過程分「讀—修改—寫」三步,先將po口的資料讀入cpu,在alu中進行運算,運算結果再送回po。執行此類指令,cpu是通過三態門b1讀回鎖存器q端的資料來代表引腳狀態。如果直接痛三態門b2從引腳讀回資料,有時會發生錯誤。

例如用一根口線去驅動乙個電晶體的基極,當向此口線輸出時,鎖存器q=1,t0導通驅動電晶體。當電晶體導通後,引腳上的電平被拉低到低電平(0.7v),因而,若從引腳直接讀回資料,原為1的狀態會錯讀為0,所以要從鎖存器q端讀取資料。

po作通用i∕o口使用,即准雙向口使用,當作輸入口使用時,使用前先向鎖存器寫「1」,使輸出級的兩個場效電晶體t0和t1均截至,然後做高阻抗輸入資料;當作輸出口使用時,輸出級屬於開漏電路,在驅動nmos電路輸入端時,需接外部上拉電阻才能正常。

by:霜月孤鳥

2016.2.22

51微控制器系列知識1 微控制器的內外結構

一 微控制器的典型結構 0.微控制器mcs 51原理及應用開發教程 晁陽。清華大學出版社 1 微控制器的內部結構 處理器 儲存器內部匯流排 i o介面 並行介面 穿行介面 中斷系統 特殊功能部件 時鐘電路 布林處理器 定時器 計數器 a d d a轉換器 直接儲存器訪問通道dma.pwm.wdt 內...

51微控制器系列知識13 1206LCD 1

在微控制器的人機交流介面中,一般的輸出方式有以下幾種 發光管 led數碼管 led點陣 液晶顯示器。本主題重點討論液晶顯示器。1.在微控制器系統中應用晶液顯示器作為輸出器件有以下幾個優點 1 顯示質量高 由於液晶顯示器每乙個點在收到訊號後就一直保持那種色彩和亮度,恆定發光,而不像陰極射線管顯示器 c...

51微控制器 51系列微控制器的開發模板

這個是微控制器開發的模板,下面給些注釋和思路,開發的時候其實是經常使用的,之前也不懂,參加藍橋杯之後學習到的,如果有時間和機會,會結合前輩的這些思路,再寫個stm32和嵌入式下的開發模板,這個很有利於專案的設計開發。說明 適用於stc15f2k60s2微控制器,其他的類似,只需要改動相關的定時器設定...