www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] AT89S51單片機(jī)共有4個(gè)雙向的8位并行I/O口,分別記為PO、Pl、P2和P3,其中輸出鎖存器屬于特殊功能寄存器。端口的每一位均由輸出鎖存器、輸出驅(qū)動(dòng)器和輸入緩沖器組成,這4個(gè)端口除了按字節(jié)輸入/輸出

AT89S51單片機(jī)共有4個(gè)雙向的8位并行IO口,分別記為PO、Pl、P2和P3,其中輸出鎖存器屬于特殊功能寄存器。端口的每一位均由輸出鎖存器、輸出驅(qū)動(dòng)器和輸入緩沖器組成,這4個(gè)端口除了按字節(jié)輸入/輸出外,還可以按位尋址,便于位控功能的實(shí)現(xiàn)。
  
  PO口
  
  PO口是一個(gè)雙功能的8位并行口,字節(jié)地址為80H,位地址為80H~87H。端口的各位具有完全相同但又相互獨(dú)立的電路結(jié)構(gòu),PO口某一位的位電路結(jié)構(gòu)如圖2-8所示。
  
  1.位電路結(jié)構(gòu)

PO口某一位的電路包括:
  
  (1)一個(gè)數(shù)據(jù)輸出的鎖存器,用于數(shù)據(jù)位的鎖存。
  
  (2)兩個(gè)三態(tài)的數(shù)據(jù)輸入緩沖器,分別是用于讀鎖存器數(shù)據(jù)的輸入緩沖器BUF1和讀引腳數(shù)據(jù)的輸入緩沖器BUF2。
  
  (3)一個(gè)多路轉(zhuǎn)接開關(guān)MUX,它的一個(gè)輸入來(lái)自鎖存器的Q(的反)端,另一個(gè)輸入為地址/數(shù)據(jù)信號(hào)的反相輸出。MUX由“控制”信號(hào)控制,實(shí)現(xiàn)鎖存器的輸出和地址/數(shù)據(jù)信號(hào)之間的轉(zhuǎn)接。
  
  (4)數(shù)據(jù)輸出的控制和驅(qū)動(dòng)電路,由兩個(gè)場(chǎng)效應(yīng)管(FET)組成。
  
  2.工作過(guò)程分析
  
  (1) PO口用作地址/數(shù)據(jù)總線 當(dāng)AT89S51外擴(kuò)存儲(chǔ)器或I/O時(shí),PO口作為單片機(jī)系統(tǒng)復(fù)用的地址/數(shù)據(jù)總線使用。
  
  當(dāng)作為地址或數(shù)據(jù)輸出時(shí),“控制”信號(hào)為1,硬件自動(dòng)使轉(zhuǎn)接開關(guān)MUX打向上面,接通反相器的輸出,同時(shí)使與門處于開啟狀態(tài)。當(dāng)輸出的地址/數(shù)據(jù)信息為l時(shí),與門輸出為1,上方的場(chǎng)效應(yīng)管導(dǎo)通,下方的場(chǎng)效應(yīng)管截止,PO.x引腳輸出為l;當(dāng)輸出的地址/數(shù)據(jù)信息為O時(shí),上方的場(chǎng)效應(yīng)管截止,下方的場(chǎng)效應(yīng)管導(dǎo)通,PO.x引腳輸出為0。這說(shuō)明PO.x引腳的輸出狀態(tài)隨地址/數(shù)據(jù)狀態(tài)的變化而變化。輸出電路是上、下兩個(gè)場(chǎng)效應(yīng)管形成的推拉式結(jié)構(gòu),大大提高了負(fù)載能力,上方的場(chǎng)效應(yīng)管這時(shí)起到內(nèi)部上拉電阻的作用。
  
  當(dāng)PO口作為地址/數(shù)據(jù)輸入時(shí),僅從外部存儲(chǔ)器(或外部I/O)讀入信息,對(duì)應(yīng)的“控制”信號(hào)為0,MUX接通鎖存器的Q(的反)端。由于PO口作為地址/數(shù)據(jù)復(fù)用方式訪問(wèn)外部存儲(chǔ)器時(shí),CPU自動(dòng)向PO口寫入FFH,使下方的場(chǎng)效應(yīng)管截止,上方的場(chǎng)效應(yīng)管由于控制信號(hào)為O也截止,從而保證數(shù)據(jù)信息的高阻抗輸入,從外部存儲(chǔ)器輸入的數(shù)據(jù)信息直接由PO.x引腳通過(guò)輸入緩沖器BUF2進(jìn)入內(nèi)部總線。
  
  具有高阻抗輸入的I/O口如果是真正的雙向口,它應(yīng)是具有高電平、低電平和高阻抗3種狀態(tài)的端口。因此,PO口作為地址/數(shù)據(jù)總線使用時(shí)是一個(gè)真正的雙向端口,簡(jiǎn)稱雙向口。
  
  (2) PO口用作通用I/O口 當(dāng)PO口不作為系統(tǒng)的地址/數(shù)據(jù)總線使用時(shí),此時(shí)PO口也可作為通用的I/O口使用。
  
  當(dāng)用作通用的I/O時(shí),對(duì)應(yīng)的“控制”信號(hào)為0,MUX打向下面,接通鎖存器的Q(的反)端,與門輸出為0,上方的場(chǎng)效應(yīng)管截止,形成的PO口輸出電路為漏極開路輸出。
  
  PO口用作輸出口時(shí),來(lái)自CPU的“寫”脈沖加在D鎖存器的CP端,內(nèi)部總線上的數(shù)據(jù)寫入D鎖存器,并由引腳PO.x輸出。當(dāng)D鎖存器為1時(shí),Q端為0,下方場(chǎng)效應(yīng)管截止,輸出為漏極開路,此時(shí),必須外接上拉電阻才能有高電平輸出;當(dāng)D鎖存器為0時(shí),下方場(chǎng)效應(yīng)管導(dǎo)通,PO口輸出為低電平。
  
  PO口作為輸入口使用時(shí),有兩種讀入方式:“讀鎖存器”和“讀引腳”。當(dāng)CPU發(fā)出“讀鎖存器”指令時(shí),鎖存器的狀態(tài)由Q端經(jīng)上方的三態(tài)緩沖器BUF1進(jìn)入內(nèi)部總線;當(dāng)CPU發(fā)出“讀引腳”指令時(shí),鎖存器的輸出狀態(tài)=1(即Q(的反)端為0),從而使下方場(chǎng)效應(yīng)管截止,引腳的狀態(tài)經(jīng)下方的三態(tài)緩沖器BUF2進(jìn)入內(nèi)部總線。
  
  3.PO口的特點(diǎn)
  
  綜上所述,PO口具有如下特點(diǎn):PO口為雙功能口——地址/數(shù)據(jù)復(fù)用口和通用I/O口。
  
  (1)當(dāng)PO口用作地址/數(shù)據(jù)復(fù)用口時(shí),是一個(gè)真正的雙向口,用作與外部存儲(chǔ)器的連接,輸出低8位地址和輸出/輸入8位數(shù)據(jù)。
  
  (2)當(dāng)PO口用作通用I/O口時(shí),由于需要在片外接上拉電阻,端口不存在高阻抗(懸浮)狀態(tài),因此是一個(gè)準(zhǔn)雙向口。為保證引腳信號(hào)的正確讀入,應(yīng)首先向鎖存器寫l。單片機(jī)復(fù)位后,鎖存器自動(dòng)被置1;當(dāng)PO口由原來(lái)的輸出狀態(tài)轉(zhuǎn)變?yōu)檩斎霠顟B(tài)時(shí),應(yīng)首先置鎖存器為1,方可執(zhí)行輸入操作。
  
  一般情況下,PO口大多作為地址/數(shù)據(jù)復(fù)用口使用,這時(shí)就不能再作為通用I/O口使用。


  Pl口
  
  Pl口是單功能的I/O口,字節(jié)地址為90H,位地址為90H~97H。Pl口某一位的位電路結(jié)構(gòu)如圖2-9所示。
  
  1.位電路結(jié)構(gòu)


