基于單片CPU的8LED顯示存儲示波器設(shè)計_第1頁
基于單片CPU的8LED顯示存儲示波器設(shè)計_第2頁
基于單片CPU的8LED顯示存儲示波器設(shè)計_第3頁
基于單片CPU的8LED顯示存儲示波器設(shè)計_第4頁
基于單片CPU的8LED顯示存儲示波器設(shè)計_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)(2013/2014 學(xué)年 第 2 學(xué)期)題目:基于單片 CPU 的 8LED 顯示存儲示波器設(shè)計專業(yè)通信工程學(xué)生姓名倪鑫班級學(xué)號B指導(dǎo)教師林建中日期2014.06.01.精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)目錄目錄第一章第一章 任務(wù)要求任務(wù)要求.2 21.1 實驗?zāi)康?21.2 實驗環(huán)境.21.3 課題要求.4第二章第二章 整體方案設(shè)計整體方案設(shè)計.6 62.1 整體方案.6第三章第三章 功能模塊原理功能模塊原理.7 73.1 AT89C51 單片機.73.2 動態(tài)顯示模塊.93.3 鍵盤模塊.10第四章第四章 程序代碼設(shè)計程序代碼設(shè)計.111

2、1第五章第五章 仿真測試仿真測試.1515第六章第六章 設(shè)計小結(jié)設(shè)計小結(jié).1818精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)第一章第一章 任務(wù)要求任務(wù)要求1.11.1 實驗?zāi)康膶嶒災(zāi)康脑诶碚撜n程的基礎(chǔ)上,重點培養(yǎng)動手能力,通過電路設(shè)計,理論計算,實際編程,調(diào)試,測試, 分析查找故障, 解決在實際設(shè)計中的問題, 使設(shè)計好的電路能正常工作。 通過 proteus軟件的使用,能夠較全面的了解單片機的原理和結(jié)構(gòu)組成,單片機系統(tǒng)的擴展應(yīng)用,較好的掌握單片機的匯編語言程序設(shè)計和硬件結(jié)構(gòu)設(shè)計,通過實驗了解單片機系統(tǒng)研制中的軟件,硬件設(shè)計和系統(tǒng)程序調(diào)試等的全過程,掌握應(yīng)用單片機系統(tǒng)設(shè)計解決實際問題的方式和方法

3、。鞏固單片機的課堂所學(xué)。1.21.2 實驗環(huán)境實驗環(huán)境1.586 微型計算機系統(tǒng)2.Proteus7.4sp3 軟件3.Keil C51 軟件1 1.3 .3 實驗實驗步驟步驟1.點擊“Project-New Project ”菜單,出現(xiàn)一個對話框,要求給將要建立的工程命名, 我們選擇 Atmel 公司的 89C51 芯片如圖 1.1。 點擊 ATMEL 前面的 “+”號,展開該層,點擊其中的 89C51。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)圖圖 1.12.點擊“File-New File ”菜單,建立一個新文件,編寫程序并保存,文件名后綴為“.c” 。此時,在工程窗口的文件頁中,出現(xiàn)了

4、“Target1” ,點擊“+”號展開,可以看到下一層的“ Source Group1” ,這時的工程還是一個空的工程,里面什么文件也沒有,需要手動把剛才編寫好的源程序加入,點擊“Source Group1”使其反白顯示,然后,點擊鼠標(biāo)右鍵,出現(xiàn)一個下拉菜單,選中其中的“Add filetoGroup Source Group1” 如圖 1.2 所示,出現(xiàn)一個對話框,要求尋找源文件,注意,該對話框下面的“文件類型”默認為 C source file(*.c),也就是以 C 為擴展名的文件。點擊“Flash-Configure Flash Tools” 菜單,設(shè)置對話框中的OutPut 頁面,如

5、圖 1.3 所示,這里面也有多個選擇項,其中 Creat Hex file 用于生成可執(zhí)行代碼文件(可以用編程器寫入單片機芯片的 hex 格式文件,文件的擴展名為.hex) ,默認情況下該項未被選中,根據(jù)實驗要求,選中該項,并保存。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)圖圖 1.2圖圖 1.33.在設(shè)置好工程后,即可進行編譯、連接如圖 1.4。選擇菜單 “Project-Buildtarget” ,對當(dāng)前工程進行連接,如果當(dāng)前文件已修改,軟件會先對該文件進行編譯,然后再連接以產(chǎn)生目標(biāo)代碼;如果選擇 Rebuild All target files 將會對當(dāng)前工程中的所有文件重新進行編譯然后

