

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、第5章 顯示與鍵盤,——基于Keil和Proteus,配套50例全部取自于本書項目和練習題,免費下載,機械工業(yè)出版社同名教材配套電子教案,張志良主編 Email:zzlls@126.com,單片機應用 項目式教程,第5章 目錄,C51編程基礎知識準備5.1 LED數(shù)碼管和編碼方式5.2 靜態(tài)顯示方式和動態(tài)顯示方式項目14 LED靜態(tài)顯示任務14.1 74LS377并行輸出3位LED數(shù)碼管靜態(tài)顯示任務14
2、.2 74LS164串行輸出3位LED數(shù)碼管靜態(tài)顯示任務14.3 CC4511 BCD碼驅動3位LED數(shù)碼管靜態(tài)顯示項目15 LED動態(tài)顯示任務15.1 74LS139選通4位LED數(shù)碼管動態(tài)顯示任務15.2 74LS595串行傳送8位LED數(shù)碼管動態(tài)顯示C51編程基礎知識準備5.3 LCD 1602液晶顯示屏項目16 LCD 1602液晶顯示屏顯示C51編程基礎知識準備5.4 按鍵開關接口項目17
3、 4×4矩陣式鍵盤接口,C51編程基礎知識準備,5.1 LED數(shù)碼管和編碼方式,在單片機應用系統(tǒng)中,若顯示內(nèi)容只有數(shù)碼和某些字母,使用LED數(shù)碼管是一種較好的選擇。LED數(shù)碼管顯示清晰,成本低廉,配置靈活,與單片機接口簡單易行。,⒈ LED數(shù)碼管,外形和引腳 共陰型 共陽型,⒉ LED數(shù)碼管編碼方式,LED數(shù)碼管編碼方式有多種,按公共端連接方式可分為共陰字段
4、碼和共陽字段碼,共陰字段碼與共陽字段碼互為反碼;按a、b、…、g、Dp編碼順序是高位在前,還是低位在前,又可分為順序字段碼和逆序字段碼。甚至在某些特殊情況下可將a、b、…、g、Dp順序打亂編碼。,5.2 靜態(tài)顯示方式和動態(tài)顯示方式,⒈ 靜態(tài)顯示方式,在靜態(tài)顯示方式下,每一位顯示器的字段需要一個8位I/O口控制,而且該I/O口須有鎖存功能,N位顯示器就需要N個8位I/O口。顯示時,每一位字段碼分別從I/O控制端輸出,亮滅狀態(tài)
5、保持不變,直至刷新。靜態(tài)顯示方式編程較簡單,顯示穩(wěn)定,數(shù)碼管驅動電流較小,但占用I/O端線多,即軟件簡單、硬件成本高,一般適用顯示位數(shù)較少的場合。,⒉ 動態(tài)顯示方式,動態(tài)顯示方式是字段驅動和字位驅動分別進行。字段驅動電路各位共用,相同字段線連在一起,共8段,由一個8位I/O口控制。字位控制需輪流驅動由另一個I/O口控制。,特點是占用I/O端線少;電路較簡單,硬件成本低;編程較復雜,CPU要定時掃描刷新顯示。當要求顯示位數(shù)
6、較多時,通常采用動態(tài)掃描顯示方式。,項目14 LED靜態(tài)顯示,任務14.1 74LS377并行輸出3位LED數(shù)碼管靜態(tài)顯示,⒈ 顯示電路,,74LS377為TTL 8D觸發(fā)器,片內(nèi)有8個D觸發(fā)器。D0~D7為D觸發(fā)器 D輸入端;Q0~Q7是D觸發(fā)器 Q輸出端;時鐘脈沖輸入端CLK,上升沿觸發(fā),8D共用; 為門控端,低電平有效。,⒉ 程序,⒊ Keil 調試和Proteus 虛擬仿真,需要說明的是,由于Proteus軟
7、件中的74LS377無效,運行后,軟件提示“NO model apecified for 74LS377”,無法仿真。因此,用74LS373替代74LS377擴展并行輸出口,只是需多用一個或非門(程序不需變更)。但是,編者的項目實踐累次證明,74LS377擴展并行輸出口有效而簡便。編者認為,Proteus ISIS軟件仍有不足之處,其元器件庫仍在不斷完善之中,并非74LS377不能用于擴展并行輸出口。讀者在實際運用時,應仍
8、選74LS377。,可打開本書配套的任務14.1 ,直接操作。,任務14.2 74LS164串行輸出3位LED數(shù)碼管靜態(tài)顯示,⒈ 顯示電路,74LS164特性已在任務10.1中介紹。其串行擴展3位LED數(shù)碼管靜態(tài)顯示電路如圖5-5所示,RXD串行輸出顯示字段碼,TXD發(fā)出移位脈沖,P1.0控制串行輸出,LED數(shù)碼管為共陽結構。,⒉ 程序,⒊ Keil 調試和Proteus 虛擬仿真,可打開本書配套的任務14.2 ,直接操作。
9、,74LS164串行擴展3位LED數(shù)碼管靜態(tài)顯示電路,既具有靜態(tài)顯示的優(yōu)點,又不多占用80C51 I/O端口資源,實為最佳靜態(tài)顯示電路。,任務14.3 CC4511 BCD碼驅動3位LED數(shù)碼管靜態(tài)顯示,⒈ 顯示電路,CC4511是4線-7段鎖存/譯碼/驅動電路,能將BCD碼譯成7段顯示碼輸出。ABCD為BCD碼輸入端(A是低位),abcdefg為譯碼筆段輸出端。,利用4511實現(xiàn)靜態(tài)顯示與一般靜顯示電路不同,一是節(jié)省I/
10、O端線,段碼輸出只需4根;二是不需專用驅動電路,可直接輸出;三是不需譯碼,直接輸出BCD碼,編程簡單;缺點是只能顯示數(shù)字,不能顯示各種符號。,,,,,,為輸入信號鎖存控制, =0,允許從DCBA端輸入 BCD碼數(shù)據(jù),刷新顯示; =1,維持原顯示狀態(tài)。 為消隱控制端, =0,全暗。 為燈測試控制端, =0,全亮。,⒉ 程序,⒊ Keil 調試和
11、Proteus 虛擬仿真,可打開本書配套的任務14.3 ,直接操作。,項目15 LED動態(tài)顯示,動態(tài)顯示的字段驅動和字位驅動應分別進行,可有多種形式。字段驅動與靜態(tài)顯示的驅動方式相同,有并行輸出、串行輸出和BCD碼輸出;字位驅動需另有I/O端口控制,端線數(shù)與顯示字位數(shù)相同,或用譯碼器譯碼控制(可減少I/O端線數(shù))。,任務15.1 74LS139選通4位LED數(shù)碼管動態(tài)顯示,門控端 =1,禁止譯碼,輸出全1; =0,
12、譯碼有效,,,有效端輸出低電平,正好用于4位共陰型LED數(shù)碼管片選。,⒈ 顯示電路,⒉ 程序,⒊ Keil 調試和Proteus 虛擬仿真,可打開本書配套的任務15.1 ,直接操作。,任務15.2 74LS595串行傳送8位LED數(shù)碼管動態(tài)顯示,74HC595為串行移位寄存器,與74HC164的區(qū)別是:595串入并出分二步操作,第一步移入595片內(nèi)緩沖移位寄存器,第二步由595 RCK端(#12)輸入一個觸發(fā)正脈沖,片內(nèi)緩
13、沖移位寄存器中的數(shù)據(jù)進入輸出寄存器Q0~Q7。而164是直接串入輸出寄存器,串入中間過程有可能在并行輸出端產(chǎn)生誤動作。,圖5-13為74LS595串行傳送8位LED數(shù)碼管動態(tài)顯示電路。在80C51串行口TXD端發(fā)出的時鐘脈沖控制下,顯示位碼和字段碼數(shù)據(jù)從80C51串行口RXD端依次移出,進入595(I)DS端,再由595(I)QS端移出,進入595(II)DS端,直至16位顯示數(shù)據(jù)(8位位碼+8位字段碼)全部移入2片595內(nèi)部
14、緩沖移位寄存器。然后由80C51 P1.0輸出一個正脈沖,觸發(fā)2片595將內(nèi)部緩沖移位寄存器中的數(shù)據(jù)送入輸出寄存器Q0~Q7,在595,=0條件下輸出顯示,整個動態(tài)顯示僅占用3條I/O端線。,⒈ 顯示電路,⒉ 程序,⒊ Keil 調試和Proteus 虛擬仿真,可打開本書配套的任務15.2 ,直接操作。,,,,C51編程基礎知識準備,5.3 LCD 1602液晶顯示屏,由液晶做成的顯示器(Liquid Crystal Disp
15、lay,縮寫為LCD)具有體積小、功耗低、顯示內(nèi)容豐富、超薄輕巧等優(yōu)點,在單片機系統(tǒng)中得到廣泛的應用。,目前,常用的字符型LCD顯示屏主要有1602,能顯示ASCII碼字符,,⒊ 控制指令,,⒈ 顯示電路,⒉ 程序,要求顯示屏第一行顯示:0123456789ab@#$&共16個數(shù)符,第二行顯示:ABCDEFGHIJKLMNOP共16個字母。,項目16 LCD 1602液晶顯示屏顯示,⒊ Keil 調試和Prote
16、us 虛擬仿真,可打開本書配套的項目16 ,直接操作。,C51編程基礎知識準備,5.4 按鍵開關接口,鍵盤在單片機系統(tǒng)中是一個很重要的部件。輸入數(shù)據(jù)、查詢和控制系統(tǒng)的工作狀態(tài),都要用到鍵盤,鍵盤是人工干預計算機的主要手段。,⒈ 按鍵開關去抖動問題,鍵盤的抖動時間一般為5~10ms,抖動現(xiàn)象會引起CPU對一次鍵操作進行多次處理,從而可能產(chǎn)生錯誤,因此必須設法消除抖動的不良后果。,⑴ 硬件去抖動:利用單穩(wěn)、雙穩(wěn)電路和RC濾波電路去
17、抖動。,⑵ 軟件去抖動:延時10ms后再確認該鍵是否確實按下。,按鍵按與CPU的連接方式可以分為獨立式按鍵和矩陣式鍵盤。,⒉ 按鍵連接方式,獨立式按鍵是各按鍵相互獨立,每個按鍵占用一根I/O端線,每根I/O端線上的按鍵工作狀態(tài)不會影響其他I/O端線上按鍵的工作狀態(tài)。獨立式按鍵電路配置靈活,軟件結構簡單,但每個按鍵必須占用一根I/O端線,在按鍵數(shù)量較多時,I/O端線耗費較多,且電路結構顯得繁雜。故這種形式適用于按鍵數(shù)量較少的場合
18、。,矩陣式鍵盤又稱行列式鍵盤,I/O端線分為行線和列線,按鍵跨接在行線和列線上。按鍵按下時,行線與列線連通。4×4行列結構可連接16個按鍵,組成一個鍵盤。與獨立式按鍵相比,16個按鍵只占用8根I/O端線,占用I/O端線較少,因此適用于按鍵較多的場合。,無論獨立式按鍵還是矩陣式鍵盤,與80C51 I/O口的連接方式可以分為與I/O口直接連接和與擴展I/O口連接,與擴展I/O口連接又可分為與并行擴展I/O口連接和與串
19、行擴展I/O口連接。,項目17 4×4矩陣式鍵盤接口,⒈ 接口電路,⒉ 程序,無鍵閉合時,P1.0~P1.3與相應的P1.4~P1.7之間開路;有鍵閉合時,與閉合鍵相連接的兩條I/O端線之間短路。因此,可用下述方法判斷有無鍵按下和確定按下鍵序號:⑴ 判有無鍵閉合。 置列線P1.0~P1.3為輸入態(tài)(高電平),行線P1.4~P1.7輸出低電平。 讀入P1口數(shù)據(jù),若與輸出不符,則有鍵閉合。⑵ 延時10
20、ms消抖。再讀P1口數(shù)據(jù),若仍與輸出不符,則確認有鍵閉合。⑶ 逐行逐列掃描,找出閉合鍵所在行列。⑷ 計算閉合鍵編號。,需要說明的是,圖5-17電路在許多單片機教材和技術資料中被介紹,但實際上該電路連接存在問題,當同一行有多鍵同時按下,且該行其中一鍵所在列又有多鍵同時按下時,會發(fā)生信號傳遞路徑出錯。例如,K1、K2、K8、K9同時按下,當P1.4行掃描輸出低電平時,按理,僅有P1.2、P1.1會因K2、K1閉合而得到低電平列
21、信號。但由于K2與K9同列且K8與K9同行,P1.4輸出的低電平信號會通過K1→K9→K8傳遞到P1.0,產(chǎn)生低電平列信號,引起出錯。同理,當P1.6行掃描輸出低電平時,其低電平信號會通過K9→K1→K2傳遞到P1.2,產(chǎn)生低電平列信號,引起出錯。不出錯的條件是多鍵行與多鍵列不交叉。因此,這種矩陣式鍵盤電路適用于無鎖按鍵并使用中斷處理時相對合理。,⒊ Keil 調試和Proteus 虛擬仿真,可打開本書配套的項目17
22、 ,直接操作。,項目14 LED靜態(tài)顯示任務14.1 74LS377并行輸出3位LED數(shù)碼管靜態(tài)顯示任務14.2 74LS164串行輸出3位LED數(shù)碼管靜態(tài)顯示任務14.3 CC4511 BCD碼驅動3位LED數(shù)碼管靜態(tài)顯示練習題5.9 帶時間顯示模擬交通燈練習題5.10 4094串行輸出3位LED靜態(tài)顯示項目15 LED動態(tài)顯示任務15.1 74LS139選通4位LED數(shù)碼管動態(tài)顯示任務15.2 74
23、LS595串行傳送8位LED數(shù)碼管動態(tài)顯示練習題5.11 PNP晶體管選通3位共陽LED數(shù)碼管動態(tài)顯示練習題5.12 74HC139選通4位LED動態(tài)顯示練習題5.13 74HC138+377選通8位LED動態(tài)顯示練習題5.14 74HC138+164選通8位共陰LED數(shù)碼管動態(tài)顯示項目16 LCD 1602液晶顯示屏顯示LCD 1602液晶顯示屏顯示練習題5.15 LCD1602顯示屏顯示項目17 4
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于proteus和keil的單片機課程設計
- 用proteus和keil建立單片機仿真工程的步驟
- 單片機8279鍵盤顯示實驗
- 鍵盤顯示單片機實習報告
- 基于proteus軟件的單片機項目教學的探索
- Proteus在單片機教學中的應用.pdf
- access基礎與應用教程ppt課件 第5章 窗體
- 基于proteus仿真的單片機技能應用探討
- 基于proteus仿真的單片機技能應用探討
- 單片機課程設計--矩陣鍵盤 led顯示
- 教材及參考書張志良主編,單片機原理與控制技術(第2版)
- proteus仿真單片機實驗
- keil c單片機c語言應用研究
- 畢業(yè)論文外文翻譯-單片機和keil
- 畢業(yè)設計論文--proteus在單片機教學中的應用
- 《51單片機》教案教學教程
- 安全檢測技術 教學課件 ppt 作者 張乃祿 第二版_ 第5章
- proteus-7-professional-仿真51-單片機入門教程
- linux操作系統(tǒng)原理與應用 教學課件 ppt 作者 張玲 第1-6章 第4章
- 單片機原理及接口技術 c51編程 教學課件 ppt 作者 張毅剛 第3章 c51語言編程基礎
評論
0/150
提交評論