P1口位電路結(jié)構(gòu)由以下三部分組成:
  
  (1)一個(gè)數(shù)據(jù)輸出鎖存器,用于輸出數(shù)據(jù)位的鎖存。
  
  (2)兩個(gè)三態(tài)的數(shù)據(jù)輸入緩沖器BUF1和BUF2,分別用于讀鎖存器數(shù)據(jù)和讀引腳數(shù)據(jù)的輸入緩沖。
  
  (3)數(shù)據(jù)輸出驅(qū)動(dòng)電路,由一個(gè)場(chǎng)效應(yīng)管(FET)和一個(gè)片內(nèi)上拉電阻組成。
  
  2.工作過(guò)程分析
  
   P1口只能作為通用的I/O口使用。
  
  (1) P1口作為輸出口時(shí),若CPU輸出1,Q=1, Q(的反)=0,場(chǎng)效應(yīng)管截止,Pl口引腳的輸出為1;若CPU輸出Q=0,Q(的反)=1,場(chǎng)效應(yīng)管導(dǎo)通,P1口引腳的輸出為0。
  
  (2) P1口作為輸入口時(shí),分為“讀鎖存器”和“讀引腳”兩種方式。“讀鎖存器”時(shí),鎖存器的輸出端Q的狀態(tài)經(jīng)輸入緩沖器BUF1進(jìn)入內(nèi)部總線;“讀引腳”時(shí),先向鎖存器寫1,使場(chǎng)效應(yīng)管截止,Pl.x引腳上的電平經(jīng)輸入緩沖器BUF2進(jìn)入內(nèi)部總線。
  
  3.P1口的特點(diǎn)
  
  P1口由于有內(nèi)部上拉電阻,沒(méi)有高阻抗輸入狀態(tài),故為準(zhǔn)雙向口。作為輸出口時(shí),不需要在片外接上拉電阻。
  
  P1口“讀引腳”輸入時(shí),必須先向鎖存器寫入1。
  
  P2口
  
  P2口是一個(gè)雙功能口,字節(jié)地址為AOH,位地址為AOH~A7H。P2口某一位的位電路結(jié)構(gòu)如圖2-10所示。
  
  1.位電路結(jié)構(gòu)
  
  P2口某一位的電路包括:
  
  (1)一個(gè)數(shù)據(jù)輸出鎖存器,用于輸出數(shù)據(jù)位的鎖存。
  
  (2)兩個(gè)三態(tài)數(shù)據(jù)輸入緩沖器BUF1和BUF2,分別用于讀鎖存器數(shù)據(jù)和讀引腳數(shù)據(jù)的輸入緩沖。
  
  (3)一個(gè)多路轉(zhuǎn)接開關(guān)MUX,它的一個(gè)輸入是鎖存器的Q端,另一個(gè)輸入是地址的高8位。
  
  (4)輸出驅(qū)動(dòng)電路,由場(chǎng)效應(yīng)管(FET)和內(nèi)部上拉電阻組成。
  
  2.工作過(guò)程分析
  
  (1) P2口用作地址總線 在內(nèi)部控制信號(hào)作用下,MUX與“地址”接通。當(dāng)“地址”線為O時(shí),場(chǎng)效應(yīng)管導(dǎo)通,P2口引腳輸出0;當(dāng)“地址”線為1時(shí),場(chǎng)效應(yīng)管截止,P2口引腳輸出1。(2) P2口用作通用I/O口 在內(nèi)部控制信號(hào)作用下,MUX與鎖存器的Q端接通。
  
  CPU輸出1時(shí),Q=1,場(chǎng)效應(yīng)管截止,P2.x引腳輸出1;CPU輸出0時(shí),Q=0,場(chǎng)效應(yīng)管導(dǎo)通,P2.x引腳輸出0。
  
  輸入時(shí),分為“讀鎖存器”和“讀引腳”兩種方式?!白x鎖存器”時(shí),Q端信號(hào)經(jīng)輸入緩沖器BUF1進(jìn)入內(nèi)部總線;“讀引腳”時(shí),先向鎖存器寫1,使場(chǎng)效應(yīng)管截止,P2.x引腳上的電平經(jīng)輸入緩沖器BUF2進(jìn)入內(nèi)部總線。
  
  3.P2口的特點(diǎn)
  
  作為地址輸出線使用時(shí),P2口可以輸出外部存儲(chǔ)器的高8位地址,與PO口輸出的低8位地址一起構(gòu)成16位地址,可以尋址64 KB的地址空間。當(dāng)P2口作為高8位地址輸出口時(shí),輸出鎖存器的內(nèi)容保持不變。
  
  作為通用I/O口使用時(shí),P2口為一個(gè)準(zhǔn)雙向口。功能與Pl口一樣。
  
  一般情況下,P2口大多作為高8位地址總線口使用,這時(shí)就不能再作為通用I/O口使用。