6、再連接,確保最終生產(chǎn)的目標(biāo)代碼是最新的,而 Translate .項則僅對該文件進行編譯,不進行連接。若編譯連接通過則顯示如圖 1.5。圖圖 1.4圖圖 課題要求課題要求基本要求:1用數(shù)碼管或LCD正常顯示數(shù)字“”。2通過按鍵可改變顯示方式。3設(shè)計顯示屏的動態(tài)效果,用10個按鍵,每鍵對應(yīng)一種滾動技術(shù)。發(fā)揮部分:1設(shè)計所有動作的聯(lián)合效果。2設(shè)計二個變速按鍵,可多級改變滾動速度。3設(shè)計一臺魔術(shù)電子種,采用自動變換,隨機組合,數(shù)據(jù)每10秒變換一次。動態(tài)顯示格式:1靜止2整體閃爍3單字閃爍精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)4整體向前、向后滾動5單字移動6兩邊向中間壓縮7中間

7、向兩邊擴張8上下壓縮9上下滾動10組合動作(每一字符執(zhí)行上述一個動作,并同時運動)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)第二章第二章 整體方案設(shè)計整體方案設(shè)計2.12.1 整體方案整體方案根據(jù)課題要求,使用 7SEG-MPX8-CA,通過按鍵切換,來達到不同的動態(tài)顯示效果。課題中的要求是用十種動態(tài)效果,對應(yīng)的分別為“1” :禁止顯示, “2” :整體閃爍顯示,“3:單字閃爍顯示, “4” :整體向前、向后滾動顯示, “5” :單字移動顯示, “6” :兩邊向中間壓縮顯示, “7” :中間向兩邊擴張顯示, “8” :上下壓縮顯示, “9” :文字上下滾動顯示,“10” : 組合動作顯示。圖圖

8、 2.1精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)第三章第三章 功能模塊原理功能模塊原理3.13.1 AT89C51AT89C51 單片機(圖單片機(圖 3.13.1)P0 口:P0 口為一個 8 位漏級開路雙向 I/O 口,每腳可吸收 8TTL 門電流。當(dāng) P0 口的管腳第一次寫 1 時,被定義為高阻輸入。P0 能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在 FIASH 編程時,P0 口作為原碼輸入口,當(dāng) FIASH 進行校驗時,P0 輸出原碼,此時 P0 外部必須被拉高。P1 口: P1口是一個內(nèi)部提供上拉電阻的 8 位雙向 I/O口, P1 口緩沖器能接收輸出 4TTL

9、門電流。P1 口管腳寫入 1 后,被內(nèi)部上拉為高,可用作輸入,P1 口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在 FLASH 編程和校驗時,P1 口作為第八位地址接收。P2 口: P2 口為一個內(nèi)部上拉電阻的 8 位雙向 I/O 口,P2 口緩沖器可接收,輸出 4個 TTL 門電流,當(dāng) P2 口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2 口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2 口當(dāng)用于外部程序存儲器或 16 位地址外部數(shù)據(jù)存儲器進行存取時,P2 口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)

10、據(jù)存儲器進行讀寫時,P2 口輸出其特殊功能寄存器的內(nèi)容。P2 口在 FLASH 編程和校驗時接收高八位地址信號和控制信號。P3 口:P3 口管腳是 8 個帶內(nèi)部上拉電阻的雙向 I/O 口,可接收輸出 4 個 TTL 門電流。當(dāng) P3 口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平, P3 口將輸出電流 (ILL) 這是由于上拉的緣故。 P3 口也可作為 AT89C51的一些特殊功能口,如下表所示。P3 口同時為閃爍編程和編程校驗接收一些控制信號。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)VCC:供電電壓。GND:接地。RST:復(fù)位輸入。ALE/PROG: 當(dāng)

11、訪問外部存儲器時, 地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在 FLASH 編程期間,此引腳用于輸入編程脈沖。在平時,ALE 端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的 1/6。/PSEN:外部程序存儲器的選通信號。/EA/VPP:當(dāng)/EA 保持低電平時,此間外部程序存儲器,不管是否有內(nèi)部程序存儲器。當(dāng)/EA 端保持高電平時,此間內(nèi)部程序存儲器。在 FLASH 編程期間,此引腳也用于施加 12V 編程電源(VPP) 。XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。圖圖 3.1精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)3.23.2

