單片機輸入輸出接口_第1頁
單片機輸入輸出接口_第2頁
單片機輸入輸出接口_第3頁
單片機輸入輸出接口_第4頁
單片機輸入輸出接口_第5頁
已閱讀5頁,還剩37頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

單片機輸入輸出接口第一頁,共四十二頁,2022年,8月28日

輸入輸出接口的作用數據緩沖功能信號轉換功能接受和執行CPU命令的功能51單片機具有的輸入輸出接口:P0、P1、P2、P34個8位雙向I/O口

5.1P0-P3端口功能與內部結構第二頁,共四十二頁,2022年,8月28日P0.0~P0.7P0驅動器P2驅動器P2.0~P2.7P0鎖存器P2鎖存器暫存1RAMRAM地址寄存器EPROMROMACC暫存2寄存器BALUSP中斷、串行口及定時器模塊PSW定時及控制指令寄存器程序地址寄存器DPTRPCPC加1緩沖器P1鎖存器P3鎖存器P1驅動器P3驅動器P1.0~P1.7P3.0~P3.7振蕩器VccVssPSENALEEARSTXTAL1XTAL2圖1-1MCS-51總體結構框圖第三頁,共四十二頁,2022年,8月28日8051單片機的引腳12345678910111213141516171819204039383736353433323130292827262524232221P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RESETP3.0/RxDP3.1/TxDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RDXTAL2XTAL1GNDVccP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EAALEPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0圖1-128031,8051,8751芯片管腳圖第四頁,共四十二頁,2022年,8月28日MCS-51系列單片機有四組8位并行I/O口,記作P0、P1、P2和P3。每組I/O口內部都有8位數據輸入緩沖器、8位數據輸出鎖存器及數據輸出驅動等電路。四組并行I/O端口即可以按字節操作,又可以按位操作。當系統沒有擴展外部器件時,I/O端口用作雙向輸入輸出口;當系統作外部擴展時,使用P0、P2口作系統地址和數據總線、P3口有第二功能,與MCS-51的內部功能器件配合使用。第五頁,共四十二頁,2022年,8月28日P0口:地址(低8位)/數據時分復用口

普通I/O口

P1口:普通I/O口P2口:地址(高8位)普通I/O口5.1.1端口功能第六頁,共四十二頁,2022年,8月28日P3口是一個雙功能I/O口普通I/O口第二功能口

P3口的每一位都具有第二功能。P3.7P3.6P3.5P3.4P3.3P3.2P3.1P3.0RDWRT1T0INT1INT0TxDRxD

P3口的第二功能大多與其內部功能部件有關,RD、WR是外部數據存儲器的寫、讀控制信號。

第七頁,共四十二頁,2022年,8月28日8XX51單片機擴展程序存儲器2732的電路圖見圖

第八頁,共四十二頁,2022年,8月28日P0口圖1-5P0口的位結構第九頁,共四十二頁,2022年,8月28日P0口有兩種用途:普通I/O端口

當單片機系統沒有擴展外部芯片時,P0口用作雙向輸入輸出端口。這時圖中多路開關的控制信號為低電平,輸出與鎖存器的反向輸出端相連,同時上面的場效應管由于與門輸出為低電平而截止。①作輸出時:輸出0時,將0輸出到內部總線上,在寫鎖存器信號控制下寫入鎖存器,鎖存器的反向輸出端輸出1,下面的場效應管導通,輸出引腳成低電平。輸出1時,下面的場效應管截止,上面的場效應管也是截止狀態,輸出引腳成高阻態,不是希望的1狀態,這時,必須外加上拉電阻第十頁,共四十二頁,2022年,8月28日②作輸入時:P0端口引腳信號通過一個輸入三態緩沖器接入內部總線,再讀引腳信號控制下,引腳電平出現在內部總線上。為了能讀到真實的引腳信號,下面的場效應管必須截止,即鎖存器的內容必須是1。為了能正確讀取引腳信號,鎖存器必須先寫1,因而P0口是一個準雙向口。(讀引腳)

在圖的左上方有一個三態緩沖器,是為了讀取鎖存器內容而設。如指令:P0=P0|0XF0;將P0口的輸出狀態與0XF0按位或后再輸出到P0口,這里讀的數據是P0口鎖存器的內容,運算結果又寫入到P0口鎖存器。(讀鎖存器)第十一頁,共四十二頁,2022年,8月28日地址/數據復用總線 當單片機系統進行存儲器、I/O口或其它功能擴展時,P0口要用作系統總線。在P0口上分時輸出目標地址的低8位和要交換的字節數據。

用作地址/數據復用總線時,多路開關的控制信號為1,輸出與上方的地址/數據線反向器的輸出相連,由于控制信號為1,上面的場效應管受地址/數據信號控制,與下面的場效應管成為推挽輸出形態。外部不再需要上拉電阻,P0口為真正的雙向I/O口。

