版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第7章數(shù)字信號(hào)輸入輸出接口電路
輸入/輸出接口電路是單片機(jī)應(yīng)用系統(tǒng)中必不可少的單元電路之一,它涉及數(shù)據(jù)輸入電路以及經(jīng)過單片機(jī)處理后的數(shù)據(jù)輸出電路。單片機(jī)應(yīng)用系統(tǒng)總要對(duì)輸入信號(hào)進(jìn)行比較、判斷或運(yùn)算處理后,輸出適當(dāng)?shù)目刂菩盘?hào)去控制特定設(shè)備。輸入/輸出量可以是模擬信號(hào),也可以開關(guān)信號(hào)。對(duì)于模擬信號(hào),經(jīng)放大、限幅、低通濾波電路,再經(jīng)A/D轉(zhuǎn)換電路轉(zhuǎn)換為數(shù)字信號(hào)后,單片機(jī)才能處理;單片機(jī)處理結(jié)果也需要經(jīng)過D/A轉(zhuǎn)換、平滑濾波后,才能得到模擬量。有關(guān)模擬信號(hào)的處理,如D/A、A/D轉(zhuǎn)換方法后續(xù)章節(jié)會(huì)介紹,本章主要介紹數(shù)字信號(hào)的輸入/輸出(I/O)接口電路。
2/26/202417.1開關(guān)信號(hào)輸入/輸出方式
開關(guān)信號(hào)包括脈沖信號(hào)、電平信號(hào)。在單片機(jī)控制系統(tǒng)中,常采用如下幾種方式現(xiàn)實(shí)開關(guān)信號(hào)的輸入和輸出。
2/26/202421.直接解碼輸入/輸出方式
在這種方式中,直接利用CPUI/O引腳輸入/輸出開關(guān)信號(hào),如圖7-1(a)所示。2/26/202432.編碼輸入/輸出方式
在這種方式中,將若干條用途相同(均為輸入或輸出)的I/O引腳組合在一起,按二進(jìn)制編碼后輸入或輸出。例如,對(duì)于n條輸出引腳,經(jīng)過譯碼后,可以控制2n個(gè)設(shè)備;對(duì)于2n個(gè)不同時(shí)有效的輸入量,經(jīng)過編碼器與CPU連接時(shí),也只需要n個(gè)引腳,如圖7-1(b)所示。
2/26/202443.矩陣輸入/輸出方式
將CPUI/O引腳分成兩組,用N條引腳構(gòu)成行線,M條引腳構(gòu)成列線,行、列的交叉點(diǎn)就構(gòu)成了所需的N×M個(gè)檢測(cè)點(diǎn)。顯然,所需的I/O引腳數(shù)目為N+M,而檢測(cè)點(diǎn)總數(shù)達(dá)到了N×M個(gè),如圖7-1(C)所示??梢姡琁/O引腳的利用率較高,硬件開銷少,因此得到了廣泛應(yīng)用。
在矩陣編碼方式中,如果行線、列線均定義為輸出狀態(tài),就可以輸出N×M個(gè)開關(guān)量;當(dāng)行、列線中有一組為輸出線,另一組為輸入線時(shí)就構(gòu)成了N×M個(gè)輸入檢測(cè)點(diǎn),如矩陣鍵盤電路。
2/26/202457.2I/O資源及擴(kuò)展
通過單片機(jī)實(shí)現(xiàn)數(shù)字信號(hào)的輸入處理和輸出控制時(shí),必須了解以下問題:(1)準(zhǔn)確理解CPU中各引腳的功能,確定可利用的I/O資源,并做出相對(duì)合理的使用規(guī)劃。
(2)作輸出控制信號(hào)時(shí),必須了解CPU復(fù)位期間和復(fù)位后該引腳的狀態(tài)。MCS-51系列CPU在復(fù)位期間和復(fù)位后各I/O端口的狀態(tài)可參閱第2章有關(guān)內(nèi)容。
(3)了解I/O端口輸出級(jí)電路結(jié)構(gòu)和I/O端口的負(fù)載能力。只有了解了CPUI/O端口輸出級(jí)電路結(jié)構(gòu)和負(fù)載能力,才可能設(shè)計(jì)出原理正確、工作可靠的I/O接口電路。
(4)了解I/O端口輸出電平范圍。(5)了解I/O端口耐壓。
2/26/20246對(duì)于輸出口,當(dāng)輸出高電平時(shí),能給負(fù)載提供的最大驅(qū)動(dòng)電流就是該輸出口高電平驅(qū)動(dòng)能力,當(dāng)輸出電流大于最大驅(qū)動(dòng)電流時(shí),上拉MOS管內(nèi)阻上的壓降將增加,VOH會(huì)下降。當(dāng)VOH小于某一數(shù)值后,后級(jí)電路會(huì)誤認(rèn)為輸入為低電平,產(chǎn)生邏輯錯(cuò)誤。因此,要注意輸出高電平時(shí)的負(fù)載能力。而當(dāng)輸出低電平時(shí),輸出級(jí)飽和,負(fù)載電流倒灌。同樣,倒灌的電流也不能太大,否則會(huì)使輸出級(jí)因過流而損壞,即使沒有損壞,也會(huì)因灌電流太大,造成輸出低電平VOL上升。當(dāng)VOL大于某一數(shù)值后,后級(jí)電路同樣會(huì)誤以為輸入為高電平,產(chǎn)生錯(cuò)誤。2/26/202477.2.1通過鎖存器、觸發(fā)器擴(kuò)展I/O口
當(dāng)僅需要擴(kuò)展少量的I/O引腳時(shí),可使用鎖存器、觸發(fā)器或三態(tài)門電路實(shí)現(xiàn)。
2/26/202481.輸出口
MCS-51寫外部RAM時(shí),用作寫選通信號(hào)。在時(shí)序上,數(shù)據(jù)輸出有效到有效時(shí)間TQVWX最小值為零,而無效到數(shù)據(jù)輸出無效(即數(shù)據(jù)保持)時(shí)間TWHQX也不超過1個(gè)機(jī)器周期。而利用觸發(fā)器擴(kuò)展輸出口時(shí),觸發(fā)器送數(shù)時(shí)鐘信號(hào)由外部RAM寫選通信號(hào)和高位地址譯碼信號(hào)經(jīng)過“與門”或“或非門”產(chǎn)生,這樣送數(shù)時(shí)鐘信號(hào)就存在一定的延遲,因而只能利用的前沿將數(shù)據(jù)鎖存到觸發(fā)器中,常使用74LS273(八上升沿觸發(fā)器,帶公共清零端)、74LS174(六上升沿觸發(fā)器)、74LS374(八上升沿觸發(fā)器,三態(tài)輸出)、74LS377(八上升沿觸發(fā)器,帶使能端)來擴(kuò)展MCS-51的輸出口,如圖7-2所示。
2/26/20249圖7-2使用74LS273擴(kuò)展輸出口
2/26/2024102.輸入口
對(duì)輸入口來說,一般無須鎖存,原則上三態(tài)門電路、具有三態(tài)輸出的總線緩沖器、驅(qū)動(dòng)器、D型觸發(fā)器(如74LS374)以及電平觸發(fā)的鎖存器(如74LS373)等均可以作為輸入口擴(kuò)展芯片,如圖7-3所示。
2/26/2024112/26/202412圖7-4是一個(gè)實(shí)用的輸入/輸出口擴(kuò)展電路,其中74LS273構(gòu)成8位輸出口,74LS373構(gòu)成8位輸入口。
圖7-4擴(kuò)展輸入/輸出口
2/26/2024137.2.2利用串入并出及并入串出芯片擴(kuò)展I/O口
在速度要求不高情況下,可利用74LS164、74HC594、74HC595等“串入并出”芯片擴(kuò)展輸出口;利用74LS165、74HC597等“并入串出”芯片擴(kuò)展輸入口,也是一種簡(jiǎn)單、實(shí)用的I/O口擴(kuò)展方式。當(dāng)串行口未用時(shí),可通過串行口方式0完成串行數(shù)據(jù)的輸入或輸出(可參閱第4章);而當(dāng)串行口已做它用時(shí),可根據(jù)串行芯片的操作時(shí)序,使用I/O引腳完成數(shù)據(jù)的輸入/輸出,例如在圖7-5中使用89C5X芯片三根I/O線,借助兩片74HC595即可獲得16根輸出線。2/26/202414圖7-5通過“串入并出”芯片擴(kuò)展輸出引腳
2/26/2024157.2.3用8255可編程I/O芯片擴(kuò)展MCS-51并行I/O口
Intel公司8255芯片是一塊通用的可編程并行接口(PPI)芯片,除地址線A1、A0外,可直接與Intel公司8位微處理器,如MCS-51芯片相應(yīng)總線直接相連,是MCS-51單片機(jī)應(yīng)用系統(tǒng)中較常見的并行I/O擴(kuò)展芯片之一。
2/26/2024161.8255的結(jié)構(gòu)及引腳功8255采用DIP40、LCC44或QFP44封裝形式,引腳功能及排列如圖7-6所示。
2/26/2024172.8255工作方式
8255屬于可編程的I/O擴(kuò)展芯片,其工作方式由寫入工作方式控制寄存器的工作方式控制字決定,如表7-2所示。
1b6b5b4b3b2b1b0工作方式控制字特征A口工作方式控制00(方式0)01(方式1)1x(方式2)A口輸入/輸出控制0(輸出)1(輸入)C口高4位輸入/輸出控制0(輸出)1(輸入)B口工作方式控制0(方式0)1(方式1)B口輸入/輸出控制0(輸出)1(輸入)C口低4位輸入/輸出控制:0(輸出)1(輸入)與A口工作方式有關(guān)的控制位A組(PC7~PC4)輸入/輸出控制與B口工作方式有關(guān)的控制位B組(PC3~PC0)輸入/輸出控制表7-28255工作方式控制字各含義
2/26/2024188255I/O口有三種工作方式:方式0,基本輸入/輸出方式。特點(diǎn)是對(duì)輸出信號(hào)鎖存功能;對(duì)輸入信號(hào)沒有鎖存功能。方式1,選通輸入/輸出方式。特點(diǎn)是使用C口部分引腳作為A、B通信聯(lián)絡(luò)信號(hào),對(duì)輸入、輸出數(shù)據(jù)均具有鎖存功能。方式2,雙向傳輸方式。只有A口可以工作于方式2,使用C口部分引腳作為雙向傳輸聯(lián)絡(luò)信號(hào),對(duì)輸入、輸出數(shù)據(jù)均具有鎖存功能。
2/26/202419可見8255三個(gè)I/O口的地位不完全相同,其中A口有三種工作方式,B口有兩種工作方式;而C口較特殊,被分成A(PC7~PC4)、B(PC3~PC0)兩組,只有當(dāng)A、B口工作在方式0時(shí),C口才可作為輸入/輸出引腳使用(PC7~PC4、PC3~PC0處于輸入還是輸出狀態(tài),分別由工作方式控制字的b3、b0位決定),而當(dāng)A、B口工作在方式1或2時(shí),C口部分引腳作為A、B口通信聯(lián)絡(luò)信號(hào)(這時(shí)未用的C口引腳仍可作為輸入/輸出引腳使用,由控制寄存器的b3、b0位選擇),具體情況如表7-3所示。
2/26/202420C口引腳方式1(A或B口)方式2(A口)輸入輸出輸入輸出PC0INTRBINTRBPC1IBFBPC2PC3PC4PC5PC6PC7BBBINTRAINTRAINTRAINTRAIBFAIBFAAAAAAA表7-3A、B口工作在方式1/2下C口引腳的含義
2/26/202421(a)A口工作在選通輸入方式下信號(hào)連接方式及時(shí)序
(b)A口工作在選通輸出方式下信號(hào)連接方式及時(shí)序
2/26/2024223.8255芯片與MCS-51接口應(yīng)用舉例
MCS-51CPU與8255接口芯片按如下方式連接:8255芯片數(shù)據(jù)總線與CPU數(shù)據(jù)總線直接相連。讀控制信號(hào)()、寫控制信號(hào)()分別與CPU讀寫控制信號(hào)相連。8255芯片地址線A1、A0可直接與CPU高8位地址,如A9(即P2.1引腳)、A8(即P2.0引腳)相連;當(dāng)然如果已使用了D型鎖存器(如74LS373)鎖存了MCS-51芯片P0口低8位地址信號(hào)A7~A0,則8255芯片地址線A1、A0也可以與CPU地址線A1、A0相連。片選信號(hào)可直接與CPU高位地址線相連(即采用線選法,如圖7-8所示)或由高位地址譯碼后產(chǎn)生,如例7.1所示。
2/26/202423圖7-8MCS-51與8255芯片的連接
2/26/2024242/26/2024257.2.4利用8155/8156可編程I/O芯片擴(kuò)展MCS-51的I/O口
8155/8156曾經(jīng)是MCS-51單片機(jī)系統(tǒng)常用的可編程并行I/O擴(kuò)展芯片之一,與MCS-51接口方便。采用DIP40、LCC44或QFP44封裝形式,單一+5V工作電源。8155/8156可編程I/O擴(kuò)展芯片除了可提供三個(gè)可編程的I/O端口(A、B均為8位I/O口,C口為6位I/O端口)外,還具有256字節(jié)的SRAM存儲(chǔ)單元和一個(gè)14位的可編程定時(shí)/計(jì)數(shù)器,并內(nèi)置了地址鎖存器,地址線可直接與MCS-51單片機(jī)的P0口相連,無須使用74LS373鎖存低8位地址信號(hào),適合擴(kuò)展具有片內(nèi)程序存儲(chǔ)器的MCS-51單片機(jī)CPU,如8751、8752、87C51/52/54/58、89C51/52/54/58、87C51X2/52X2/54X2/58X2、89C51X2/52X2/54X2/58X2等的I/O口。當(dāng)系統(tǒng)所需外部數(shù)據(jù)存儲(chǔ)器容量不大時(shí),由1片CPU和1片8155即可構(gòu)成I/O端口較多的單片機(jī)應(yīng)用系統(tǒng)。2/26/2024261.內(nèi)部結(jié)構(gòu)及引腳功能
8155/8156芯片內(nèi)部結(jié)構(gòu)及引腳排列如圖7-10所示。
2/26/2024272.8155芯片初始化
8155內(nèi)部有一個(gè)命令寄存器,其內(nèi)容規(guī)定8155的工作方式,各位含義如表7-4所示。
2/26/2024287.2.5利用CPU擴(kuò)展I/O
當(dāng)I/O引腳資源不夠時(shí),用另一塊CPU來擴(kuò)展I/O端口比通過三態(tài)門、觸發(fā)器、專用I/O擴(kuò)展芯片如8255、8155等擴(kuò)展I/O引腳,在某些單片機(jī)應(yīng)用系統(tǒng)中可能更經(jīng)濟(jì)。一方面,不僅擴(kuò)展了I/O引腳,也擴(kuò)展了其他硬件資源(如定時(shí)/計(jì)數(shù)器、中斷輸入端),部分工作可由擴(kuò)展CPU完成,有效地減輕了主CPU負(fù)擔(dān)。另一方面,由于CPUI/O口電平可任意設(shè)置,完全可以省去承擔(dān)邏輯轉(zhuǎn)換的與非門電路芯片。利用CUP擴(kuò)展I/O資源時(shí),可使用UART、I2C異步通信方式、類似SPI接口同步串行通信方式或并行通信方式實(shí)現(xiàn)兩CPU之間的信息交換。2/26/2024297.3簡(jiǎn)單顯示驅(qū)動(dòng)電路
7.3.1發(fā)光二極管
發(fā)光二極管在本質(zhì)上與普通二極管差別不大,也是一個(gè)PN結(jié),同樣具有正向?qū)?,反向截止的特性。發(fā)光二極管的伏安特性曲線與普通二極管相似,如圖7-12所示(為了便于比較,圖中用虛線表示普通二極管的伏安特性曲線)。
圖7-12LED二極管伏安特性曲線2/26/202430
(1)
外加正向電壓小于0.9V~1.1V時(shí),LED不導(dǎo)通;當(dāng)外加電壓大于正向閥值電壓時(shí),LED導(dǎo)通,同時(shí)發(fā)光。顯然,LED二極管的正向?qū)妷罕绕胀ǘO管大,具體數(shù)值與LED材料有關(guān),如表7-7所示。表7-7LED正向壓降與材料的關(guān)系(2)
LED導(dǎo)通后,伏安特性曲線更陡,即LED導(dǎo)通后,內(nèi)阻更?。ㄒ虼艘渤S米鹘祲涸?,如將+5V電源降為3V電源)。(3)LED二極管反向擊穿電壓比普通二極管低,一般在5V~10V之間。
LED材料正向?qū)妷篤F/V砷化鎵(GaAs)1.2鎵鋁砷(GaAlAs)1.6~1.8磷化鎵(GaP)1.9~2.5磷砷化鎵(GaAsP)1.6~1.82/26/2024317.3.2驅(qū)動(dòng)電路
LED工作電流較大,而MCS~51系列CPUP1~P3口I/O引腳負(fù)載能力僅為四個(gè)TTL門電路,因此不能直接驅(qū)動(dòng)LED發(fā)光二極管,必須使用三極管或驅(qū)動(dòng)IC芯片驅(qū)動(dòng),如圖7-13所示。
圖7-13CPU與LED接口電路(a)、(b)、(d)低電平有效;(c)高電平有效
2/26/2024327.3.3LED發(fā)光二極管顯示狀態(tài)及同步
一般說來,單個(gè)LED有“亮”、“滅”顯示兩種狀態(tài),但在單片機(jī)應(yīng)用系統(tǒng)中,由于I/O引腳、成本等因素限制,要求一只LED發(fā)光二極管顯示出更多的狀態(tài)。例如電源監(jiān)控設(shè)備中的電源指示燈就可能用“滅”、“常亮”、“快閃”、“慢閃”四種狀態(tài)分別表示“無交流”、“交流正?!薄ⅰ斑^壓”、“欠壓”四種狀態(tài);又如,帶有后備電池設(shè)備的電源指示燈也可用“滅”、“常亮”、“快閃”、“慢閃”分別表示“無交流/電池電壓正常”、“交流正常/電池電壓正常”、“交流正常/電池低壓”、“無交流/電池低壓”四種狀態(tài)。在這種情況下,一般用兩個(gè)bit記錄每一只LED發(fā)光二極管的狀態(tài),如00表示滅;01表示慢閃;10表示快閃;11表示常亮,這樣一字節(jié)內(nèi)部RAM單元可記錄4個(gè)LED指示燈的狀態(tài)。2/26/202433當(dāng)系統(tǒng)中存在兩個(gè)或兩個(gè)以上LED發(fā)光二極管以閃爍方式表示不同的狀態(tài)時(shí),就遇到LED顯示同步問題,否則可能出現(xiàn)甲燈亮?xí)r,乙燈滅——呈現(xiàn)類似霓虹的走動(dòng)顯示效應(yīng)。解決方法:快閃、慢閃時(shí)間呈倍數(shù)關(guān)系,如快閃切換時(shí)間為0.15s~0.25s,則慢閃切換時(shí)間可設(shè)為0.45s~0.75s(2~3倍);然后在定時(shí)中斷服務(wù)程序中設(shè)置快、慢閃切換標(biāo)志,并根據(jù)LED狀態(tài)關(guān)閉或打開LED指示燈即可。2/26/2024347.4LED數(shù)碼管及其顯示驅(qū)動(dòng)電路
7.4.1LED數(shù)碼管
LED數(shù)碼管是單片機(jī)控制系統(tǒng)中最常用的顯示器件之一,LED數(shù)碼管在單片機(jī)應(yīng)用系統(tǒng)中的地位類似于CRT(陰極射線管)顯示器在臺(tái)式微機(jī)系統(tǒng)中的地位。在單片機(jī)系統(tǒng)中,常用一只到數(shù)只,甚至十幾只LED數(shù)碼管顯示CPU的處理結(jié)果、輸入/輸出信號(hào)的狀態(tài)或大小。
2/26/202435LED數(shù)碼管的外觀如圖7-14(a)所示,筆段及其對(duì)應(yīng)引腳排列如圖7-14(b)所示,其中a~g段用于顯示數(shù)字或字符的筆畫,dp顯示小數(shù)點(diǎn),而3、8引腳連通,作為公共端。一英寸以下的LED數(shù)碼管內(nèi),每一筆段含有1只LED發(fā)光二極管,導(dǎo)通壓降為1.2V~2.5V;而一英寸及以上LED數(shù)碼管的每一筆段由多只LED發(fā)光二極管以串、并聯(lián)方式連接而成,筆段導(dǎo)通電壓與筆段內(nèi)包含的LED發(fā)光二極管的數(shù)目、連接方式有關(guān)。在串聯(lián)方式中,確定電源電壓Vcc時(shí),每只LED工作電壓通常以2.0V計(jì)算,例如4英寸七段LED數(shù)碼顯示器LC4141的每一筆段由四只LED發(fā)光二極管按串聯(lián)方式連接而成,因此導(dǎo)通電壓應(yīng)在7V~8V之間,電源電壓Vcc必須取9V以上。2/26/202436根據(jù)LED數(shù)碼管內(nèi)各筆段LED發(fā)光二極管的連接方式,可以將LED數(shù)碼管分為共陰極和共陽(yáng)極兩大類。在共陰極LED數(shù)碼管中,所有筆段的LED發(fā)光二極管的負(fù)極連在一起,如圖7-14(c)所示;而在共陽(yáng)極LED數(shù)碼管中,所有筆段的LED發(fā)光二極管的正極連在一起,如圖7-14(d)所示。圖7-14LED數(shù)碼顯示管
2/26/2024377.4.2LED數(shù)碼顯示器接口電路
從LED數(shù)碼管結(jié)構(gòu)可以看出,點(diǎn)亮不同筆段就可以顯示出不同的字符,例如筆段a、b、c、d、e、f被點(diǎn)亮?xí)r,就可以顯示數(shù)字“0”;又如筆段a、b、c、d、g被點(diǎn)亮就顯示數(shù)字“3”。理論上,七個(gè)筆段可以顯示128種不同的字符,扣除其中沒有意義的組合狀態(tài)后,七段LED數(shù)碼管可以顯示的字符如表7-9所示。
依據(jù)顯示驅(qū)動(dòng)方式的不同,可將LED數(shù)碼顯示驅(qū)動(dòng)電路分為靜態(tài)顯示方式和動(dòng)態(tài)顯示方式。2/26/2024381.LED靜態(tài)顯示接口電路
LED靜態(tài)顯示接口電路由筆段代碼鎖存器、筆段譯碼器(采用軟件譯碼的LED靜態(tài)顯示驅(qū)動(dòng)電路不用筆段譯碼器)、驅(qū)動(dòng)器等部分組成。在單片機(jī)應(yīng)用系統(tǒng)中,一般不用七段譯碼器芯片,如74249、CD4511等構(gòu)成筆段譯碼,而是采用軟件方式實(shí)現(xiàn)譯碼,原因是軟件譯碼靈活、方便,下面是單片機(jī)系統(tǒng)中常用的LED靜態(tài)顯示接口電路形式。
2/26/202439(1)圖7-15(a)是一位的共陽(yáng)LED靜態(tài)顯示驅(qū)動(dòng)電路,P1口輸出筆段代碼,通過7407驅(qū)動(dòng)LED數(shù)碼管。該電路優(yōu)點(diǎn)是結(jié)構(gòu)簡(jiǎn)單,直接利用P1口鎖存器作筆段代碼鎖存器,缺點(diǎn)是占有了P1.0~P1.6七根I/O線。
2/26/202440(2)在圖7-15(b)中,通過八上升沿D型觸發(fā)器74LS273擴(kuò)展輸出口,分別作為L(zhǎng)ED1、LED2的筆段代碼鎖存器。
2/26/202441(3)如果LED數(shù)碼管工作電流小于10mA,使用74HC273芯片后,可省去OC輸出的驅(qū)動(dòng)芯片7407,如圖7-15(c)所示。
2/26/202442(4)當(dāng)系統(tǒng)中I/O引腳資源不緊張時(shí),可使用I/O引腳作D型觸發(fā)器鎖存脈沖,如圖7-15(d)。
2/26/2024432.動(dòng)態(tài)顯示方式LED顯示器
在靜態(tài)顯示方式中,顯示驅(qū)動(dòng)程序簡(jiǎn)單,CPU占用率低,但每一位LED數(shù)碼管需要一個(gè)8位鎖存器來鎖存每一顯示位的筆段代碼,硬件開銷大(元件數(shù)目多,印制板面積也會(huì)隨之增加),僅適用于顯示位數(shù)較少(4位以下)的場(chǎng)合。當(dāng)需要顯示的位數(shù)在4~12時(shí),多采用按位掃描軟件(在單片機(jī)系統(tǒng)一般不用硬件)譯碼的動(dòng)態(tài)顯示方式或按筆段掃描的動(dòng)態(tài)顯示方式,如圖7-16所示。2/26/2024442/26/202445在圖7-15中,使用P2口作為筆段碼鎖存器,用7407作筆段碼驅(qū)動(dòng)器(由于在LED動(dòng)態(tài)顯示電路中,為獲得足夠亮度,限流電阻小,LED瞬態(tài)電流大,一般不能省去筆段驅(qū)動(dòng)器);P0口作位掃描碼鎖存器,用低頻中功率PNP管作位驅(qū)動(dòng)器。顯然,筆段、位掃描均采用軟件譯碼方式。顯示時(shí),依次將各位筆段碼送P2口,位掃描碼送P口,即可分時(shí)顯示所有位。就微觀來說,任一時(shí)刻只有一只LED數(shù)碼管工作,但由于人眼視覺惰性特征,只要刷新頻率不小于25Hz,宏觀上就看到所有位同時(shí)亮,且沒有閃爍感。從圖中可以看出,在軟件譯碼的動(dòng)態(tài)LED顯示電路中,無論位數(shù)多寡,都只需一套筆段碼鎖存器與驅(qū)動(dòng)器,一套位掃描碼鎖存器與驅(qū)動(dòng)器,硬件開銷少。因此,在單片機(jī)應(yīng)用系統(tǒng)中得到了廣泛應(yīng)用。
2/26/202446當(dāng)CPUI/O引腳資源緊張時(shí),可采用D型鎖存器、可編程8255并行I/O擴(kuò)展芯片構(gòu)成動(dòng)態(tài)LED顯示器的筆段碼鎖存器和位掃描碼鎖存器,如圖7-16所示。圖(a)使用兩片74LS273構(gòu)成筆段碼鎖存器和位掃描碼鎖存器,而圖(b)用8255的B口作為筆段碼鎖存器;A口作為位掃描碼鎖存器。由于8255A口負(fù)載能力有限,不能直接驅(qū)動(dòng)LED,為此圖中采用中功率PNP管(如MPS8850)增大筆段驅(qū)動(dòng)電流。
2/26/202447(a)由74LS273(74HC273)構(gòu)成的按位掃描動(dòng)態(tài)顯示驅(qū)動(dòng)電路2/26/202448當(dāng)顯示位數(shù)較多,如12位以上時(shí),即使將顯示刷新率降到25Hz(實(shí)際上當(dāng)刷新頻率降到25Hz時(shí)已出現(xiàn)明顯閃爍現(xiàn)象)后,仍不能保證每位顯示時(shí)間大于1ms時(shí),可采用按字段掃描方式或按位分組掃描方式的動(dòng)態(tài)顯示驅(qū)動(dòng)電路。在按字段掃描方式中,不論位數(shù)多少,對(duì)于八段數(shù)碼顯示器來說,筆段引腳只有8根,即使顯示刷新頻率為50Hz,按字段掃描時(shí),每一字段顯示時(shí)間依然為1/(50×8)=2.5ms。顯示時(shí)每次點(diǎn)亮一個(gè)字段(即掃描信息從字段引腳dp~a輸入),同一字段的顯示信息由位選擇電路控制,如圖7-17(a)所示,顯示時(shí)先將顯示數(shù)碼緩沖區(qū)內(nèi)數(shù)碼轉(zhuǎn)換為筆段碼,然后將筆段碼緩沖區(qū)內(nèi)信息轉(zhuǎn)化為位筆段顯示信息碼,如下所示。顯示時(shí)只將位筆段顯示信息送位選擇口。2/26/202449由8255構(gòu)成的按位掃描動(dòng)態(tài)顯示驅(qū)動(dòng)電路2/26/2024507.5鍵盤電路
在單片機(jī)應(yīng)用系統(tǒng)中,除了復(fù)位按鈕外,可能還需要其他按鍵,以便控制系統(tǒng)的運(yùn)行狀態(tài),或向系統(tǒng)輸入運(yùn)行參數(shù)。鍵盤電路一般由鍵盤接口電路、按鍵(由控制系統(tǒng)運(yùn)行狀態(tài)的功能鍵和向系統(tǒng)輸入數(shù)據(jù)的數(shù)字鍵組成)以及鍵盤掃描程序等部分組成。7.5.1按鍵結(jié)構(gòu)按鍵電壓波形7.5.2鍵盤電路形式7.5.3鍵盤按鍵編碼7.5.4鍵盤監(jiān)控方式2/26/2024517.5.1按鍵結(jié)構(gòu)按鍵電壓波形1.按鍵結(jié)構(gòu)及工作原理
單片機(jī)控制系統(tǒng)中廣泛使用的機(jī)械鍵盤的工作原理是:按下鍵帽時(shí),按鍵內(nèi)的復(fù)位彈簧被壓縮,動(dòng)片觸點(diǎn)與靜片觸點(diǎn)相連,使按鍵的兩個(gè)引腳被接通,接觸電阻大小與按鍵觸點(diǎn)面積及材料有關(guān),一般在數(shù)十Ω以下;松手后,復(fù)位彈簧將動(dòng)片彈開,使動(dòng)片與靜片觸點(diǎn)脫離接觸,兩引腳斷開??梢?,機(jī)械鍵盤或按鈕的基本工作原理就是利用動(dòng)片和靜片觸點(diǎn)的接觸和斷開來實(shí)現(xiàn)鍵盤或按鈕兩引腳的通、斷。2/26/202452在理想狀態(tài)下,按鍵引腳電壓變化如圖7-20(a)所示。但實(shí)際上,在按鍵被按下或放開的瞬間,由于機(jī)械觸點(diǎn)存在彈跳現(xiàn)象,實(shí)際按鍵電壓波形如圖7-20(b)所示,即機(jī)械按鍵在按下和釋放瞬間存在抖動(dòng)現(xiàn)象,抖動(dòng)時(shí)間的長(zhǎng)短與按鍵的機(jī)械特性有關(guān),一般在5ms~10ms之間,而按鍵穩(wěn)定閉合期長(zhǎng)短與按鍵時(shí)間有關(guān),從數(shù)百毫秒到數(shù)秒不等。為了保證按鍵由“按下”到“松手”之間僅視為一次或數(shù)次輸入(對(duì)于具有重復(fù)輸入功能的按鍵),必須在硬件或軟件上采取去抖動(dòng)措施,避免一次按鍵輸入一串?dāng)?shù)碼。2.按鍵波形2/26/2024537.5.2鍵盤電路形式
根據(jù)所需按鍵個(gè)數(shù)、I/O引腳輸出級(jí)電路結(jié)構(gòu)以及可利用的I/O引腳數(shù)目,確定鍵盤電路形式。2/26/2024541.直接編碼輸入鍵盤
通過檢測(cè)單片機(jī)I/O引腳電平狀態(tài),判別有無按鍵輸入就構(gòu)成了直接編碼鍵盤,如圖7-19(b)所示。優(yōu)點(diǎn)是鍵盤接口電路簡(jiǎn)單,適用于僅需少量按鍵的場(chǎng)合2/26/2024552.矩陣鍵盤
當(dāng)系統(tǒng)所需按鍵個(gè)數(shù)較多時(shí),為了減少鍵盤電路占用的I/O引腳數(shù)目,一般采用矩陣鍵盤形式,如圖7-22所示。在矩陣鍵盤電路中,行線是輸入引腳,列線是輸出引腳(當(dāng)然也可以倒過來,將行線作為輸出引腳,而列線作為輸入引腳)。2/26/2024562/26/2024577.5.3鍵盤按鍵編碼在鍵盤電路中,按鍵的個(gè)數(shù)不止一個(gè),即存在鍵盤按鍵編碼(鍵值)問題。按鍵編碼與按鍵功能(即鍵名)有關(guān)聯(lián),但又是兩個(gè)不同的概念。鍵盤電路結(jié)構(gòu)不同,確定鍵值的方式也不同,例如對(duì)于圖7-19這樣的簡(jiǎn)單鍵盤接口電路,將K0對(duì)應(yīng)的按鍵值定義為“0”;K1對(duì)應(yīng)的按鍵值定義為“1”;依此類推,K3對(duì)應(yīng)的按鍵值定義為“3”。對(duì)于圖7-22所示的矩陣鍵盤接口電路,確定鍵值的方法很多:可用行、列對(duì)應(yīng)的二進(jìn)制值作為鍵值,例如當(dāng)列線P1.7~P1.4輸出的掃描信號(hào)為1110,如果P1.4與P1.0交叉點(diǎn)對(duì)應(yīng)按鍵,即第一個(gè)按鍵被按下時(shí),從P1.3~P1.0口讀入的信息必然為1110,因此P1.0與P1.4交叉點(diǎn)對(duì)應(yīng)的按鍵值為1110,1110(即0EEH);同理,P1.0與P1.5交叉點(diǎn)對(duì)應(yīng)的按鍵值為1101,1110(即0BEH),P1.0與P1.7交叉點(diǎn)對(duì)應(yīng)的按鍵值為0111,1110(即7EH)。但通過這種編碼方式獲得的鍵值分散性大,且不等距。因此,一般均按順序?qū)︽I盤按鍵進(jìn)行編碼,即將按鍵行列對(duì)應(yīng)的二進(jìn)制碼作為掃描碼,查表轉(zhuǎn)換為鍵值。2/26/202458例如,可按如下順序?qū)D7-23所示矩陣鍵盤的按鍵進(jìn)行編號(hào):將P1.0引腳對(duì)應(yīng)行線的行號(hào)定義為0,P1.1引腳對(duì)應(yīng)行線的行號(hào)定義為1,P1.2引腳對(duì)應(yīng)行線的行號(hào)定義為2,P1.3引腳對(duì)應(yīng)行線的行號(hào)定義為3;P2.0引腳對(duì)應(yīng)列線的列號(hào)定義為0,P2.1引腳對(duì)應(yīng)列線的列號(hào)定義為1,依次類推,P2.4引腳對(duì)應(yīng)列線的列號(hào)定義為4,則鍵盤任意按鍵的掃描碼=5×行號(hào)+列號(hào)(因?yàn)橐恍袨?列)或4×列號(hào)+行號(hào)(因?yàn)橐涣袨?行)。2/26/2024597.5.4鍵盤監(jiān)控方式在單片機(jī)應(yīng)用系統(tǒng)中,可采用查詢方式(包括隨機(jī)掃描方式和定時(shí)中斷掃描方式)或硬件中斷方式監(jiān)視鍵盤有無按鍵輸入。2/26/2024601.隨機(jī)掃描方式
在隨機(jī)掃描方式中,CPU完成某一特定任務(wù)后,執(zhí)行鍵盤掃描程序,以確定鍵盤有無按鍵被按下,然后根據(jù)按鍵功能執(zhí)行相應(yīng)的操作。但這種掃描方式因不能在執(zhí)行按鍵規(guī)定操作中檢測(cè)鍵盤有無輸入,失去了對(duì)系統(tǒng)的控制,很少采用。2/26/2024612.定時(shí)掃描方式
定時(shí)掃描方式與隨機(jī)掃描方式基本相同,利用CPU內(nèi)的定時(shí)中斷,每隔一定時(shí)間(10ms-50ms)掃描鍵盤有無按鍵被按下,鍵盤反映速度較快,在執(zhí)行按鍵功能規(guī)定操作過程中,可通過鍵盤命令進(jìn)行干預(yù),如取消,或暫停等。在定時(shí)掃描方式中,為提高CPU利用率,盡量避免通過被動(dòng)延遲10ms~20ms方式等待按鍵穩(wěn)定閉合,建議在定時(shí)中斷服務(wù)程序中,用3個(gè)位存儲(chǔ)單元記錄最近三次定時(shí)中斷檢測(cè)到的按鍵狀態(tài)(可初始化為111態(tài))。如果規(guī)定沒有按鍵被按下時(shí)為“1”,有按鍵被按下時(shí)為“0”,則按鍵狀態(tài)含義下:2/26/202462111——表示最近三次定時(shí)中斷均未發(fā)現(xiàn)按鍵被按下;110——表示前兩次定時(shí)中斷未檢測(cè)到按鍵被按下,只在本次定時(shí)中斷檢測(cè)到按鍵被按下,未延遲,還不能肯定按鍵被按下。100——表示最近兩次定時(shí)中斷檢測(cè)到按鍵被按下,且已延遲了一次定時(shí)中斷時(shí)間;對(duì)鍵盤進(jìn)行掃描,確定哪一按鍵被按下,并執(zhí)行按鍵規(guī)定的動(dòng)作。000——表示處于按鍵穩(wěn)定閉合期。001——按鍵可能處于釋放狀態(tài)。011——按鍵已經(jīng)釋放。010——在很短時(shí)間內(nèi)(小于兩次中斷時(shí)間)檢測(cè)到按鍵處于釋放狀態(tài),視為干擾,作000態(tài)處理。101——在很短時(shí)間內(nèi)(小于兩次中斷時(shí)間間隔)檢測(cè)到按鍵處于按下狀態(tài),視為干擾,作111態(tài)處理。再利用一字節(jié)內(nèi)部RAM單元保存按鍵值和按鍵有效標(biāo)志(在單片機(jī)控制系統(tǒng)中,按鍵個(gè)數(shù)一般不超過64個(gè),為減小內(nèi)存開銷,可使用該字節(jié)的b7位作為按鍵有效標(biāo)志),如下所示。這樣不僅記錄了最近按了哪一按鍵,也記錄是否已執(zhí)行了按鍵規(guī)定的操作。2/26/2024637.6并行接口及應(yīng)用實(shí)例
7.6.1MCS-51與并行輸入/輸出設(shè)備之間的連接
當(dāng)單片機(jī)芯片以并行方式與另一單片機(jī)芯片或并行輸入/輸出設(shè)備連接時(shí),就涉及并行接口問題,在并行接口中主要涉及下列信號(hào):(1)數(shù)據(jù)線及寬度。對(duì)于8位并行接口設(shè)備來說,數(shù)據(jù)線寬度為8位,即D7~D0;對(duì)16位并行接口來說,數(shù)據(jù)線寬度為16位,即D15~D0。在單片機(jī)應(yīng)用系統(tǒng)中,由于I/O引腳限制,數(shù)據(jù)線寬度也可能只有4位(D3~D0),即一個(gè)字節(jié)分兩次傳送。2/26/202464(2)
選通脈沖(Strobe)。由輸出設(shè)備提供,輸入設(shè)備用信號(hào)鎖存數(shù)據(jù)總線上的數(shù)據(jù)。至于采用低電平有效,還是高電平有效由并行通信協(xié)議決定。(3)
應(yīng)答信號(hào)(Acknowledge)。由輸入設(shè)備提供,當(dāng)輸入設(shè)備已讀取了數(shù)據(jù)總線上的數(shù)據(jù)時(shí),向輸出設(shè)備回送的應(yīng)答信號(hào)。此外,一些高速并行輸入設(shè)備,如并行接口打印機(jī)帶有一定容量的輸入緩沖器,可連續(xù)接收輸入數(shù)據(jù),在這類并行設(shè)備中多使用Busy(輸入設(shè)備忙)聯(lián)絡(luò)信號(hào)代替應(yīng)答信號(hào)。輸出設(shè)備將數(shù)據(jù)輸出到數(shù)據(jù)總線,并給出選通信號(hào)后,如果檢測(cè)到Busy信號(hào)無效,就接著輸出下一數(shù)據(jù),直到Busy信號(hào)有效為止(表示輸入緩沖器滿)。2/26/202465MCS-51與并行輸出/輸入設(shè)備之間可按圖7-25所示連接。圖7-25MCS-51與并行輸入/輸出設(shè)備之間的連接2/26/2024667.6.2MCS-51與并行打印機(jī)之間的連接
1.并行打印機(jī)接口標(biāo)準(zhǔn)并行打印機(jī)一般采用與Centronic標(biāo)準(zhǔn)兼容的DB-25并行接口,各信號(hào)含義如表7-9所示,DB-25插座引腳編號(hào)、信號(hào)時(shí)序如圖7-26所示。2/26/202467表7-9Centronic并行接口標(biāo)準(zhǔn)信號(hào)引腳編號(hào)信號(hào)名稱信號(hào)流向(輸入/輸出)含義1輸入,低電平有效輸入選通脈沖2~9D0~D7輸入數(shù)據(jù)總線。由主控設(shè)備,如計(jì)算機(jī)主機(jī)向打印機(jī)輸出控制命令及數(shù)據(jù)。10輸出,低電平有效打印機(jī)應(yīng)答信號(hào)。表明打印機(jī)已可靠接收了主機(jī)輸出的數(shù)據(jù)。11Busy輸出,高電平有效打印機(jī)忙信號(hào),當(dāng)該信號(hào)有效時(shí),表示打印機(jī)忙(即打印機(jī)輸入緩沖器滿,不能再接收數(shù)據(jù))。12PE輸出,高電平有效打印機(jī)缺紙。當(dāng)PE為高電平時(shí),表示打印機(jī)處于缺紙狀態(tài)。13SEL輸出,高電平有效聯(lián)機(jī)信號(hào)。當(dāng)SEL為低電平時(shí),表明打印機(jī)處于脫機(jī)狀態(tài)(如打印電纜未連接或用戶觸發(fā)聯(lián)機(jī)按鈕造成脫機(jī))14備用15輸出,低電平有效出錯(cuò)。當(dāng)輸入命令有錯(cuò)時(shí),該信號(hào)有效16~17備用18~25GND接地2/26/202468圖7-26并行打印機(jī)插座引腳編號(hào)及信號(hào)時(shí)序
2/26/2024692.MCS-51與并行打印機(jī)之間連接實(shí)例當(dāng)I/O引腳資源不緊張時(shí),并行打印機(jī)各信號(hào)線直接掛接在MCS-51的I/O引腳上,如圖7-27(a)所示;當(dāng)I/O引腳資源緊張時(shí),可通過并行I/O口擴(kuò)展芯片,如8255與并行打印機(jī)相連,如圖7-27(b)所示。為充分利用8255功能,當(dāng)8255通過PA口輸出打印數(shù)據(jù)時(shí),最好將8255芯片A口置為方式1(即選通輸出方式),這時(shí)PC7是輸出緩沖器滿信號(hào),將它作為打印機(jī)選通脈沖;打印機(jī)應(yīng)答信號(hào)接PC6引腳,8255中斷請(qǐng)求INTR為高電平有效,可通過NPN三極管反相后接MCS-51外中斷輸入端。2/26/202470圖7-27MCS-51與并行打印機(jī)的連接2/26/2024717.7光電耦合器件接口電路
光電耦合器件是將砷化鎵制成的發(fā)光二極管(發(fā)光源)與受光源(如光敏三極管、光敏晶閘管或光敏集成電路等)封裝在一起,構(gòu)成電-光-電轉(zhuǎn)換器件,
其內(nèi)部結(jié)構(gòu)如圖7-28所示。
從發(fā)光二極管特性看出:發(fā)光強(qiáng)度與流過發(fā)光二極管中的電流大小有關(guān),這樣就將輸入回路中變化的電流信號(hào)轉(zhuǎn)化為變化的光信號(hào),而光敏三極管中集電極電流大小與注入的光強(qiáng)度有關(guān),從而實(shí)現(xiàn)了“電-光-電”的轉(zhuǎn)換。由于輸入回路與輸出回路之間通過光實(shí)現(xiàn)耦合,因此光電耦合器件也稱為光電隔離器件,或簡(jiǎn)稱光耦。
2/26/202472圖7-28光耦結(jié)構(gòu)及等效電路
2/26/202473晶體管輸出的光電耦合器件與單片機(jī)的基本接口電路如圖7-29所示,其中輸入回路的工作原理與LED發(fā)光二極管驅(qū)動(dòng)電路相同,當(dāng)單片機(jī)I/O引腳輸出低電平時(shí),7407輸出級(jí)飽和導(dǎo)通,光耦內(nèi)部的LED發(fā)光,工作電流If=(Vcc
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年預(yù)拌混凝土訂購(gòu)條款
- 銀行助學(xué)貸款管理辦法
- 2024年高端墻紙施工質(zhì)量保證協(xié)議版B版
- 2024年餐館后廚員工合同范本
- 2024年版房地產(chǎn)項(xiàng)目合作開發(fā)委托合同版B版
- 2024完整辦公樓轉(zhuǎn)讓居間業(yè)務(wù)合同(帶裝修)3篇
- 網(wǎng)絡(luò)與新媒體概論說課稿
- 2025年度碼頭集裝箱清洗消毒服務(wù)合同范本2篇
- 醫(yī)院年會(huì)主持詞
- 2025年度體育設(shè)施場(chǎng)地使用權(quán)出讓合同范本3篇
- PLC與人工智能的融合和發(fā)展趨勢(shì)
- 注塑工程師年度總結(jié)報(bào)告
- 肝癌治療情況總結(jié)匯報(bào)
- 科技創(chuàng)新與科技服務(wù)業(yè)協(xié)同發(fā)展策略
- 崗位資質(zhì)管理流程培訓(xùn)方案
- 腦動(dòng)脈狹窄支架植入術(shù)護(hù)理及健康宣教
- 腹膜透析建立課件
- 花籃拉桿式懸挑腳手架工程技術(shù)交底
- 裝修工程施工方案(20篇)
- 蘇教版四年級(jí)數(shù)學(xué)下冊(cè)《全冊(cè)》完整課件ppt
- 水工隧道鋼管內(nèi)襯施工技術(shù)小結(jié)
評(píng)論
0/150
提交評(píng)論