版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
鍵盤顯示器及功率接口第一頁,共七十九頁,編輯于2023年,星期五6.1鍵盤的接口鍵盤是計算機不可缺少的輸入設(shè)備,是實現(xiàn)人機對話的紐帶。按其結(jié)構(gòu)形式鍵盤可分為非編碼鍵盤和編碼鍵盤,前者用軟件方法產(chǎn)生鍵碼,而后者則用硬件方法產(chǎn)生鍵碼。在單片機中使用的都是非編碼鍵盤,因為非編碼鍵盤結(jié)構(gòu)簡單成本低廉。第二頁,共七十九頁,編輯于2023年,星期五按鍵型式有獨立式和矩陣式兩種:1、獨立式按鍵就是各按鍵相互獨立,每個按鍵各接一根輸入線,一根輸入線上的按鍵工作狀態(tài)不會影響其它輸入線上的工作狀態(tài)。因此,通過檢測輸入線的電平狀態(tài)可以容易判斷那個按鍵按下。2、矩陣式按鍵就是鍵盤上的鍵按行列構(gòu)成矩陣,在行列的交叉點上都對應(yīng)有一個鍵。所謂鍵實際上是一個機械彈性開關(guān),被按下則其交點的行線和列線接通。非編碼鍵盤接口技術(shù)的主要內(nèi)容就是如何確定被按鍵的行列位置,并據(jù)此產(chǎn)生鍵碼。這就是所謂鍵的識別問題。第三頁,共七十九頁,編輯于2023年,星期五6.1.1鍵盤輸入的抖動問題
鍵盤實質(zhì)上是一組按鍵開關(guān)的集合,均利用機械觸點的合、斷作用。一個電壓信號通過機械觸點的斷開、閉合過程如圖6.1所示。圖6.1按鍵抖動信號波形第四頁,共七十九頁,編輯于2023年,星期五
按鍵在閉合及斷開的瞬間均伴隨有一連串的抖動,抖動時間的長短由按鍵的機械特性決定,一般為5~10ms。按鍵穩(wěn)定閉合期的長短則由操作人員的按鍵動作所決定的,一般為十分之幾秒到幾秒的時間。鍵的閉合與否,反應(yīng)在電壓上就是呈現(xiàn)出高電平或低電平,如果高電平表示斷開的話,那低電平則表示閉合,通過電平的高低狀態(tài)的檢測,可確認(rèn)按鍵按下與否。為了確保CPU對一次按鍵動作只確認(rèn)一次,必須消除抖動的影響。第五頁,共七十九頁,編輯于2023年,星期五6.1.2消除按鍵抖動的措施
通常有硬件、軟件兩種消除抖動的方法硬件消除抖動方法有一種雙穩(wěn)態(tài)消抖電路如圖6-2所示,其兩個與非門構(gòu)成一個RS觸發(fā)器。當(dāng)按鍵未按下時,輸出為1;鍵按下時,輸出為0。鍵的機械性能,使按鍵因彈性抖動而產(chǎn)生瞬時不閉合,抖動跳開b,只要按鍵不返回原始狀態(tài)a,雙穩(wěn)態(tài)電路的狀態(tài)就不改變,輸出保持為0,不會產(chǎn)生抖動的波形。即使b點的電壓波形是抖動的,但經(jīng)雙穩(wěn)態(tài)電路之后,其輸出為正規(guī)的矩形波形。第六頁,共七十九頁,編輯于2023年,星期五圖6-2雙穩(wěn)態(tài)消抖電路第七頁,共七十九頁,編輯于2023年,星期五軟件消除抖動方法硬件消除抖動法需要增加電子元件,電路復(fù)雜,特別是按鍵較多時,實現(xiàn)起來有困難。而用軟件消除抖動法,不需要增加電子元件,只要編寫一段延時程序,就可以達(dá)到消除抖動的目的,在軟件消除抖動方法中,若CPU檢測到有鍵按下時,先執(zhí)行一段延時程序后再檢測此按鍵,若仍為按下狀態(tài),則CPU認(rèn)為該鍵確實按下。同樣,當(dāng)鍵從按下到再次松開時,CPU檢測到有鍵松開,并在延時一段時間后仍檢測到鍵在松開狀態(tài),則認(rèn)為鍵確實松開,這樣就消除了抖動的影響,實現(xiàn)了軟件消除抖動的目的圖6-3所示為軟件去抖動判別程序的流程圖第八頁,共七十九頁,編輯于2023年,星期五圖6-3軟件消除抖動流程圖第九頁,共七十九頁,編輯于2023年,星期五6.1.3非編碼鍵盤的接口方法
非編碼鍵盤分為獨立式非編碼鍵盤和矩陣式非編碼鍵盤。下面分別進(jìn)行介紹。1.獨立式非編碼鍵盤結(jié)構(gòu)獨立式非編碼鍵盤(又稱小鍵盤),是指直接用一條I/O線對應(yīng)連接一個按鍵(一鍵一線)的鍵盤電路。由于每個按鍵單獨占有一條I/O口線,所以該口線的狀態(tài)只反映該按鍵是否按下,不會影響其它I/O線的狀態(tài)。因而獨立式按鍵電路配置靈活,軟件結(jié)構(gòu)簡單,但在按鍵數(shù)量較多時,需要的I/O口線也較多。獨立式按鍵電路如圖6-4所示。當(dāng)某一按鍵閉合時,相應(yīng)的I/O線變?yōu)榈碗娖健E袛嗍欠裼墟I下的方法是,查詢哪一根接按鍵的I/O線為低電平時,便知此鍵按下。獨立式非編碼鍵盤的優(yōu)點是電路結(jié)構(gòu)簡單。缺點是當(dāng)鍵數(shù)較多時,占用的I/O口線多。例如編寫圖6-4所示的鍵處理程序如下:
第十頁,共七十九頁,編輯于2023年,星期五圖6-4獨立式非編碼鍵盤第十一頁,共七十九頁,編輯于2023年,星期五程序清單START:MOVA,#0FFH; 輸入時先置P1口為全1MOVP1,AMOVA,P1;鍵狀態(tài)輸入JNBACC.0,P0F;0號鍵按下轉(zhuǎn)POF標(biāo)號地址JNBACC.1,P1F;1號鍵按下轉(zhuǎn)P1F標(biāo)號地址JNBACC.2,P2F;2號鍵按下轉(zhuǎn)P2F標(biāo)號地址JNBACC.3,P3F;3號鍵按下轉(zhuǎn)P3F標(biāo)號地址JNBACC.4,P4F;4號鍵按下轉(zhuǎn)P4F標(biāo)號地址JNBACC.5,P5F;5號鍵按下轉(zhuǎn)P5F標(biāo)號地址JNBACC.6,P6F;6號鍵按下轉(zhuǎn)P6F標(biāo)號地址JNBACC.7,P7F;7號鍵按下轉(zhuǎn)P7F標(biāo)號地址SJMPSTART;無鍵按下返回第十二頁,共七十九頁,編輯于2023年,星期五P0F:LJMPPROM0;轉(zhuǎn)至0號鍵功能程序P1F:LJMPPROM1;轉(zhuǎn)至1號鍵功能程序P2F:LJMPPROM2;轉(zhuǎn)至2號鍵功能程序P3F:LJMPPROM3;轉(zhuǎn)至3號鍵功能程序P4F:LJMPPROM4;轉(zhuǎn)至4號鍵功能程序P5F:LJMPPROM5;轉(zhuǎn)至5號鍵功能程序P6F:LJMPPROM6;轉(zhuǎn)至6號鍵功能程序P7F:LJMPPROM7;轉(zhuǎn)至7號鍵功能程序第十三頁,共七十九頁,編輯于2023年,星期五PROM0:......;0號鍵功能程序LJMPSTART;0鍵執(zhí)行完返回PROM1:......;1號鍵功能程序LJMPSTART;1鍵執(zhí)行完返回PROM2:...;2號鍵功能程序LJMPSTART;2號鍵執(zhí)行完返回PROM3:......;3號鍵功能程序LJMPSTART;3號鍵執(zhí)行完返回PROM4:......;4號鍵功能程序LJMPSTART;4號鍵執(zhí)行完返回PROM5:......;5號鍵功能程序LJMPSTART;5號鍵執(zhí)行完返回PROM6:......;6號鍵功能程序LJMPSTART;6號鍵執(zhí)行完返回PROM7:......;7號鍵功能程序LJMPSTART;7號鍵執(zhí)行完返回第十四頁,共七十九頁,編輯于2023年,星期五小測:設(shè)計51單片機通過8255H實現(xiàn)擴展8個獨立按鍵的電路,要求畫出原理圖,并編寫能夠識別是否有鍵按下的程序,要求有防抖程序。
第十五頁,共七十九頁,編輯于2023年,星期五2.矩陣式非編碼鍵盤結(jié)構(gòu)矩陣式非編碼鍵盤適用于按鍵數(shù)量較多的場合。矩陣式鍵盤由行線和列線組成,按鍵位于行、列線的交叉點上,一個由3行*8列構(gòu)成24個按鍵的鍵盤如圖6-5所示。圖6-5矩陣式鍵盤結(jié)構(gòu)第十六頁,共七十九頁,編輯于2023年,星期五矩陣鍵盤的工作原理:按鍵設(shè)置在行、列線交點上,行、列線分別連接到按鍵開關(guān)的兩端。行線通過上拉電阻接到+5V上。無按鍵動作時,行線處于高電平狀態(tài),當(dāng)有鍵按下時,行線電平狀態(tài)將由與此行線相連的列線電平?jīng)Q定。列線電平為低,則行線電平為低;列線電平為高,則行線電平亦為高。這一點是識別矩陣鍵盤按鍵是否被按下的關(guān)鍵。由于矩陣鍵盤中行、列線為多鍵共用,各按鍵均影響該鍵所在行和列的電平。各按鍵彼此將相互發(fā)生影響,所以必須將行、列線信號配合起來并作適當(dāng)?shù)奶幚恚拍艽_定閉合鍵的位置。
第十七頁,共七十九頁,編輯于2023年,星期五
按鍵的識別方法:有掃描法和線反轉(zhuǎn)法。描法是常用的方法,現(xiàn)重點介紹掃描法,此方法分兩步進(jìn)行:第一步,識別鍵盤有無鍵被按下。第二步,如果有鍵被按下,識別出具體的按鍵。識別鍵盤有無鍵被按下的方法是:讓所有列線均置為0電平,檢查各行線電平是否變化。如果有變化,說明有鍵被按下,如果沒有變化,則說明無鍵被按下。識別具體按鍵的方法(亦稱為掃描法);逐列置零電平,其它各列置位高電平,檢查各行線電平的變化,如果其行電平由高電平變?yōu)榈碗娖剑瑒t可確定此行此列交叉點的按鍵被按下。單片機應(yīng)用系統(tǒng)中,鍵盤掃描只是CPU的工作內(nèi)容之一。CPU在忙于各項工作任務(wù)時,如何兼顧鍵盤的輸入,取決于鍵盤工作方式。通常鍵盤工作方式有三種,即編程掃描、定時掃描和中斷掃描。
第十八頁,共七十九頁,編輯于2023年,星期五下面以8031鍵盤實際矩陣電路分析說明鍵盤的編程掃描程序。一是KEY-SCAN鍵檢查子程序
二是KEY-GET鍵掃描取值子程序8031鍵盤接口電路如圖6-6所示。第十九頁,共七十九頁,編輯于2023年,星期五在6000H接口地址的鎖存器74LS373鎖存低電平,此時讀入P1口狀態(tài),在P1.0、P1.1、P1.2三條行線上,只要有一個不是高電平,求反后A中就不為零。此時說明有鍵按下了。否則無鍵按下。鍵檢查子程序:KEY-SCAN:MOVDPTR,#6000H;列口地址送數(shù)據(jù)指針 MOVA,#00H MOVX@DPTR,A;列線送低電平 MOVP1,#0FFH MOVA,P1;讀行線電平 CPLA;求反 ANLA,#07H;A=0無鍵按下,A≠0有鍵按下 RET
以上檢測程序只能判斷有無鍵按下,但在有鍵按下后再分析具體是哪個鍵按下,則需要用掃描鍵取值程序。第二十頁,共七十九頁,編輯于2023年,星期五KEY-GET:ACALLKEY-SCAN;調(diào)鍵檢測 JNZK-G1;有鍵按下AJMPKEY-GETK-G1:LCALLDELAY;消除抖動延時,約18msLCALLKEY-SCAN;再調(diào)鍵檢測JNZK-G2;有鍵按下LCALLDELAYAJMPKEY-GETK-G2:MOVR2,#0FEH;R2存掃描信號MOVR4,#00H;鍵值起始值K-G3:MOVDPTR,#6000H;輸出列掃描信號MOVA,R2MOVX@DPTR,AMOVA,P1;讀P1口JBAcc.0,LINE1;判斷0行高?MOVA,#00H;0行起始值A(chǔ)JMPK-G-END第二十一頁,共七十九頁,編輯于2023年,星期五LINE1:JBAcc.1,LINE2;判斷1行高?MOVA,#08H;1行起始值A(chǔ)JMPK-G-ENDLINE2:JBAcc.2,NEXT-COL;判斷2行高?高下一列MOVA,#10H;2行起始值K-G-END:ADDA,R4;計算鍵值 ENDNEXT-COL:INCR4;換列時加1MOVA,R2JNBAcc.7,KEY-NEXT;7列是低RLA;移到下一行MOVR2,AAJMPK-G3;返回輸出列信號KEY-NEXT:AJMPKEY-GET第二十二頁,共七十九頁,編輯于2023年,星期五在調(diào)用KEY-SCAN程序判明有鍵按下時,再進(jìn)入此程序,否則將在此程序中等待按鍵。這里R2用來提供信號的低電平的位置,R4是用來記錄位線到哪一位,運行程序出口A中得到按鍵的鍵值。其鍵值表如表6-1,鍵值標(biāo)注在鍵位下面園括弧內(nèi)。表6-1鍵位和鍵值圖WRI(12)0(00)1(01)2(02)3(03)[F](16)4(04)5(05)6(06)7(07)MOV(10)8(08)9(09)A(0A)B(0B)USE(17)C(0C)D(0D)E(0E)F(0F)RESMON(11)EXE(14)RDS(13)EXA(15)第二十三頁,共七十九頁,編輯于2023年,星期五除了以上編程掃描工作方式外,定時掃描工作方式是利用單片機內(nèi)部定時器產(chǎn)生定時中斷(例如10ms),CPU響應(yīng)中斷后對鍵盤進(jìn)行掃描,并在有鍵按下時識別出該鍵并執(zhí)行相應(yīng)鍵功能程序,定時掃描工作方式的鍵盤硬件電路與編程掃描工作方式相同。鍵盤工作于編程掃描狀態(tài)時,CPU要不間斷地對鍵盤進(jìn)行掃描工作,以監(jiān)視鍵盤輸入情況,直到有鍵按下為止。其間CPU不能干任何其他工作,如果CPU工作量較大,這種方式將不能適應(yīng)。定時掃描進(jìn)了一大步,除了定時監(jiān)視一下鍵盤輸入情況外,其余時間可進(jìn)行其他任務(wù)的處理,CPU效率提高了,為了進(jìn)一步提高CPU工作效率,可采用中斷掃描工作方式即只有在鍵盤有鍵按下時,才執(zhí)行鍵盤掃描并執(zhí)行該鍵功能程序,如果無鍵按下,CPU將不理睬鍵盤,可以說前兩種掃描方式,CPU對鍵盤的監(jiān)視是主動進(jìn)行的,而后一種掃描方式,CPU對鍵盤的監(jiān)視是被動進(jìn)行的。第二十四頁,共七十九頁,編輯于2023年,星期五6.1.4BCD碼撥盤接口BCD碼十進(jìn)制撥盤是向單片機應(yīng)用系統(tǒng)輸入數(shù)據(jù)的設(shè)備,是一種硬件設(shè)置數(shù)據(jù)的設(shè)備。使用撥盤輸入的數(shù)據(jù)具有不可變性,卻又易于修改。十進(jìn)制輸入,BCD輸出的撥盤是最常使用的一種。圖6-7所示是一個4位BCD碼撥盤組結(jié)構(gòu)和連接示意圖。每位撥盤有0~9十個撥動位置,每個位置有相應(yīng)的數(shù)字表示,分別代表撥盤輸入的十進(jìn)制數(shù)。所以,一位撥盤可以代表一位十進(jìn)制數(shù),可以根據(jù)設(shè)計的需要,用多位BCD碼撥盤組成多位十進(jìn)制數(shù)。
圖6-74位BCD碼撥盤結(jié)構(gòu)和連接第二十五頁,共七十九頁,編輯于2023年,星期五BCD碼盤有一個輸入控制線A,4個BCD碼輸出信號線。撥盤的各個不同的位置,使輸入控制線A分別與4根BCD碼輸出線中的某幾根接通,使BCD碼輸出線的狀態(tài)與撥盤所顯示的值一致,并使該編碼信號輸入單片機的CPU。BCD碼撥盤的輸入輸出狀態(tài)如表6-2所示。
撥盤輸入控制端A輸出狀態(tài)8421010000110001210010310011410100510101610110710111811000911001第二十六頁,共七十九頁,編輯于2023年,星期五BCD碼撥盤與單片機相連的應(yīng)用如圖6-8所示。撥盤的輸入控制線A接+5V,4根輸出線通過電阻接地并接單片機CPU的P1口。由表6.2可知,當(dāng)撥盤在0~9的某個位置時,4根輸出線的8、4、2、1端有一組相應(yīng)的電平狀態(tài)生成,CPU可以通過讀取P1口的端口狀態(tài)知道撥盤設(shè)置的數(shù)據(jù)。在這種情況下,撥盤輸出的BCD碼為正邏輯電平。如果BCD碼撥盤的輸入控制線A接地,4根輸入線通過電阻接+5V,那么撥盤輸出的BCD碼為負(fù)邏輯電平,如圖6-9所示圖6-8單片機與BCD碼盤的接口6-9BCD碼盤負(fù)邏輯接口第二十七頁,共七十九頁,編輯于2023年,星期五6.1.5串行鍵盤應(yīng)用除了利用并行輸入口設(shè)計鍵盤控制電路外,還可以用串行方式設(shè)計鍵盤控制電路。圖6-10為用單片機串行口設(shè)計的串行鍵盤控制電路。CD4014是8位表態(tài)移位寄存器(同步并入),實現(xiàn)并行輸入串行輸出。如圖6.10所示,CD4014的P1~P8作為8個開關(guān)S1~S8的輸入端,輸入的開關(guān)量通過AT89C51的TXD端控制CD4014的CLK端,把輸入值逐次串行輸入AT89C51的RXD端口,并存入寄存器A中。圖6-10單片機串行口鍵盤控制電路第二十八頁,共七十九頁,編輯于2023年,星期五鍵盤電路程序如下:S1:STBP1.0;置位CD4014的P/S端CLRP1.0;清CD4014的P/S端,開始串行移位MOVSCON,#10H;設(shè)置串行方式0,開始接收W1:JNBRI,W1;判RI狀態(tài) CLRRI;一次串行輸入完成 MOVA,SBUF;存放輸入的數(shù)據(jù) RET
除了使用CD4014集成電路外,還可以使用74LS165等集成電路芯片設(shè)計串行鍵盤控制電路。第二十九頁,共七十九頁,編輯于2023年,星期五6.2LED七段發(fā)光顯示器接口
第三十頁,共七十九頁,編輯于2023年,星期五
發(fā)光二極管顯示器,簡稱LED(LightEmittingDiode),LED有七段和八段之分,也有共陰極和共陽極兩種。共陰極LED顯示塊的發(fā)光二極管的陰極連在一起,通常此公共陰極接地,當(dāng)某個發(fā)光二極管的陽極為高電平時。發(fā)光二極管點亮,相應(yīng)段被顯示。同樣共陽板LED顯示塊的發(fā)光二極管的陽極連在一起,通常此公共陽極接正電壓。當(dāng)某個發(fā)光二極管的陰極接低電平時,發(fā)光二極管被點亮,相應(yīng)的段被顯示。兩個顯示塊都有SP顯示段,用于顯示小數(shù)點。顯示器連接如圖6.11所示:
第三十一頁,共七十九頁,編輯于2023年,星期五
圖6.11LED原理及外形引腳圖第三十二頁,共七十九頁,編輯于2023年,星期五
7段字型碼如表6.3所列,由于只有8個段發(fā)光二極管,所以字型碼為一個字節(jié)?!懊住弊侄蜭ED字型碼由于有15個段發(fā)光二極管,所以字型碼為兩個字節(jié)。一般由N片LED顯示塊可拼接成N位LED顯示器。N位LED顯示器有N根位選線和8*N根段選線。根據(jù)顯示方式不同,位選線和段選線的連接方法也各不相同。段選線控制顯示字符的字型,而位選線則控制顯示位的亮、暗。LED顯示器有靜態(tài)顯示和動態(tài)顯示兩種顯示方式。第三十三頁,共七十九頁,編輯于2023年,星期五第三十四頁,共七十九頁,編輯于2023年,星期五6.2.1靜態(tài)顯示接口及編程LED顯示器上工作于靜態(tài)顯示方式時,各位的共陰極(或陽極)連接在一起接地(或+5V);每位的段選線(a~sp),分別與一8位的鎖存器輸出相連。靜態(tài)顯示是由于顯示器中的各位相應(yīng)獨立,而且各位的顯示字符一經(jīng)確定,相應(yīng)鎖存器的輸出將維持不變,直到顯示另一字符為止。靜態(tài)顯示器的亮度較高。由于各位分別由一個8位輸出口控制段選碼,在同一時間里,每一位顯示的字符可以各不相同。這種顯示方式接口,編程容易,管理簡單,付出的代價是占用口線資源較多。第三十五頁,共七十九頁,編輯于2023年,星期五
在單片機應(yīng)用系統(tǒng)中,常采用MCl4495芯片作為LED的靜態(tài)顯示接口,它可以和LED顯示器直接相連。MCl4495芯片的引腳和邏輯框圖如圖6.12所示。它是由4位鎖存器、地址譯碼和筆段ROM陣列以及帶有限流電阻的驅(qū)動電路(輸出電流為10mA)等三部分電路組成。圖6.12中A、B、C、D為二進(jìn)制碼(或BCD碼)輸入端;為鎖存控制端,為低電平時可以輸入數(shù)據(jù)。為高電平時鎖存輸入數(shù)據(jù),h+i為輸入數(shù)據(jù)大于等于10指示位,若輸入數(shù)據(jù)大于或等于10,則h+i輸出高電平,否則輸出為低電平;為輸入等于15指示位,若輸入數(shù)據(jù)等于15,則輸出高電平,否則為高阻狀態(tài)。圖6.12MC14495引腳和邏輯框圖第三十六頁,共七十九頁,編輯于2023年,星期五
MCl4495芯片的作用是輸入被顯字符的二進(jìn)制碼(或BCD碼),并把它自動轉(zhuǎn)換成相應(yīng)字形碼,送給LED顯示。圖6.13為采用MCl4495芯片的4位靜態(tài)LED顯示器接口電路。圖中,P1.7~P1.4用于輸出欲顯示字符的二進(jìn)制碼(或BCD碼),P1.2=0用于控制二~四譯碼器工作,P1.1和P1.0經(jīng)譯碼器輸出后控制MCl4495中哪一位接收P1.7~P1.4上代碼。例:下面以靜態(tài)LED顯示器接口為例編程,編出能在圖6-13電路中自左到右顯示出來的程序。設(shè)8031單片機內(nèi)部RAM的20H和21H單元中有四位十六進(jìn)制數(shù)(20H中為高兩位)。
第三十七頁,共七十九頁,編輯于2023年,星期五
圖6.12MC14495引腳和邏輯框圖圖6.134位靜態(tài)LED顯示器接口
圖6.12MC14495引腳和邏輯框圖第三十八頁,共七十九頁,編輯于2023年,星期五
ORG1000HSDISPLAY:MOVA,20H ;20H中數(shù)送A ANLA,#0F0H ;截取高4 MOVP1,A ;送MC14495 MOVA,20H ;20H中數(shù)送A SWAPA ;低4位送高4位 ANLA,#0F0H ;去掉低4位 INCA;指向MC14495 MOVP1,A;送MC14495 MOVA,21H ;21H中數(shù)送A ANLA,#0F0H ;截取高4位 ADDA,#02H ;指向MC14495 MOVP1,A ;送MC14495 MOVA,21H ;21H中數(shù)送A SWAPA ;低4位送高4位 ANLA,#0F0H ;去掉低4位 ADDA,#03H ;指向MC14495 MOVP1,A ;送MC14495 RET第三十九頁,共七十九頁,編輯于2023年,星期五
在本例中,被顯字符是由硬件MCl4495轉(zhuǎn)換成字形碼的,但也可采用軟件法轉(zhuǎn)換成字形碼。采用軟件法轉(zhuǎn)換時,圖6.13中MCl4495應(yīng)由8位鎖存器替代。靜態(tài)顯示所需的硬件開鎖大,CPU也無法預(yù)先知道什么時候需要改變LED的被顯示字符。如顯示器位數(shù)增多,則靜態(tài)顯示方式更無法適應(yīng)。在顯示位數(shù)較多的情況下,一般都采用動態(tài)顯示方式。第四十頁,共七十九頁,編輯于2023年,星期五6.2.2動態(tài)顯示接口及編程在多位LED顯示時,為了簡化硬件電路,通常將所有位的段選線相應(yīng)地并聯(lián)在一起,由一個(7段LED)8位I/O口控制,形成段選線的多路復(fù)用。而各位的共陽極或共陰極分別由相應(yīng)的I/O口線控制,實現(xiàn)各位的分時選通。第四十一頁,共七十九頁,編輯于2023年,星期五
其原理如圖6.14所示,6位7段LED動態(tài)顯示器電路中段選線占用一個8位I/O口,而位選線占用一個6位I/0口,由于各位的段選線并聯(lián),段選碼的輸出對各位都是相同的。因此同一時刻,如果各位位選線都處于選通狀態(tài)的話,6位LED將顯示相同字符。若要各位LED能顯示出與本位相應(yīng)的顯示字符,就必須采用掃描顯示方式,即在某一時刻,只讓某一位的位選線處于選通狀態(tài),而其他各位的位選線都處于關(guān)閉狀態(tài)。同時在段選線上輸出相應(yīng)位要顯示字符的字型碼,這樣同一時刻6位LED中只有選通的那一位顯示出字符,其他五位則是熄滅的。第四十二頁,共七十九頁,編輯于2023年,星期五同樣在下一時刻,只讓下一位的位選線處于選通狀態(tài),而其他各位的位選線處于關(guān)閉狀態(tài)。同時,在段選線上輸出相應(yīng)位將要顯示字符的字型碼,則同一時刻只有選通位顯示出相應(yīng)的字符,而其他各位則是熄滅的。如此循環(huán)下去,就可以使各位顯示出將要顯示的字符,雖然這些字符是在不同時刻出現(xiàn)的,而在同一時刻,只要一位顯示,其他各位熄滅,但由于人眼有視覺暫留現(xiàn)象,只要每位顯示時間足夠短,則可造成多位同時亮的假象,達(dá)到顯示的目的。
第四十三頁,共七十九頁,編輯于2023年,星期五
圖6.14動態(tài)顯示器電路圖第四十四頁,共七十九頁,編輯于2023年,星期五動態(tài)顯示接口實例
要使lED顯示器顯示出字符,必須提供段選碼和位選碼。段選碼(即字形碼)可以用硬件譯碼的方法得到,也可以用軟件譯碼的方法得到。以8031單片機6位LED動態(tài)顯示接口電路為實例分析說明顯示接口與編程。圖6-15所示,為6位LED顯示器的段選線分別并聯(lián)在一起,由一個74LS373鎖存器提供段選碼,由另一個74LS373鎖存器提供位選碼。這兩個鎖存器由1個74LSl38譯碼器的輸出4和3分別控制,而74LSl38譯碼器的選擇輸入端分別接到P2.7,P2.6,P2.5,最高的三位地址。因此可以得到段選碼鎖存器的接口地址是8000H,位選碼鎖存器的接口地址是6000H,在6位LED顯示器動態(tài)顯示程序中需要6個和6個LED相對應(yīng)的存儲單元,用來存儲相應(yīng)位要顯示字符。這6個單元稱為顯示緩沖區(qū)。第四十五頁,共七十九頁,編輯于2023年,星期五在8031單片機開發(fā)系統(tǒng)中7EH,7DH,7CH,7BH,7AH和79H片內(nèi)數(shù)據(jù)存儲區(qū),和6個LED顯示位由左到右一一對應(yīng),如圖6-16所示。DG6DG5DG4DG3DG2DG17EH7DH7CH7BH7AH79H圖6-16LED對應(yīng)顯示緩沖區(qū)第四十六頁,共七十九頁,編輯于2023年,星期五
圖6.156位LED動態(tài)顯示接口電路第四十七頁,共七十九頁,編輯于2023年,星期五動態(tài)掃描顯示程序清單如下:DISPLAY:MOVR0,#79H;R0指向顯示緩沖區(qū)低位 MOVR3,#01H;R3指向位碼低位MOVA,R3;輸出位碼DISPLAY1:MOVDPTR,#6000H;DPTR指向位口地址MOVX@DPTR,AMOVA,@R0;輸出段碼ADDA,#19H;加PC到TABLE偏移量MOVCA,@A+PC;查表獲得對應(yīng)的段碼MOVDPTP,#8000H;DPTR指向段口地址MOVX@DPTP,A;在段口輸出段碼ACALLDELAY;延時lms左右INCR0;指向下一個緩沖區(qū)地址MOVA,R3;修改位碼JBACC.5,DISPLAY2;已到最左位返回RLA;移到下一位MOVR3,AAJMPDISPLAY1;繼續(xù)循環(huán)
第四十八頁,共七十九頁,編輯于2023年,星期五DISPLAY2:RETDELAY:MOVR7,#02H;延時程序約lmsDELAY1:MOVR6,#0FFHDELAY2:DJNZR6,DELAY2DJNZR7,DELAY1RETTABLE:DBC0H;0的段選碼F9H;1A4H;2B0H;399H;492H;582H;6F8H;780H;890H;988H;A83H;BC6H;CA1H;D86H;E8EH;F第四十九頁,共七十九頁,編輯于2023年,星期五
以上顯示程序是掃描程序,是把6個LED顯示塊從右到左逐個顯示一遍,每一個顯示時間約1ms,如果反復(fù)調(diào)用此顯示程序,循環(huán)下去,根據(jù)人眼的視覺暫留現(xiàn)象,使人感覺這6個LED好象同時在顯示,顯示的內(nèi)容是預(yù)先放在對應(yīng)顯示緩沖區(qū)的內(nèi)容。第五十頁,共七十九頁,編輯于2023年,星期五6.2.38155作LED顯示器接口8155是可編程RAM/IO接口芯片,可與MCS-51單片機直接相接而不需要任何硬件,是單片機系統(tǒng)中最實用,最廣泛使用的接口芯片之一。為了實現(xiàn)LED顯示器的動態(tài)掃描,除了要給顯示器提供段(字形代碼)的輸入之外,還要對顯示器加位的控制。因此多位LED顯示器接口電路需要有二個輸出口,其中一個用于輸出8條段控線(有小數(shù)點顯示);另一個用于輸出位控線,位控線的數(shù)目等于顯示器的位數(shù)。圖6.17是使用8155作六位LED顯示器的接口電路。
第五十一頁,共七十九頁,編輯于2023年,星期五圖6.178155作六位LED顯示器的接口電路
第五十二頁,共七十九頁,編輯于2023年,星期五
其中C口為輸出口(位控口),以PC5~PC0輸出位控線。由于位控線的驅(qū)動電流較大,8段全亮?xí)r約40~60mA,因此PC口輸出加74LS06進(jìn)行反相和提高驅(qū)動能力,然后再接各LED顯示器的位控端。A口也為輸出口(段控口),以輸出8位字形代碼(段控線)。段控線的負(fù)載電流約為8mA,為提高顯示亮度,通常加74LS244進(jìn)行段控輸出驅(qū)動。顯示緩沖區(qū)為了存放顯示的數(shù)字或字符,通常在內(nèi)部RAM中設(shè)置顯示緩沖區(qū)如圖6.16所示,其單元個數(shù)與LED顯示器位數(shù)相同。假定位控口地址0101H,段控口地址0102H。以R0存放當(dāng)前位控值,DELAY為延時子程序。第五十三頁,共七十九頁,編輯于2023年,星期五DIR:MOVR0,#79H;建立顯示緩沖區(qū)首址MOVR3,#01H;從右數(shù)第一位顯示器開始MOVA,R3;位控碼初值LD0:MOVDPTR,#0101H;位控口地址MOVX@DPTR,A;輸出位控碼INCDPTR;得段控口地址MOVA,@R0;取出顯示數(shù)據(jù)DIR0:ADDA,#0DHMOVCA,@A+PC;查表取字形代碼DIR1:MOVX@DPTR,A;輸出段控碼ACALLDL;延時INCR0;轉(zhuǎn)向下一緩沖單元MOVA,R3JBACC.5,LD1;判是否到最高位,到則返回RLA;不到,向顯示器高位移位MOVR3,A;位控碼送R3保存AJMPLD0;繼續(xù)掃描LD1:RETDSEG:DB3FH;字形代表碼DB06HDB5BH…第五十四頁,共七十九頁,編輯于2023年,星期五在動態(tài)掃描過程中,調(diào)用延時子程序DELAY,其延遲時間大約1ms。這是為了使掃描到的那位顯示器穩(wěn)定地點亮一段時間,猶如掃描過程中在每一位顯示器上都有一段駐留時間,以保證其顯示亮度。本例接口電路是軟件為主的接口電路,對顯示數(shù)據(jù)以查表方法得到其字形代碼,為此在程序中有字形代碼表DSEG。從0開始依次寫入十六進(jìn)制數(shù)的字形代碼。為了進(jìn)行查表操作,使用查表指令MOVCA,@A+PC,由PC提供16位基址,由A提供變址。MOVC指令距DSEG表的地址間隔為0DH,因此顯示數(shù)據(jù)送A后,進(jìn)行A-(A)+0DH操作,以求得變址值,然后進(jìn)行查表操作。在實際的單片機系統(tǒng)中,LED顯示程序都是作為一個子程序供監(jiān)控程序調(diào)用。因此各位顯示器都掃過一遍之后,就返回監(jiān)控程序。返回監(jiān)控程序后,經(jīng)過一段時間間隔后,再調(diào)用顯示掃描程序。通過這種反復(fù)調(diào)用來實現(xiàn)LED顯示器的動態(tài)掃描。
第五十五頁,共七十九頁,編輯于2023年,星期五小測:設(shè)計51單片機通過8155H實現(xiàn)擴展6位LED和32鍵鍵盤的電路,要求畫出原理圖,并編寫鍵盤識別和LED顯示的程序。鍵盤識別程序:KEY:MOVDPTR,#7F01H______________MOVX@DPTR,AINCDPTRINCDPTR______________CPLAANLA,#0FHJZKEY…第五十六頁,共七十九頁,編輯于2023年,星期五第五十七頁,共七十九頁,編輯于2023年,星期五LED顯示程序:DIR:MOVR0,#79H;建立顯示緩沖區(qū)首址MOVR3,#01H;從右數(shù)第一位顯示器開始MOVA,R3;位控碼初值LD0:MOVDPTR,______;位控口地址MOVX@DPTR,A;輸出位控碼MOVDPTR,______
;得段控口地址MOVA,@R0;取出顯示數(shù)據(jù)DIR0:ADDA,#0DHMOVCA,@A+PC;查表取字形代碼DIR1:MOVX@DPTR,A;輸出段控碼ACALLDL;延時INCR0;轉(zhuǎn)向下一緩沖單元MOVA,R3______________;判是否到最高位,到則返回RLA;不到,向顯示器高位移位MOVR3,A;位控碼送R3保存AJMPLD0;繼續(xù)掃描LD1:RETDSEG:DB3FH;字形代表碼DB06HDB5BH…第五十八頁,共七十九頁,編輯于2023年,星期五6.4功率器件接口電路第五十九頁,共七十九頁,編輯于2023年,星期五在工業(yè)控制中,單片機的被控對象大多都是功率設(shè)備,需要高電壓大電流,單片機不能直接驅(qū)動,要通過相應(yīng)的接口電路才能輸出一定的功率來驅(qū)動功率設(shè)備。常用的功率接口有繼電器型、晶閘管型、光電隔離型和功率晶體管型等多種形式。
6.4.1繼電器型驅(qū)動接口及編程
繼電器是通過線圈的電流來控制觸點的開與合,由于繼電器的線圈和觸點之間沒有電氣上的聯(lián)系,因此,可以使用繼電器來實現(xiàn)自動控制上的電氣隔離。圖6.25所示是繼電器的基本應(yīng)用電路。第六十頁,共七十九頁,編輯于2023年,星期五
圖6.25所示,KA為繼電器線圈,KAl和KA2是繼電器的動合、動斷觸點,當(dāng)晶體管T的基極輸入一個高電平,使T進(jìn)入飽和狀態(tài),Vc通過繼電器的線圈有電流流過,流過電流的線圈產(chǎn)生磁場力吸引觸點動作。R為晶體管基極限流電阻,二極管D用于對晶體管的保護(hù)。在平時,由于二極管為反向串接,沒有電流過,當(dāng)繼電器線圈失電的瞬間會產(chǎn)生很大的反電動勢,有可能使晶體管擊穿,由于有二極管D的存在,提供了一個通路,使反電動勢不會損壞晶體管,從而起到了保護(hù)作用。在繼電器失電狀態(tài)下,動合觸點斷開,動斷觸點閉合,當(dāng)繼電器得電后,動合觸點閉合,而動斷觸點斷開,利用繼電器的觸點開關(guān)作用可以控制設(shè)備或傳送邏輯電平信號。一般繼電器帶有一組或多組動合、動斷觸點供使用,繼電器的線圈電流也有大小,觸點的接觸電流也有大小,耐壓值也有高有低,用戶可以根據(jù)設(shè)計的要求選用相應(yīng)的繼電器。第六十一頁,共七十九頁,編輯于2023年,星期五
圖6.25繼電器基本應(yīng)用第六十二頁,共七十九頁,編輯于2023年,星期五1、繼電器驅(qū)動接口及電氣參數(shù)在各種控制中,應(yīng)用場合不同,需要選用的繼電器也不同。在設(shè)計繼電器接口電路時,要了解繼電器的一些參數(shù),進(jìn)行正確的設(shè)計,才能獲得好的控制效果。在電路設(shè)計時,應(yīng)根據(jù)印制電路板的大小,選用合適的繼電器,要考慮它的體積、封裝形式。目前,有供印制電路板設(shè)計用的微小型繼電器,供電電壓為5V。
第六十三頁,共七十九頁,編輯于2023年,星期五
對于功率大的驅(qū)動繼電器,有必要在中間增加一級繼電器,如圖6.26所示。第六十四頁,共七十九頁,編輯于2023年,星期五繼電器常用電氣參數(shù)有:
(1)額定工作電壓和電流
是指繼電器在正常工作狀態(tài)下,繼電器線圈兩端所加的電壓值或線圈中流過的電流值,是應(yīng)用于設(shè)計的主要參數(shù),是設(shè)計的依據(jù)。
(2)吸合電壓和電流
是指繼電器能產(chǎn)生吸合動作的最小電壓值或電流值,一般為額定值的75%左右。在設(shè)計中為保證繼電器可靠工作,應(yīng)使控制電壓高于吸合電壓,若控制電壓在吸合電壓左右,就可能造成吸合不可靠或造成頻繁吸合、斷開,產(chǎn)生干擾影響使用。
(3)釋放電壓和電流
是指繼電器在此電壓值以下或電流值在此電流值以下,繼電器不吸合,因此控制電壓值或電流值應(yīng)大大小于釋放電壓或電流,才能使繼電器可靠釋放。
(4)觸點負(fù)載
是指繼電器觸點的負(fù)載能力,反應(yīng)了所能控制設(shè)備的功率大小。應(yīng)使所控制設(shè)備的功率小于觸點負(fù)載,才能使繼電器工作正常,否則會損壞觸點,影常工作。第六十五頁,共七十九頁,編輯于2023年,星期五圖6.27所示是帶光電隔離的繼電器接口電路的應(yīng)用第六十六頁,共七十九頁,編輯于2023年,星期五也可以使P1.0直接驅(qū)動晶體管去帶動繼電器,如圖6.28所示。第六十七頁,共七十九頁,編輯于2023年,星期五圖6.29所示是單片機控制一個220V交流電動機的電路。第六十八頁,共七十九頁,編輯于2023年,星期五6.4.2晶閘管的驅(qū)動接口晶閘管簡稱SCR,是一種大功率半導(dǎo)體器件,分為單向晶閘管和雙向晶閘管。由于可以用較小的電流、電
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年鐵路物流筆試題庫及答案
- 2025年大隊委員筆試題及答案
- 2025年江西撫州人事考試及答案
- 2025年長飛應(yīng)聘筆試及答案
- 2025年黃山市事業(yè)編考試試題及答案
- 2026年工程流體力學(xué)領(lǐng)域的倫理問題探討
- 2026年年工作成效與經(jīng)驗總結(jié)
- 2026年群眾參與在建筑市場政策中的作用分析
- 2026廣東東莞市寮步鎮(zhèn)社區(qū)衛(wèi)生服務(wù)中心招聘納入崗位管理編制外人員7人(第一次)筆試模擬試題及答案解析
- 2026重慶大足區(qū)某機關(guān)事業(yè)單位行政輔助人員招聘1人筆試參考題庫及答案解析
- 書館數(shù)據(jù)管理制度規(guī)范
- 供銷大集:中國供銷商貿(mào)流通集團(tuán)有限公司擬對威海集采集配商貿(mào)物流有限責(zé)任公司增資擴股所涉及的威海集采集配商貿(mào)物流有限責(zé)任公司股東全部權(quán)益價值資產(chǎn)評估報告
- 2025年延安市市直事業(yè)單位選聘(76人)考試參考試題及答案解析
- 2025-2026年人教版二年級上冊語文期末考試卷及答案
- 檢測實驗室安全管理與操作規(guī)程
- 2025云南保山電力股份有限公司招聘(100人)筆試歷年參考題庫附帶答案詳解
- 檔案管理操作規(guī)程及實施細(xì)則
- 寒假班安全協(xié)議書
- (新教材)2026年人教版八年級下冊數(shù)學(xué) 21.1 四邊形及多邊形 課件
- 精神科醫(yī)生精神科醫(yī)療質(zhì)量控制方案
- 2026年高考語文專題復(fù)習(xí):文學(xué)類文本散文閱讀 講義(含練習(xí)題及答案)
評論
0/150
提交評論