12、動態(tài)顯示模塊動態(tài)顯示模塊圖圖 3.2引腳功能1數(shù)碼管 1 片選信號2數(shù)碼管 2 片選信號3數(shù)碼管 3 片選信號4數(shù)碼管 4 片選信號5數(shù)碼管 5 片選信號6數(shù)碼管 6 片選信號7數(shù)碼管 7 片選信號8數(shù)碼管 8 片選信號A數(shù)碼管段選信號 AB數(shù)碼管段選信號 BC數(shù)碼管段選信號 CD數(shù)碼管段選信號 DE數(shù)碼管段選信號 EF數(shù)碼管段選信號 FG數(shù)碼管段選信號 GDP數(shù)碼管段選信號小數(shù)點表表 1 7SEG-MPX8-CA 管腳功能管腳功能精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)3.33.3 鍵盤模塊鍵盤模塊4 位二進制輸入方式,從左向右四個按鍵,位權(quán)分別為 0124,接入 89C51 I/O 口

13、P1。當(dāng)輸入二進制數(shù)為 N 時,顯示 N 狀態(tài)。圖圖 3.3精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)第四章第四章 程序代碼設(shè)計程序代碼設(shè)計#include #include #include #define uchar unsigned char#define ulong unsigned long#define uint unsigned int/ Delay period#define Timer 50char* number;uchar chooseNumber = 0 xc0, 0 xf9, 0 xa4, 0 xb0, 0 x99, 0 x92, 0 x82, 0 xf8, 0 x8

14、0, 0 x90;uchar flickOne = 0 x02, 0 x61, 0 x43, 0 x03, 0 x43, 0 x63, 0 x02, 0 x63;uchar flickTwo = 0 x04, 0 x4c, 0 x4c, 0 x1c, 0 x58, 0 x58, 0 x44, 0 x5c;uchar flickThree = 0 x00, 0 x40, 0 x40, 0 x40, 0 x40, 0 x40, 0 x40, 0 x40;uchar chooseDigits = 0 x00, 0 x01, 0 x02, 0 x04, 0 x08, 0 x10, 0 x20, 0 x

15、40, 0 x80;void delay(int i) i *= Timer;while(i-);uchar getInput() if(P1 != 0 xff) delay(2);if(P1 != 0 xff) return P1;return 0;/* Constant number display function.*/void showDigits(char* number) uchar i;for(i = 1; i = 8; i+) P3 = chooseDigitsi;精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)if(numberi - 1 = 0) P2 = chooseNumbe

16、rnumberi - 1 - 0;else if(numberi - 1 = ) P2 = 0 xff;delay(2);/* Flicking number display function.*/void showFlick(char* number) uchar i;for(i = 1; i = 8; i+) P3 = chooseDigitsi;P2 = numberi - 1;delay(2);void main() int count = 0;uchar key = 0, temp;while(1) temp = getInput();if(temp != 0) key = temp

17、;switch(key) case 1:showDigits();break;case 2:(count / Timer) % 2 = 0 ? showDigits() : showDigits();break;case 3:switch(count / Timer % 8) case 0: showDigits( ); break;case 1: showDigits(1 ); break;case 2: showDigits(12 45678); break;case 3: showDigits(123 5678); break;case 4: showDigits(1234 678);

18、break;case 5: showDigits(12345 78); break;case 6: showDigits( 8); break;case 7: showDigits( ); break;精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)break;case 4:switch(count / Timer % 8) case 0: showDigits(); break;case 1: showDigits(); break;case 2: showDigits(); break;case 3: showDigits(); break;case 4: showDigits(); break

19、;case 5: showDigits(); break;case 6: showDigits(); break;case 7: showDigits(); break;break;case 5:switch(count / Timer % 8) case 0: showDigits(2); break;case 1: showDigits( 2); break;case 2: showDigits(2); break;case 3: showDigits(2); break;case 4: showDigits(2); break;case 5: showDigits(2); break;c

20、ase 6: showDigits(2 ); break;case 7: showDigits(2); break;break;case 6:switch(count / Timer % 5) case 0: showDigits(); break;case 1: showDigits(); break;case 2: showDigits(1278); break;case 3: showDigits(18); break;case 4: showDigits(); break;break;case 7:switch(count / Timer % 5) case 0: showDigits

21、(); break;case 1: showDigits(234567); break;case 2: showDigits(3456); break;case 3: showDigits(45); break;case 4: showDigits(); break;break;精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)case 8:switch(count / Timer % 5) case 0: showDigits(); break;case 1: showDigits(); break;case 2: showFlick(flickThree); break;case 3: showD

22、igits(); break;break;case 9:switch(count / Timer % 6) case 0: showDigits(); break;case 1: showDigits(); break;case 2: showFlick(flickOne); break;case 3: showDigits(); break;case 4: showFlick(flickTwo); break;case 5: showDigits(); break;break;case 10:switch(count / Timer % 8) case 0: showDigits(); break;case 1: showDigits(); break;case 2: showDigits(1 43 58 ); break;case 3: showDigits(); break;case 4: show

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論