操作過程:假如要讀外部程序存儲器中0x1245單元的指令,首先從P0口輸出45H,P2口輸出12H,控制器輸出ALE地址鎖存信號,再發出指令輸出允許信號PSEN,外部程序存儲器0x1245單元的內容出現在總線上,由CPU讀入程序指令寄存器,譯碼執行。第十二頁,共四十二頁,2022年,8月28日P1口圖1-8P1口的位結構第十三頁,共四十二頁,2022年,8月28日P2口圖1-6P2口的位結構第十四頁,共四十二頁,2022年,8月28日P2口也有兩種使用方式做普通I/O口

這時,控制信號將驅動場效應管的反向器的輸入與P2口輸出鎖存器的Q端相連。當作輸出時與P0口類似,但P2口內部有上拉電阻,不需外接。當輸入使用時,輸出鎖存器也必須寫1。所以,P2口也是一個準雙向I/O口。作地址總線 當單片機系統進行存儲器、I/O口或其它功能擴展時,P2口要用作地址總線,輸出目標地址的高8位。這時控制信號將驅動場效應管的反向器的輸入與地址線相連。P2口沒有復用要求,所以外部不需地址鎖存器。應當注意:當P2口的幾位作地址線使用時,剩下的P2口線不能作I/O口線使用。

第十五頁,共四十二頁,2022年,8月28日P3口P3.X圖1-7P3口的位結構第十六頁,共四十二頁,2022年,8月28日P3口是一個雙功能I/O口若不設定自動處于第一功能普通I/O口 作普通I/O口時,選擇輸出功能端為高電平,場效應管受輸出鎖存器的控制,是一個準雙向I/O口。第二功能口

P3口的每一位都具有第二功能。P3.7P3.6P3.5P3.4P3.3P3.2P3.1P3.0RDWRT1T0INT1INT0TxDRxD第十七頁,共四十二頁,2022年,8月28日歸納四個并行口使用的注意事項如下:1。如果單片機內部有程序存貯器,不需要擴展外部存貯器和I/O接口,單片機的四個口均可作I/O口使用。2。四個口在作輸入口使用時,均應先對其寫“1”,以避免誤讀。3。P0口作I/O口使用時應外接10K的上拉電阻,其它口則可不必。4。P2可某幾根線作地址使用時,剩下的線不能作I/O口線使用。5。P3口的某些口線作第二功能時,剩下的口線可以單獨作I/O口線使用。第十八頁,共四十二頁,2022年,8月28日5.2編程舉例例5.1例5.2#include“reg51.h”main(){P1=0xff;

while(1){P1=P1<<4;

P1=P1|0x0f;}}第十九頁,共四十二頁,2022年,8月28日

LED正偏時才能發亮,按電路接法,當P1.0輸出“1”,LED正偏而發亮,當P1.0輸出“0”,LED的兩端電壓為0而熄滅。

LED+5VVcc--EARST10uF1KP1.089S51P1.11K30P30PXTAL1XTAL2GND89C51+5VVcc--EARST10uF1KP1.089S51+5VP1.11K30P30PXTAL1XTAL2GND89C51K第二十頁,共四十二頁,2022年,8月28日

例5-2.在圖5.3中P1.4~P1.7接四個發光二極管LED,P1.0~P1.3接四個開關,編程將開關的狀態反映到發光二極管上。

89C51/89S51P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7+5V+5V1K×4330×4EA第二十一頁,共四十二頁,2022年,8月28日

例3.用P1.0輸出1KHz的音頻信號驅動揚聲器,作報警信號,P1.7接一開關進行控制,當開關合上響報警信號,當開關斷開告警信號停止,編出程序。

第二十二頁,共四十二頁,2022年,8月28日5.3I/O口設計LED數碼顯示器和鍵盤LED顯示器結構與原理LED顯示器是由發光二極管顯示字段的顯示器件。在單片機應用系統中通常使用的是七段LED,這種顯示器有共陰極與共陽極兩種。第二十三頁,共四十二頁,2022年,8月28日。afbegcddp12345109876

gfab

edcdp(a)共陰極(b)共陽極(c)管腳配置圖LED顯示器(a)共陰極LED顯示器的發光二極管陰極共地,當某個發光二極管的陽極為高電平時,該發光二極管則點亮;(b)共陽極LED顯示器的發光二極管陽極并接。第二十四頁,共四十二頁,2022年,8月28日

七段顯示器與單片機接口:只要將一個8位并行輸出口與顯示器的發光二極管引腳相連即可。8位并行輸出口輸出不同的字節數據即可獲得不同的數字或字符,如下表所示。通常將控制發光二極管的8位字節數據稱為段選碼。顯示字符共陰段選碼共陽段選碼顯示字符共陰段選碼共陽段選碼03FHC0H87FH80H106HF9H96FH90H25BHA4HA77H88H34FHB0HB7CH83H466H99HC39HC6H56DH92HD5EHA1H67DH82HE79H86H707HF8HF71H8EH第二十五頁,共四十二頁,2022年,8月28日LED顯示器與顯示方式

N位LED顯示器有N根位選線和8×N根段選線。根據顯示方式不同,位選線與段選線的連接方法不同。段選線控制字符選擇,位選線控制顯示位的亮、滅。I/O口段選控制abcdefgdpabcdefgdpabcdefgdpabcdefgdpabcdefgdp···I/O口位選控制圖N位LED顯示器第二十六頁,共四十二頁,2022年,8月28日LED顯示器有靜態顯示與動態顯示兩種方式。(1)

