并行口的應(yīng)用與擴(kuò)展_第1頁
并行口的應(yīng)用與擴(kuò)展_第2頁
并行口的應(yīng)用與擴(kuò)展_第3頁
并行口的應(yīng)用與擴(kuò)展_第4頁
并行口的應(yīng)用與擴(kuò)展_第5頁
已閱讀5頁,還剩23頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

并行口的應(yīng)用與擴(kuò)展第1頁,共28頁,2023年,2月20日,星期一本章學(xué)習(xí)目標(biāo)

掌握MCS-51單片機(jī)并行I/O口的應(yīng)用掌握鍵盤與顯示器的擴(kuò)展原理及方法第2頁,共28頁,2023年,2月20日,星期一4.1單片機(jī)的并行接口P0~P3

MCS-51單片機(jī)有P0、P1、P2、P3四個(gè)8位雙向I/O口,每個(gè)端口可以按字節(jié)輸入或輸出,也可以按位進(jìn)行輸入或輸出,四個(gè)口共32根口線,用作位控制十分方便。一、四個(gè)并行口使用的注意事項(xiàng)如下:如果單片機(jī)內(nèi)部有程序存貯器,不需要擴(kuò)展外部存貯器和I/O接口,單片機(jī)的四個(gè)口均可作I/O口使用。四個(gè)口在作輸入口使用時(shí),均應(yīng)先對其寫“1”,以避免誤讀。P0口作I/O口使用時(shí)應(yīng)外接10K的上拉電阻,其它口則可不必。P2可某幾根線作地址使用時(shí),剩下的線不能作I/O口線使用。P3口的某些口線作第二功能時(shí),剩下的口線可以單獨(dú)作I/O口線使用P0驅(qū)動(dòng)8個(gè)TTL電路,P1,P2,P3可驅(qū)動(dòng)4個(gè)TTL電路。第3頁,共28頁,2023年,2月20日,星期一3.讀-修改-寫:修改輸出鎖存器的內(nèi)容。鎖存器中的數(shù)據(jù)通過上三態(tài)門進(jìn)入內(nèi)部總線,修改后再寫入到鎖存器中。讀-修改-寫指令:并行口為目的操作數(shù)的指令:如:ANLP1,A1.輸出鎖存:輸出將使數(shù)據(jù)寫入輸出鎖存器。輸出指令:MOV P1,A MOV P1.0,C2.輸入三態(tài):輸入從I/O引腳上輸入信號,讀信號打開,引腳信號通過下三態(tài)門進(jìn)入內(nèi)部總線。為保證可靠輸入,先寫入“1”。

MOV P1,#0FFH ;使輸出驅(qū)動(dòng)器截止

MOV A,P1 ;輸入

P0~P3的復(fù)位狀態(tài)均為FFH,自動(dòng)處于輸入狀態(tài)。二、并行接口的三種操作:第4頁,共28頁,2023年,2月20日,星期一首先,在應(yīng)用設(shè)計(jì)中應(yīng)理解,計(jì)算機(jī)內(nèi)由數(shù)字電路組成只存在兩種TTL電平,高電平3.5~5V和低電平0V,對應(yīng)著的數(shù)字為“1”和“0”。外設(shè)的狀態(tài)要通過電路轉(zhuǎn)換成高、低電平,計(jì)算機(jī)才能識別(如開關(guān)電路)。計(jì)算機(jī)輸出數(shù)據(jù)“1”即輸出3.5V~5V,輸出數(shù)據(jù)“0”即輸出0V,根據(jù)外設(shè)需要的電平要求輸出“1”或“0”數(shù)據(jù),這就是程序控制外設(shè)的本質(zhì)。4.2并行I/O口的直接應(yīng)用

第5頁,共28頁,2023年,2月20日,星期一

從P1.0~P1.3輸入開關(guān)狀態(tài),再經(jīng)P1.4~P1.7輸出去驅(qū)動(dòng)發(fā)光二極管,使發(fā)光二極管顯示開關(guān)的狀態(tài)。接成灌電流形式,能增加驅(qū)動(dòng)能力,使二極管更亮些。并行I/O口的直接應(yīng)用舉例第6頁,共28頁,2023年,2月20日,星期一控制程序如下:

ORG 0000H AJMP MAINORG 0030HMAIN:MOV A,#0FFH MOV P1,A;熄滅發(fā)光二極管, ;P1口低位寫“1” MOV A,P1 ;讀入開關(guān)狀態(tài)

SWAP A ;A高低半字節(jié)交換

MOV P1,A ;開關(guān)狀態(tài)輸出

AJMPMAIN END第7頁,共28頁,2023年,2月20日,星期一4.3LED顯示器的擴(kuò)展

