版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、<p><b> 交通與汽車工程學院</b></p><p><b> 課程設計說明書</b></p><p> 課 程 名 稱: 微機原理及應用課程設計 </p><p> 課 程 代 碼: 8 2 3 4 5 7 0
2、 </p><p> 題 目: 4x4矩陣鍵盤與LED燈輸出設計 </p><p> 年級/專業(yè)/班: 09/車輛工程/ 汽電(2)班 </p><p> 學 生 姓
3、 名: 李 淵 澤 </p><p> 學 號: 312009110203438 </p><p> 開 始 時 間: 2012 年 07 月 02 日</p><p>
4、 完 成 時 間: 2012 年 07 月 06 日</p><p><b> 課程設計成績:</b></p><p> 指導教師簽名: 年 月 日</p><p><b> 目錄</b></p><p><b> 摘
5、 要 2</b></p><p> 1.1 問題的提出 3 </p><p> 1.2任務與分析 4 </p><p> 2 系統(tǒng)方案設計 4</p><p> 2.2 系統(tǒng)總體框圖 5 </p><p> 3 系統(tǒng)硬件電路設計5</p><p> 3.1 8
6、9C52單片機5 </p><p> 3.2 時鐘電路8 </p><p> 3.3 復位電路8 </p><p> 3.4 矩陣式鍵盤電路 9 </p><p> 3.5 譯碼顯示電路 11 </p><p> 4 系統(tǒng)軟件設計 13 </p><p> 4.1 pro
7、teus軟件環(huán)境介紹 13 </p><p> 4.2 Protel軟件環(huán)境介紹14 </p><p> ·4.3 系統(tǒng)軟件分析 14 </p><p> 4.4 程序流程圖 15 </p><p> 5 系統(tǒng)調(diào)試過程 18 </p><p><b> 結(jié) 論 21 <
8、/b></p><p><b> 致 謝 22 </b></p><p><b> 參考文獻23</b></p><p><b> 附錄124 </b></p><p><b> 附錄2 27</b></p><
9、p><b> 摘 要</b></p><p> 矩陣式鍵盤乃是當今使用最為廣泛的鍵盤模式,該系統(tǒng)以N個端口連接控制N*N個按鍵,即時在LED數(shù)碼管上。單片機控制的據(jù)這是鍵盤顯示系統(tǒng),該系統(tǒng)可以對不同的按鍵進行實時顯示,其核心是單片機和鍵盤矩陣電路部分,主要對按鍵與顯示電路的關系、矩陣式技術(shù)及設備系統(tǒng)的硬件、軟件等各個部分進行實現(xiàn)。</p><p> 矩
10、陣式鍵盤模式以N個端口連接控制N*N個按鍵,實時在LED數(shù)碼管上顯示按鍵信息。顯示按鍵信息,既降低了成本,又提高了精確度,省下了很多的I/O端口為他用,相反,獨立式按鍵雖編程簡單,但占用I/O口資源較多,不適合在按鍵較多的場合應用。并且在實際應用中經(jīng)常要用到輸入數(shù)字、字母、符號等操作功能,如電子密碼鎖、電話機鍵盤、計算器按鍵等,至少都需要12到16個按鍵,在這種情況下如果用獨立式按鍵的話,顯然太浪費I/O端口資源,為了解決這一問題,我們
11、使用矩陣式鍵盤。</p><p> 4*4矩陣式鍵盤采用89C52單片機為核心,主要由矩陣式鍵盤電路、譯碼電路、顯示電路等組成,軟件選用匯編語言編程。單片機將檢測到的按鍵信號轉(zhuǎn)換成數(shù)字量,顯示于LED燈上。該系統(tǒng)靈活性強,易于操作,可靠性高,將會有更廣闊的開發(fā)前景。</p><p> 關鍵詞: 89C52單片機 4*4矩陣 LED燈</p><p>&
12、lt;b> 1 引 言 </b></p><p> 1.1 問題的提出 </p><p> 矩陣式鍵盤模式以N個端口連接控制N*N個按鍵,實時在LED數(shù)碼管上顯示按鍵信息。顯示按鍵信息,既降低了成本,又提高了精確度,省下了很多的I/O端口為他用,相反,獨立式按鍵雖編程簡單,但占用I/O口資源較多,不適合在按鍵較多的場合應用。并且在實際應用中經(jīng)常要用到輸入數(shù)字、
13、字母、符號等操作功能,如電子密碼鎖、電話機鍵盤、計算器按鍵等,至少都需要12到16個按鍵,在這種情況下如果用獨立式按鍵的話,顯然太浪費I/O端口資源,為了解決這一問題,我們使用矩陣式鍵盤。</p><p><b> 矩陣式鍵盤簡介:</b></p><p> 矩陣式鍵盤又稱行列鍵盤,它是用N條I/O線作為行線,N條I/O線作為列線組成的鍵盤。在行線和列線的每個交叉
14、點上設置一個按鍵。這樣鍵盤上按鍵的個數(shù)就為N*N個。這種行列式鍵盤結(jié)構(gòu)能有效地提高單片機系統(tǒng)中I/O口的利用率。</p><p> 最常見的鍵盤布局如圖所示。一般由16個按鍵組成,在單片機中正好可以用一個P口實現(xiàn)16個按鍵功能,這也是在單片機系統(tǒng)中最常用的形式,本設計就采用這個鍵盤模式。</p><p> 圖1-1 矩陣式鍵盤的按鈕</p><p><b
15、> 1.2任務與分析 </b></p><p> 本次設計的系統(tǒng)的控制中心是89C52單片機。首先,在Protel軟件環(huán)境中進行硬件電路圖的設計。然后在8052軟件環(huán)境中進行系統(tǒng)的軟件編程,并進行程序源文件的編譯和調(diào)試,最后生成.hex文件。此.hex文件是硬件電路運行實現(xiàn)的源代碼來源。把.hex文件加載到AT89C52單片機芯片,然后在Proteus軟件環(huán)境中運行硬件電路,LED燈就可以正
16、常顯示了。 </p><p> 本設計的系統(tǒng)主要由:AT89C52為中央處理芯片,用于數(shù)據(jù)處理,初值設定。矩陣鍵盤電路是本設計的核心模塊,由他提供輸入信息并由LED燈顯示,用C語言進行編程。本系統(tǒng)可以分為以下4大模塊:</p><p> 1、AT89C52模塊:用于數(shù)據(jù)處理,和矩陣電路通信,并控制信息傳輸過程,采集輸入信息并予以處理。</p><p> 2、矩
17、陣電路 模塊:實時輸入可以通過軟件編程來實現(xiàn),這種方法需要編制的程序比較簡單。</p><p> 3、LED顯示模塊:顯示模塊采用普通的LED數(shù)碼管,此模塊用于實時的顯示輸入信息。</p><p> 4、程序:包括單片機控制電路的接口程序(實現(xiàn)單片機和矩陣電路及LED燈之間的數(shù)據(jù)傳輸過程)和顯示程序。</p><p><b> 2 系統(tǒng)方案設計<
18、;/b></p><p> 2.1 系統(tǒng)設計方案</p><p> 通過查閱相關資料,設計初期共有2個方案供我選擇,分別是:(1)采用89C2051單片機組成的系統(tǒng);(2)采用89C52單片機組成的系統(tǒng)。</p><p> ?。?)采用89C2051單片機組成的系統(tǒng)</p><p> 此系統(tǒng)的硬件部分主要是由89C2051單片機所
19、組成。該系統(tǒng)硬件結(jié)構(gòu)簡單,但是單片機的I/O接口太少,不足以實現(xiàn)多種功能,軟件設計部分,程序冗長而復雜,易產(chǎn)生混淆。</p><p> (2)采用89C52單片機組成的系統(tǒng)</p><p> 這個方案采用89C52單片機,LED顯示器,4*4鍵盤來組成系統(tǒng)的硬件。8052是8051的強化版,接口多于8051,功能穩(wěn)定,實用性強。</p><p> 所以,本次設
20、計選用AT89C52單片機組成的系統(tǒng)。</p><p> 2.2 系統(tǒng)總體框圖</p><p> 圖2-1 系統(tǒng)總體框圖</p><p> 當程序啟動后,程序進入初始化階段。單片機將從程序中鍵盤按鈕初始化,得到對應的值。再反饋給LED燈,輸入值是多少,就亮多少個燈。</p><p> 3 系統(tǒng)硬件電路設計</p><
21、;p> 3.1 89C52單片機</p><p> AT89C52是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS 8位微處理器,俗稱單片機。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復擦除100次。該器件采用ATM
22、EL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C52是它的一種強化版本。AT89C52單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。</p><p> 圖3-1 89C52單片機引腳圖</p><p> 89C52單片機與早期Int
23、el的8051/8751/8031芯片的外部引腳和指令系統(tǒng)完全兼容,只不過用Flash ROM 替代了ROM/EPROM而已[3]。89C52單片機內(nèi)部結(jié)構(gòu)如圖所示。</p><p> 圖3-2 89C52單片機內(nèi)部結(jié)構(gòu)示意圖</p><p><b> 各引腳的功能如下:</b></p><p><b> VCC:供電電壓。&l
24、t;/b></p><p><b> GND:接地。</b></p><p> P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必
25、須被拉高[3]。</p><p> P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。 </p><p> P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,
26、輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。</p>
27、<p> P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。</p><p> RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。</p><p> ALE/PROG:當訪問外
28、部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR 8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在
29、外部執(zhí)行狀態(tài)ALE禁止,置位無效。</p><p> PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。</p><p> EA:當/EA保持低電平時,則在此期間CPU只訪問外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為R
30、ESET;當/EA端保持高電平時,則執(zhí)行內(nèi)部程序存儲器中的程序。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。</p><p> XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。</p><p> XTAL2:來自反向振蕩器的輸出。 </p><p> 89C52的主機系統(tǒng)圖如下所示:</p><p&g
31、t;<b> 3.2 時鐘電路</b></p><p> 圖3-3中外接晶體以及兩個電容構(gòu)成并聯(lián)諧振電路,它們起穩(wěn)定振蕩頻率、快速起振的作用,其值為30pF左右,晶振頻率選11.0592MHz</p><p><b> 3.3 復位電路</b></p><p> 為了初始化單片機內(nèi)部的某些特殊功能寄存器,必須利用復
32、位電路,復位后可使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初始狀態(tài)開始正常工作。</p><p> 單片機的復位是靠外電路來實現(xiàn)的,在正常運行情況下,只要RST引腳上出現(xiàn)兩個機器周期時間以上的高電平,即可引起系統(tǒng)復位,但如果RST引腳上持續(xù)為高電平,單片機就處于循環(huán)復位狀態(tài)。復位后系統(tǒng)將輸入/輸出(1/0)端口寄存器置為FFH,堆棧指針SP置為07H, SBUF內(nèi)置為不定值,其余的寄存器全部清0,內(nèi)部RAM的
33、狀態(tài)不受復位的影響,在系統(tǒng)上電時RAM的內(nèi)容是不定的。復位操作有兩種情況,即上電復位和手動(開關)復位。本系統(tǒng)采用上電復位方式。</p><p> 圖3-3 單片機主機系統(tǒng)圖</p><p> 3.4 矩陣式鍵盤電路</p><p> AT89C52單片機的并行口P1接4×4矩陣鍵盤,以P1.0-P1.3作輸入線,以P1.4-P1.7作輸出線;P
34、1口輸出按鍵信息,在LED燈上顯示相應的亮滅數(shù)目。實際電路圖連接如圖3-4所示。</p><p> 圖3-4 矩陣式鍵盤電路</p><p> 由于鍵盤按鈕的不穩(wěn)定性,所以設計時特別添加了防抖動程序,系統(tǒng)可以一延時程序判定按鍵是否因為抖動而按下,從而判定是否為有效輸入信號其流程圖如下所示:</p><p> 圖 3-5 矩陣鍵盤流程圖</p>
35、;<p> 3.5 譯碼顯示電路</p><p> 譯碼電路中常用的顯示器有LED(數(shù)碼管)和LCD(液晶顯示器)。這兩種顯示器都具有線路簡單、耗電少、成本低、壽命長等優(yōu)點。</p><p> 本系統(tǒng)輸出結(jié)果選用16個LED燈(發(fā)光二極管)顯示。正常顯示時公共端接低電平(GND),各發(fā)光二極管是否點亮取決于各引腳上是否是高電平。其電路圖如圖3-6所示。</p>
36、;<p> 圖3-6 譯碼顯示電路</p><p> 當按鍵0閉合時,亮1個二極管;</p><p> 當按鍵1閉合時,亮2個二極管;</p><p> 當按鍵2閉合時,亮3個二極管;</p><p> 當按鍵3閉合時,亮4個二極管;</p><p> 當按鍵4閉合時,亮5個二極管;<
37、/p><p> 當按鍵5閉合時,亮6個二極管;</p><p> 當按鍵6閉合時,亮7個二極管;</p><p> 當按鍵7閉合時,亮8個二極管;</p><p> 當按鍵8閉合時,亮9個二極管;</p><p> 當按鍵9閉合時,亮10個二極管;</p><p> 當按鍵A閉合時,亮1
38、1個二極管;</p><p> 當按鍵B閉合時,亮12個二極管;</p><p> 當按鍵C閉合時,亮13個二極管;</p><p> 當按鍵D閉合時,亮14個二極管;</p><p> 當按鍵E閉合時,亮15個二極管;</p><p> 當按鍵F閉合時,二極管全亮。</p><p>
39、 譯碼顯示電路的流程圖如下圖(圖3-7)所示:</p><p> 圖3-7 譯碼顯示電路流程圖</p><p><b> 4 系統(tǒng)軟件設計</b></p><p> 4.1 proteus軟件環(huán)境介紹</p><p> 本系統(tǒng)的硬件設計首先是在Proteus軟件環(huán)境中仿真實現(xiàn)的。Proteus軟件是來自英國L
40、abcenter electronics公司的EDA工具軟件,Proteus軟件有十多年的歷史,在全球廣泛使用,除了具有和其它EDA工具一樣的原理布圖、PCB自動或人工布線及電路仿真的功能外,其革命性的功能是,它的電路仿真是互動的。針對微處理器的應用,還可以直接在基于原理圖的虛擬原型上編程,并實現(xiàn)軟件源碼級的實時調(diào)試。如果有顯示及輸出,配合系統(tǒng)配置的虛擬儀器如示波器、邏輯分析儀等,還能看到運行后輸入輸出的效果。Proteus建立了完備的
41、電子設計開發(fā)環(huán)境,尤其重要的是Proteus Lite可以完全免費,也可以花微不足道的費用注冊達到更好的效果[2]。</p><p> Proteus是目前最好的模擬單片機外圍器件的工具。可以仿真51系列、AVR、PIC等常用的MCU及其外圍電路(如LCD,RAM,ROM,鍵盤,馬達,LED,AD/DA,部分SPI器件,部分IIC器件...)。其實Proteus 與 multisim比較類似,只不過它可以仿真M
42、CU,當然,軟件仿真精度有限,而且不可能所有的器件都找得到相應的仿真模型,用開發(fā)板和仿真器當然是最好選擇,可是初學者擁有它們的可能性比較小。當然,硬件實踐還是必不可少的。在沒有硬件的情況下,Proteus能像pspice 仿真模擬/數(shù)字電路那樣仿真MCU及外圍電路。另外,即使有硬件,在程序編寫早期用軟件仿真一下也是很有必要的。Proteus軟件主要具有以下幾個方面的特點:</p><p> 1、設計和仿真軟件P
43、roteus 是一個很有用的工具,它可以幫助學生和專業(yè)人士提高他們的模擬和數(shù)字電路的設計能力。</p><p> 2、它允許對電路設計采用圖形環(huán)境,在這種環(huán)境中,可以使用一個特定符號來代替元器件,并完成不會對真實電路造成任何損害的電路仿真操作。</p><p> 3、它可以仿真儀表以及可描述在仿真過程中所獲得的信號的圖表。</p><p> 4、它可以仿真目前
44、流行的單片機,如PICS, ATMEL-AVR, MOTOROLA, 8051 等。</p><p> 5、在設計綜合性方案中,還可以利用ARES開發(fā)印制電路板。</p><p> ·4.2 Protel軟件環(huán)境介紹</p><p> Protel印制板設計軟件包是澳大利亞protel technology公司與1990年推出的電子CAD產(chǎn)品,具有方
45、便、易學、實用、快速以及高速度、高步通率的特點。它采用了分層次下拉窗口菜單結(jié)構(gòu)形式,用戶基本上不需要記背太多的鍵盤命令,用鼠標點擊菜單命令就能操作,protel有著很高的自動布線布通率。布通率是電子產(chǎn)CAD產(chǎn)品的一項重要指標,它反映電子元件在電路圖中連接關系有多少能在印刷版圖中實現(xiàn)。在設計常用的單、雙面印制板時只要選擇適當?shù)脑季趾筒季€策略方法,protel就可以輕易的達到98%-100%的布通率。對于極少數(shù)不能布通的定方,prote
46、l可以用飛線指示出來,引導用戶用手工方法連通。另外,protel有強大的宏命令設置功能,利用宏命令功能多定義的熱鍵可以大大提高操作速度[1]。</p><p> Protel對微機的軟硬件配置要求很低:cpu在8088以上,dos2.0以上版本,內(nèi)存640kb以上,雙軟件(或一個軟件一個硬盤),單色顯示器(多層板設計時最好用彩色),各種兼容打印機。也能在Windows9X平臺的模擬DOS下運行。</p&g
47、t;<p> Protel已成為印制板設計加工方面的工業(yè)標準。據(jù)初步統(tǒng)計protel在CAD的市場占有率達 95%,成為電子產(chǎn)品制造業(yè)界的首選CAD軟件。</p><p> ·4.3 系統(tǒng)軟件分析 </p><p> 任何一個應用系統(tǒng),它們都有著自己的硬件系統(tǒng)和軟件系統(tǒng),少了任何一個部分都不可能稱之為一個完整的應用系統(tǒng),它們之間是相互依存的一個整體,硬件系統(tǒng)是
48、軟件系統(tǒng)的一個基礎和前提,為軟件系統(tǒng)提供了一個操作平臺;而軟件系統(tǒng)是硬件系統(tǒng)的靈魂,它對硬件系統(tǒng)起到擴充和完善的作用??上攵浖到y(tǒng)與硬件系統(tǒng)同等重要,下面為系統(tǒng)軟件設計過程:</p><p><b> ?。?)程序設計過程</b></p><p> 因為使用了矩陣電路,在寫程序是必須對單片機的P/I口進行初始化,以確定各鍵盤按鈕所代表的信號。</p>
49、<p><b> 4.4 程序流程圖</b></p><p><b> N</b></p><p><b> Y</b></p><p><b> N</b></p><p><b> Y</b></p&
50、gt;<p> 圖4-1 主程序流程圖</p><p><b> 主程序流程圖說明:</b></p><p> 因為使用了矩陣電路,只需要用單片機對每個按鈕的值進行初始化。在首次對按鈕進行操作之前,必須對它進行初始化,然后進行按鍵的判斷,如果按下鍵,則轉(zhuǎn)去處理程序,若沒按下鍵,則保持當前的狀態(tài)。將正常顯示的LED燈數(shù)目與按下的鍵做對比,看是否正確。
51、</p><p><b> 5 系統(tǒng)調(diào)試過程</b></p><p> 通過上面的硬件設計和軟件設計過程,設計的工作已經(jīng)基本完成,接下來的工作就是對所設計好的應用系統(tǒng)進行調(diào)試。通過調(diào)試可以檢查出系統(tǒng)出現(xiàn)的一些錯誤,從而進行下一步的修改。</p><p> (1)在Protel 99 SE中,對硬件電路圖進行ERC電氣規(guī)則檢查。 <
52、/p><p> 圖 5-1 protel原理圖</p><p> 圖5-2 ERC電氣規(guī)則檢查結(jié)果</p><p><b> ?。?)程序調(diào)試</b></p><p> 程序經(jīng)過調(diào)試顯示“0錯誤,0警告”。表示程序調(diào)試通過。</p><p> 圖5-3 程序調(diào)試通過示意圖</p&g
53、t;<p> ?。?)protues調(diào)試</p><p> 在進行protues調(diào)試前,應先用Keil uVision4創(chuàng)建一個后綴名為“.hex”的文件,創(chuàng)建的流程圖如下所圖示:</p><p> 圖5-4 hex文件生成流程圖</p><p> 圖5-5 protues仿真圖</p><p><b> 結(jié)
54、 論</b></p><p> 通過此次的單片機課程設計,我不僅加深了對單片機理論的理解,深刻懂得了要不斷地時間才能掌握知識,而且還學會了如何去加強鍛煉創(chuàng)新精神,從而不斷地戰(zhàn)勝自己,超越自己。創(chuàng)新,是要我們將理論很好地聯(lián)系實際,并不斷地去開動自己的腦子,從為先到并做到別人沒想到?jīng)]做到的事,不斷地超越別人,超越自己;同時,更重要的是,在這一設計過程中,我懂得了堅持不懈,不輕易言棄是每個理工科學子應具備
55、的良好素質(zhì)。設計過程,也好比是我們的成長的歷程,常有一些不如意的事情發(fā)生,這就對我們提出了挑戰(zhàn)。只要自己堅持,堅持,再堅持,再苦再累也值得。</p><p> 機遇青睞有準備的人。這個設計過程中,我遇到過許多的考驗,給整個設計帶來的困擾,但最后還是堅持了下來.回頭想想這個設計的過程,我明白了,原來結(jié)果并不是那么得重要,我們更應該注重的是過程。系統(tǒng)以單片機AT89C52為核心部件,單片機系統(tǒng)完成對按鍵信號識別、檢
56、測、處理、顯示等功能,用Proteus軟件繪制電路原理圖,利用C語言編制程序。</p><p> 這個系統(tǒng)設計能讓我們更好地去認識和使用單片機,矩陣式鍵盤,節(jié)約I/O口資源,引腳分配,實時顯示,芯片應用,編程實踐,還有諸如此類的優(yōu)點.</p><p> 本次設計只涉及了一部分的功能,可以將之使用在電話座機中。在進一步的研究中還可以考慮加入聲音的播放等功能,相信會使之更加完善。</
57、p><p><b> 致 謝</b></p><p> 在陳飛老師的指導下,在孫為民、楊冬、劉鎮(zhèn)偉等同學的幫助下,我完成了本次設計。本設計從選題到完成,每一步都是在他們的指導和幫助下完成的,傾注了老師和同學們大量的心血及努力。另外,本設計的完成也離不開其他老師和各位同學給我的建議和幫助,是他們讓我明白了團隊合作的精神。在此,我謹向陳飛老師和幫助過我的老師和同學們,表
58、示崇高的敬意和衷心的感謝!</p><p><b> 參考文獻</b></p><p> 1]《Protel99SE EDA 技術(shù)及應用》徐崢穎編著,北京:機械工業(yè)出版社,2005</p><p> [2]《單片機系統(tǒng)的protues設計與仿真》張靖武編著,北京:電子工業(yè)出版社,2007</p><p> [3]
59、《單片機原理及接口技術(shù)》李朝青編著,北京:北京航空航天大學出版社,2005</p><p> [4]《MCS-51單片機應用開發(fā)實用子程序》邊春遠編著,北京:人民郵電出版社,2005</p><p><b> 附錄1</b></p><p><b> 源程序:</b></p><p> #i
60、nclude<reg51.h></p><p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> #define SCANPORT P1</p><p> uchar uca_LineScan[4]={0xEF,0xDF,0xB
61、F,0x7F};</p><p> uchar ucKeyScan()</p><p><b> {</b></p><p> uchar Temp=0; </p><p> uchar ucRow=0,ucLine=0; </p><p> for(ucLine=0;
62、ucLine<4;ucLine++)</p><p><b> {</b></p><p> SCANPORT=uca_LineScan[ucLine]; </p><p> Temp=SCANPORT & 0x0F; </p><p> if(Temp!=0x0F) &l
63、t;/p><p> { </p><p> switch(Temp)</p><p><b> {</b></p><p> case 0x0E: ucRow=10;break; </p><p> case 0x0D: ucRow=20;break;</p>
64、;<p> case 0x0B: ucRow=30;break;</p><p> case 0x07: ucRow=40;break;</p><p> default: ucRow=50;break;</p><p><b> }</b></p><p><b> break;&
65、lt;/b></p><p><b> }</b></p><p><b> }</b></p><p> SCANPORT=0x0F; </p><p> return ucRow+ucLine+1; </p><p><b>
66、}</b></p><p> void vKeyProcess(unsigned char ucKeyCode)</p><p><b> {</b></p><p> switch(ucKeyCode)</p><p><b> {</b></p><p&g
67、t; case 11:P2=0xff;P3=0x7f;break; //'7'</p><p> case 12:P2=0xff;P3=0x3f;break; //'8'</p><p> case 13:P2=0xff;P3=0x1f;break;</p><p> case 14:P2=0x
68、ff;P3=0x0f;break;</p><p> case 21:P2=0xff;P3=0x07;break; //'4'</p><p> case 22:P2=0xff;P3=0x03;break; //'5'</p><p> case 23:P2=0xff;P3=0x01;break;
69、</p><p> case 24:P2=0xff;P3=0x00;break;</p><p> case 31:P3=0x00;P2=0x7f;break; //'1'</p><p> case 32:P3=0x00;P2=0x3f;break; //'2'</p><p
70、> case 33:P3=0x00;P2=0x1f;break;</p><p> case 34:P3=0x00;P2=0x0f;break;</p><p> case 41:P3=0x00;P2=0x07;break; //'3'</p><p> case 42:P3=0x00;P2=0x03;break;</p
71、><p> case 43:P3=0x00;P2=0x01;break; //'0'</p><p> case 44:P3=0x00;P2=0x00;break; //'+'</p><p> default:break;}</p><p><b> }</b
72、></p><p> void main()</p><p><b> {</b></p><p><b> while(1)</b></p><p><b> {</b></p><p> vKeyProcess(ucKeyScan(
73、));</p><p><b> }</b></p><p><b> }</b></p><p><b> 附錄2</b></p><p> Pretel原理圖:</p><p><b> PCB板:</b></p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設計---4x4矩陣鍵盤與led燈輸出設計
- 課程設計---4x4矩陣鍵盤與LED燈輸出設計.doc
- 《單片機原理》課程設計4x4矩陣鍵盤設計
- 課程設計-制作單片機的4x4矩陣鍵盤
- 單片機4x4鍵盤計算器課程設計
- 課程設計4乘4矩陣鍵盤設計
- 基于單片機的4x4光立方課程設計
- 單片機課程設計--矩陣鍵盤 led顯示
- 單片機課程設計報告(4×4矩陣鍵盤)
- 課程設計-led燈
- led燈課程設計
- 機電單片機課程設計 4乘4矩陣鍵盤 匯編語言
- eda課程設計--矩陣鍵盤接口設計
- 矩陣鍵盤eda技術(shù)課程設計
- 矩陣鍵盤eda技術(shù)課程設計
- 單片機課程設計-led燈點陣課程設計
- 旋轉(zhuǎn)亮燈課程設計---led旋轉(zhuǎn)亮燈的設計與制作
- 課程設計——led閃光燈實驗
- 課程設計報告---led燈及蜂鳴器
- 課程設計-- 4-4 矩陣的轉(zhuǎn)置與乘法計算
評論
0/150
提交評論