LED靜態顯示方式各位LED的位選線連在一起接地或接+5V;每位LED的段選線(a-dp)各與一個八位并行口相連。在同一時間里每一位顯示的字符可以各不相同。GND/+5VI/O(1)GND/+5VI/O(2)GND/+5VI/O(3)GND/+5VI/O(4)GND/+5V圖四位靜態LED顯示器電路第二十七頁,共四十二頁,2022年,8月28日

(2)

LED動態顯示方式將所有LED的段選線并聯在一起,由一個八位I/O口控制,而位選線分別由相應的I/O口線控制。

如:8位LED動態顯示電路只需要兩個八位I/O口。其中一個控制段選碼,另一個控制位選。動態顯示三部曲

I/O(1)I/O(2)D7D6D5D4D3D2D1D0圖八位LED動態顯示器電路第二十八頁,共四十二頁,2022年,8月28日

由于所有位的段選碼皆由一個I/O控制,因此,在每個瞬間,8位LED只可能顯示相同的字符。要想每位顯示不同的字符,必須采用動態掃描顯示方式。即在每一瞬間只使某一位顯示相應字符。在此瞬間,位選控制I/O口在該顯示位送入選通電平(共陰極送低電平、共陽極送高電平)以保證該位顯示相應字符,段選控制I/O口輸出相應字符段選碼。如此輪流,使每位顯示該位應顯示字符,并保持延時一段時間,以造成視覺暫留效果。不斷循環送出相應的段選碼、位選碼,就可以獲得視覺穩定的顯示狀態。由人眼的視覺特性,每一位LED在一秒鐘內點亮不少于30次,其效果和一直點亮相差不多。第二十九頁,共四十二頁,2022年,8月28日LED燈的判別第三十頁,共四十二頁,2022年,8月28日第三十一頁,共四十二頁,2022年,8月28日

例如圖5.5是接有五個共陰極數碼管的動態顯示接口電路,用74LS373接成直通的方式作驅動電路,陰極用非門74LS04反相門驅動,字形選擇由P1口提供,位選擇由P3口控制。當P3.0~P3.4輪流輸出1時,五個數碼管輪流顯示。P1.7接開關,當開關打向位置“1”時,顯示“12345”字樣,當開關打向“2”時,顯示“HELLO”字樣,程序清單如下:第三十二頁,共四十二頁,2022年,8月28日第三十三頁,共四十二頁,2022年,8月28日用C語言完成上述功能編程#include<reg51.h>#defineuintunsignedint#defineucharunsignedcharsbitP17=P1^7;main(){ucharcodetab1[5]={0x86,0xdb,0xcf,0xe6,0xed};/*“1~5”的字形碼,因P1.7接的開關,最高位送“1”*/ucharcodetab2[5]={0xf8,0xf9,0xb8,0xb8,0xbf};/*“HELLO”的段碼,最高位送“1”*/第三十四頁,共四十二頁,2022年,8月28日uchari;uintj;while(1){

P3=0x01;for(i=0;i<5;i++){if(P17==1)P1=tab1[i];elseP1=tab2[i];P3<<=1;for(j=0;j<=25000;j++);}}}課本習題5.8

*關于液晶顯示第三十五頁,共四十二頁,2022年,8月28日鍵盤輸入鍵盤是單片機系統中通用的輸入設備,用于向系統輸入數據或控制信息。鍵盤中一般矩陣式(行列式)鍵盤用得較多,適用于按鍵數量較多的場合。矩陣式鍵盤由行線和列線組成,按鍵位于行線、列線的交叉點上。當鍵被按下,則其交點的行線和列線接通。行和列可分別用兩個I/O口來控制。

D7D6D5D4D3D2D1D0I/O接口+5V第三十六頁,共四十二頁,2022年,8月28日1.判斷是否有鍵按下原理:行線通過上拉電阻接+5V上(1)平時無按鍵動作時,行線處于高電平狀態;(2)若有鍵按下,行線狀態將由與行線相連的列線電平決定。步驟:(1)先使所有列線為低電平(I/O輸出0)(2)讀行線狀態(輸入口)當無鍵按下時,所有行線為高電平,即讀到“全1”數據;當有某鍵按下時,總會有一根行線為低電平,即讀到的數據不全為“1”。D7D6D5D4D3D2D1D0I/O接口+5V第三十七頁,共四十二頁,2022年,8月28日2.按鍵的識別(識別鍵的行列位置)(1)掃描法

a.依次給每一根列(行)線送低電平;

b.讀所有行線狀態若全為‘1’,則所按下之鍵不在此低電平列上;若不全為‘1’(有一根為‘0’),則按鍵在現有低電平行與低電平列的交叉處。D7D6D5D4D3D2D1D0I/O接口+5V第三十八頁,共四十二頁,2022年,8月28日(2)反轉法a.將行線接一并口,做輸出方式;列線接一并口,做輸入方式。使所有行線為低電平(送全“0”),讀入列線值,為“0”的那列,即按鍵所在列;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論