單片機(jī)應(yīng)用系統(tǒng)中,常常使用發(fā)光二極管(LED)來指示系統(tǒng)運(yùn)行狀態(tài),使用數(shù)碼管顯示檢測參數(shù)和數(shù)據(jù)。顯示程序涉及到硬件電路的連接,顯示結(jié)果最為直觀,所以,學(xué)習(xí)單片機(jī)顯示程序編寫有利于提高讀者的學(xué)習(xí)興趣,同時(shí)也為后續(xù)調(diào)試較大程序提供故障診斷的方法。

單片機(jī)應(yīng)用系統(tǒng)中,最常用的是七段式LED顯示器,又稱數(shù)碼管。

第8頁,共28頁,2023年,2月20日,星期一4.3.1LED數(shù)碼顯示器的結(jié)構(gòu)與原理常見數(shù)碼管的管腳排列如下圖(a)所示,其中COM為公共點(diǎn)。根據(jù)內(nèi)部發(fā)光二極管的接線形式,可分為共陰極型(圖(b))和共陽極型(圖(c))。共陰極共陽極圖(a)圖(b)圖(c)第9頁,共28頁,2023年,2月20日,星期一

LED數(shù)碼管的g~a七個(gè)發(fā)光二極管因加正電壓而發(fā)亮,因加零電壓而不能發(fā)亮,不同亮暗的組合就能形成不同的字形,這種組合稱之為段碼(或稱字型碼)

,顯然共陽極和共陰極的字形碼是不同的,其字形碼見下表。

LED數(shù)碼管每段需10~20ma的驅(qū)動(dòng)電流,可用TTL或CMOS器件驅(qū)動(dòng)。字形碼的控制輸出可采用硬件譯碼方式,如采用BCD7段譯碼/驅(qū)動(dòng)器74LS48、74LS49、CD4511(共陰極)或74LS46、74LS47、CD4513(其陽極)也可用軟件查表方式輸出。

第10頁,共28頁,2023年,2月20日,星期一十六進(jìn)制數(shù)字形碼表

顯示字符段符號十六進(jìn)制代碼dpgfedcba共陰共陽0123456789ABCDEFHP0000000000000000010011111011110111111000111011111011111010001010111111111011011011011110001101111111110100001111100111100100011011011111101011113FH06H5BH4FH66H6DH7DH07H7FH6FH77H7CH39H5EH79H71H76H73HC0HF9HA4HB0H99H92H82HF8H80H90H88H83HC6HA1H86H8EH89H8CH

第11頁,共28頁,2023年,2月20日,星期一4.3.2LED接口電路:兩種顯示電路:靜態(tài)顯示和動(dòng)態(tài)顯示。特點(diǎn):顯示亮度高,硬件和軟件都較簡單;但占用口線多。1.靜態(tài)顯示:每位的段碼線(a~dp)分別與一個(gè)8位的鎖存器輸出相連。顯示字符一確定,相應(yīng)鎖存器的段碼輸出將維持不變,直到送入另一個(gè)段碼為止。各位的公共端連接在一起(接地或+5V)。第12頁,共28頁,2023年,2月20日,星期一2.動(dòng)態(tài)顯示:所有位的段碼線相應(yīng)段并在一起,由一個(gè)8位I/O口控制,各位的公共端分別由相應(yīng)的I/O線控制。分時(shí)輪流選通數(shù)碼管的公共端,使得各數(shù)碼管輪流導(dǎo)通,在選通的LED上得到顯示字形碼。一個(gè)接口完成字形碼的輸出(字形選擇),另一接口完成各數(shù)碼管的輪流點(diǎn)亮(字位選擇)。第13頁,共28頁,2023年,2月20日,星期一2.動(dòng)態(tài)顯示:動(dòng)態(tài)顯示采用各數(shù)碼管循環(huán)輪流顯示的方法,當(dāng)循環(huán)顯示頻率較高時(shí),利用人眼的暫留特性,看不出閃爍顯示現(xiàn)象。特點(diǎn):節(jié)省硬件資源,成本較低,但要保證顯示器正常顯示,CPU必需每隔一段時(shí)間執(zhí)行一次顯示子程序,降低了CPU的工作效率;同時(shí)顯示亮度較靜態(tài)顯示低。第14頁,共28頁,2023年,2月20日,星期一例3-52單片機(jī)顯示電路下圖所示,試編寫一個(gè)系統(tǒng)上電自檢程序。要求使6個(gè)數(shù)碼管從右到左輪流顯示“8.”1秒后,再全部顯示“8.”3秒,最后最右邊的數(shù)碼管顯示“0”,其余全部熄滅。設(shè)時(shí)鐘頻率為11.0592MH。第15頁,共28頁,2023年,2月20日,星期一第16頁,共28頁,2023年,2月20日,星期一4.4矩陣式鍵盤的擴(kuò)展1.鍵盤輸入的特點(diǎn)鍵盤:一組按鍵開關(guān)的集合。

