資源描述:
《4×4 鍵盤(pán)矩陣控制條形LED顯示》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、沈陽(yáng)理工大學(xué)課程設(shè)計(jì)目錄1課程設(shè)計(jì)概述11.1設(shè)計(jì)目的11.2設(shè)計(jì)內(nèi)容和要求11.3設(shè)計(jì)思路11.4系統(tǒng)設(shè)計(jì)11.5功能要求12硬件開(kāi)發(fā)平臺(tái)23軟件開(kāi)發(fā)平臺(tái)34硬件電路的設(shè)計(jì)44.1硬件電路的基本構(gòu)成44.2硬件電路元器件44.3條形LED燈54.4硬件資源及其分配55程序設(shè)計(jì)75.1程序流程圖:75.2程序代碼86.1運(yùn)行結(jié)果描述106.2仿真結(jié)果圖:10結(jié)論11參考文獻(xiàn)1212沈陽(yáng)理工大學(xué)課程設(shè)計(jì)1課程設(shè)計(jì)概述1.1設(shè)計(jì)目的1、通過(guò)單片機(jī)課程設(shè)計(jì),熟練掌握C語(yǔ)言的編程方法,將理論聯(lián)系到實(shí)踐中去,提高我們的動(dòng)腦和動(dòng)手的能力。2、通過(guò)4×4鍵盤(pán)矩陣控制條形LED顯示系統(tǒng)的設(shè)計(jì),
2、掌握數(shù)碼管的使用方法,和簡(jiǎn)單程序的編寫(xiě),最終提高我們的邏輯抽象能力[1]。1.2設(shè)計(jì)內(nèi)容和要求內(nèi)容:設(shè)計(jì)一個(gè)4×4鍵盤(pán)矩陣控制條形LED顯示。要求:利用單片機(jī)的矩陣鍵盤(pán),條形LED顯示,第幾個(gè)的按鍵對(duì)應(yīng)的幾個(gè)led燈亮。1.3設(shè)計(jì)思路1.先熟悉實(shí)驗(yàn)原理,設(shè)計(jì)8×8LED點(diǎn)陣屏顯示數(shù)字的工作過(guò)程,以及所需要的組件。2.通過(guò)單片機(jī)的各個(gè)引腳的輸出控制8×8LED點(diǎn)陣屏顯示數(shù)字1.4系統(tǒng)設(shè)計(jì)通過(guò)編寫(xiě)程序,實(shí)現(xiàn)用中斷系統(tǒng)對(duì)8×8LED點(diǎn)陣屏的控制,使其每延時(shí)一段時(shí)間,LED點(diǎn)陣的顯示數(shù)字就會(huì)進(jìn)行狀態(tài)轉(zhuǎn)換。采用單片機(jī)內(nèi)部的I/O口上的P0和P3口可來(lái)控制LED點(diǎn)陣。1.5功能要求本設(shè)計(jì)能
3、模擬基本的LED點(diǎn)陣顯示系統(tǒng),是用中斷的方式定時(shí)控制LED點(diǎn)陣顯示的內(nèi)容變換。定時(shí)/計(jì)數(shù)器工作方式寄存器,定時(shí)器采用T0定時(shí)器0工作于模式0位數(shù):13位計(jì)數(shù)范圍:0-8192,每累計(jì)250次定時(shí)器中斷才執(zhí)行一次換數(shù)。12沈陽(yáng)理工大學(xué)課程設(shè)計(jì)2硬件開(kāi)發(fā)平臺(tái)12沈陽(yáng)理工大學(xué)課程設(shè)計(jì)3軟件開(kāi)發(fā)平臺(tái)12沈陽(yáng)理工大學(xué)課程設(shè)計(jì)4硬件電路的設(shè)計(jì)4.1硬件電路的基本構(gòu)成4×4鍵盤(pán)矩陣控制條形LED顯示系統(tǒng),可用單片機(jī)的矩陣鍵盤(pán)的輸入直接控制發(fā)光二極管LED燈的。據(jù)此,本設(shè)計(jì)系統(tǒng)以單片機(jī)為控制核心,連接成最小系統(tǒng)。系統(tǒng)的總體框圖如下所示。P1時(shí)鐘輸入AT89C51矩陣鍵盤(pán)的輸入LED燈顯示P2P
4、3復(fù)位信號(hào)圖4.1硬件電路的總體框圖[2]4.2硬件電路元器件為實(shí)現(xiàn)本設(shè)計(jì)要求的具體功能,可以選用AT89C51單片機(jī)及外圍器件構(gòu)成最小控制系統(tǒng),4×4點(diǎn)陣指示模塊等,所需要的元器件如下表所示:表4-2元器件表器件個(gè)數(shù)Button按鈕16AT89C51單片機(jī)1CAP電容2CAP-ELEC電容112沈陽(yáng)理工大學(xué)課程設(shè)計(jì)CRYSTAL晶振1LED-BARGRAPH-GRN條形LED燈2RES電阻1RESPACK-8排阻24.3條形LED燈根據(jù)本設(shè)計(jì)的特點(diǎn),條形LED燈的顯示不可少,LED燈的顯示采用普通的發(fā)光二極管。在硬件上連接圖上也是對(duì)稱(chēng)分布的,如下圖4.3所示。圖4.3條形LE
5、D燈的連接在本設(shè)計(jì)中,條形LED燈總共有20個(gè),但只應(yīng)用了16個(gè),每次將按鍵按下時(shí)都會(huì)控制著鍵盤(pán)周?chē)蜅l形LED燈周?chē)碾娖接筛唠娖降降碗娖降霓D(zhuǎn)換,使其能讓LED燈進(jìn)行亮滅4.4硬件資源及其分配主要用到的硬件:P1口、P2口、P3口、4×4鍵盤(pán)、條形LED燈。硬件分配:(1)P1口:做為輸入口,與單片機(jī)和4×4鍵盤(pán)相連。(2)P2、P3口:作為輸出口,與條形LED燈相連12沈陽(yáng)理工大學(xué)課程設(shè)計(jì)本系統(tǒng)以單片機(jī)為核心,系統(tǒng)硬件電路由單片機(jī),4×4鍵盤(pán),條形LED燈等組成。其具體的硬件電路總圖如圖4.4所示。圖4.4硬件設(shè)計(jì)連線(xiàn)圖12沈陽(yáng)理工大學(xué)課程設(shè)計(jì)5程序設(shè)計(jì)5.1程序流程圖:開(kāi)
6、始KeyNO賦初值1調(diào)用子函數(shù)P2、P3口初始全滅判斷是否有按鍵按下按鍵號(hào)<8YP3_LED右移一位P2_LED右移一位N結(jié)束Y圖5.1程序流程圖12沈陽(yáng)理工大學(xué)課程設(shè)計(jì)5.2程序代碼#include#include#defineucharunsignedchar#defineuintunsignedintucharcodeKeyCodeTable[]=//定義鍵盤(pán)狀態(tài)數(shù)組{0x11,0x12,0x14,0x18,0x21,0x22,0x24,0x28,0x41,0x42,0x44,0x48,0x81,0x82,0x84,0x88};vo
7、idDelay()//延時(shí)函數(shù){uchari;for(i=0;i<200;i++);}ucharKeys_Scan()//鍵盤(pán)查詢(xún)子函數(shù){ucharsCode,kCode,i,k;P1=0xf0;//為p1口賦初值11111110if((P1&0xf0)!=0xf0)//判斷是否有按鍵按下{Delay();//延時(shí)函數(shù)進(jìn)行消抖if((P1&0xf0)!=0xf0)//判斷是否有按鍵按下{sCode=0xfe;for(k=0;k<4;k++)//行掃描{P1=sCode;if((P1&0xf0