P3口
  
  由于AT89S51的引腳數(shù)目有限,因此在P3口電路中增加了引腳的第二功能。P3口的每一位都可以分別定義為第二輸入功能或第二輸出功能。P3口的字節(jié)地址為BOH,位地址為BOH~B7H。P3口某一位的位電路結(jié)構(gòu)如圖2-11所示
  
  1.位電路結(jié)構(gòu)
  
  P3口某一位的電路包括:
  
  (1)一個(gè)數(shù)據(jù)輸出鎖存器,用于輸出數(shù)據(jù)位的鎖存。
  
  (2)3個(gè)三態(tài)數(shù)據(jù)輸入緩沖器BUF1、BUF2和BUF3,分別用于讀鎖存器、讀引腳數(shù)據(jù)和第二功能數(shù)據(jù)的輸入緩沖。
  
  (3)輸出驅(qū)動(dòng)電路,由與非門、場(chǎng)效應(yīng)管(FET)和內(nèi)部上拉電阻組成。
  
  2.工作過(guò)程分析
  
  (1) P3日用作第二輸入/輸出功能 當(dāng)選擇第二輸出功能時(shí),該位的鎖存器需要置1,使與非門為開啟狀態(tài)。當(dāng)?shù)诙敵鰹?時(shí),場(chǎng)效應(yīng)管截止,P3.x引腳輸出為1;當(dāng)?shù)诙敵鰹?時(shí),場(chǎng)效應(yīng)管導(dǎo)通,P3.x引腳輸出為0。
  
  當(dāng)選擇第二輸出功能時(shí),該位的鎖存器和第二輸出功能端均應(yīng)置1,保證場(chǎng)效應(yīng)管截止,P3.x引腳的信息由輸入緩沖器BUF3的輸出獲得。
  
  (2) P3口用作第一功能——通用I/O口 當(dāng)P3口用作第一功能通用輸出時(shí),第二輸出功能端應(yīng)保持高電平,與非門為開啟狀態(tài)。CPU輸出1時(shí),Q=l,場(chǎng)效應(yīng)管截止,P3.x引腳輸出為l;CPU輸出0時(shí),Q=0,場(chǎng)效應(yīng)管導(dǎo)通,P3.x引腳輸出為0。
  
  當(dāng)P3口用作第一功能通用輸入時(shí),P3.x位的輸出鎖存器和第二輸出功能均應(yīng)置1,場(chǎng)效應(yīng)管截止,P3.x引腳信息通過(guò)輸入BUF3和BUF2進(jìn)入內(nèi)部總線,完成“讀引腳”操作。
  
當(dāng)P3口實(shí)現(xiàn)

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
關(guān)閉
關(guān)閉