行線電壓信號通過鍵盤開關(guān)機(jī)械觸點(diǎn)的斷開、閉合,輸出波形如圖。4.4.1鍵盤接口原理第17頁,共28頁,2023年,2月20日,星期一2.按鍵的確認(rèn)檢測行線電平

高電平:斷開;低電平:閉合,常用軟件來消除按鍵抖動(dòng)。

基本思想:檢測到有鍵按下,鍵對應(yīng)的行線為低,軟件延時(shí)10ms后,行線如仍為低,則確認(rèn)該行有鍵按下。3.如何消除按鍵的抖動(dòng)

有鍵松開時(shí),行線變高,軟件延時(shí)10ms后,行線仍為高,說明按鍵已松開。采取以上措施,躲開了兩個(gè)抖動(dòng)期t1和t3的影響。第18頁,共28頁,2023年,2月20日,星期一4.4.2鍵盤接口的工作原理獨(dú)立式按鍵接口和矩陣式鍵盤接口。1.獨(dú)立式鍵盤接口各鍵相互獨(dú)立,每個(gè)按鍵各接一根輸入線,通過檢測輸入線的電平狀態(tài)可很容易判斷哪個(gè)鍵被按下。此種接口適于鍵數(shù)較少或操作速度較高的場合。第19頁,共28頁,2023年,2月20日,星期一2.矩陣式鍵盤接口由行線和列線組成,按鍵位于行、列的交叉點(diǎn)上。如圖所示。

用于按鍵數(shù)目較多的場合,行列式鍵盤與獨(dú)立式鍵盤相比,要節(jié)省很多的I/O口線。按鍵輸出第20頁,共28頁,2023年,2月20日,星期一(1)、行列式鍵盤工作原理

無鍵按下,該行線為高電平,當(dāng)有鍵按下時(shí),行線電平由列線的電平來決定。由于行、列線為多鍵共用,各按鍵彼此將相互發(fā)生影響,必須將行、列線信號配合起來并作適當(dāng)?shù)奶幚恚拍艽_定閉合鍵的位置。

(2)、按鍵的識別方法常用的為掃描法圖8-5中6號鍵被按下為例,來說明此鍵是如何被識別出來的。第21頁,共28頁,2023年,2月20日,星期一掃描法進(jìn)行按鍵識別的方法,分兩步進(jìn)行:第1步:識別鍵盤有無鍵按下第2步:如有鍵被按下,識別出具體的按鍵。把所有列線置0,檢查各行線電平是否有變化,如有變化,說明有鍵按下,如無變化,則無鍵按下。

依次把某一列置低電平,其余各列為高電平,檢查各行線電平的變化,如果某行線電平為低,可確定此行列交叉點(diǎn)處的按鍵被按下。掃描結(jié)果:列線Y2為低電平,行線Xl為低電平第22頁,共28頁,2023年,2月20日,星期一可采用依次排列鍵號的方式對按鍵進(jìn)行編碼。以圖8-5中的4×4鍵盤為例,可將鍵號編碼為:0、1、2、…F等16個(gè)鍵號。編碼相互轉(zhuǎn)換可通過計(jì)算或查表的方法實(shí)現(xiàn)。計(jì)算法轉(zhuǎn)換按鍵的鍵號:

鍵號(值)=行號×每行的按鍵個(gè)數(shù)+列號對應(yīng)的4×4矩陣鍵盤的按鍵鍵號,如表8-1所示。(3)鍵盤的編碼第23頁,共28頁,2023年,2月20日,星期一(4)鍵盤的掃描方式通常,鍵盤掃描方式有3種,即編程掃描、定時(shí)掃描和中斷掃描。1).編程掃描方式只有當(dāng)單片機(jī)空閑時(shí),才調(diào)用鍵盤掃描子程序,掃描鍵盤。鍵盤掃描程序一般應(yīng)包括以下內(nèi)容:判別有無鍵按下。有鍵按下,用軟件延時(shí)的方法消除按鍵抖動(dòng)的影響。鍵盤掃描取得閉合鍵的位置碼,既行、列值。用計(jì)算法或查表法將鍵的位置碼轉(zhuǎn)換為鍵值(0、1、2…F)。返回閉合鍵的鍵值。特點(diǎn):CPU需不停的掃描鍵盤,工作效率較低。

第24頁,共28頁,2023年,2月20日,星期一2).定時(shí)掃描掃方式利用單片機(jī)內(nèi)的定時(shí)器,產(chǎn)生10ms的定時(shí)中斷,對鍵盤進(jìn)行掃描。3).中斷掃描方式只有在鍵盤有鍵按下時(shí),才執(zhí)

溫馨提示

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

評論

0/150

提交評論