畢業(yè)設(shè)計——基于單片機人體反應(yīng)速度測試儀-
《畢業(yè)設(shè)計——基于單片機人體反應(yīng)速度測試儀-》由會員分享,可在線閱讀,更多相關(guān)《畢業(yè)設(shè)計——基于單片機人體反應(yīng)速度測試儀-(22頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、沈陽工學院 畢業(yè)設(shè)計報告 題 目:基于單片機人體反應(yīng)速度測試儀 院 系: 信息與控制學院 (黑三) 專 業(yè): 通信工程 (黑三) 班級學號: 093041 07 (黑三) 學生姓名: 張 三 (黑三) 指導教師: (黑三) 成 績: 2014 年 06 月 25 日 摘 要 本文是基于單片機人體反應(yīng)速度測試描述,通過單片機測試人的反應(yīng)速度。在本 設(shè)計中以 AT89S52 單片機為核心的人體反應(yīng)速度測試儀,主要通過控制測試燈的狀態(tài), 在測試按鍵的狀態(tài)來間接計算人體反應(yīng)速度。正常情況下系統(tǒng)運行主程序一直處于空 閑等待狀態(tài),知道測試者按下按鍵后,LED 測試燈立即點亮。AT89S52 單片機在 LE
2、D 測試燈亮的同時開始計算一個隨機時間,在一段隨機時間結(jié)束后,AT89S52 單片機 把 LED 測試燈熄滅,并開始計時燈滅與測試者放開按鍵的時間差,此計時時間用于紀 錄被測試者的反應(yīng)時間,并以毫秒為時間單位在 4 位數(shù)碼管上顯示。如果在 LED 測試 燈滅之前提前放開測試按鍵,則顯示 9999 作為出錯信息。 設(shè)計中采用 AT89S52 單片機,其以高性能低價格的優(yōu)勢成為全球使用范圍最廣泛 的單片機之一;顯示部分采用 LED 數(shù)碼管的顯示方式,本套系統(tǒng)在不影響其測試性能 的情況下,大大的節(jié)省了設(shè)計成本,是性價比較高的一款人體反應(yīng)測試議。和其他測 試儀相比具有明顯的價格競爭優(yōu)勢;同時,本設(shè)計作
3、品的使用方法簡單,只需按下按 鍵即可完成測試,方便測試人員的測試使用。 關(guān)鍵詞:單片機;反應(yīng)速度;AT89S52 ;LED; 數(shù)碼管 Abstract This article is based on single chip microcomputer human reaction speed tests described, through the single chip microcomputer test response speed. AT89S52 MCU as the core in the design of the human body reaction velocity te
4、ster, mainly by controlling the state of the test lamp, in the state of the test button to indirect calculation of human body reaction speed. System normal operation of the main program has been idle waiting state, know the tester after press the button, the LED test lamp light up immediately. AT89S
5、52 single chip microcomputer in LED to test the lights at the same time began to calculate a random time, at the end of a random time, AT89S52 single chip microcomputer test the LED lights, and start timing lights and testers release button lag, this timer is used to record the subjects reaction tim
6、e, and in milliseconds as the unit of time in the four digital tube display. If the LED test before the lights went out early release test button, 9999 as the error message is displayed. Design USES AT89S52 single chip microcomputer, its to high performance low price advantage to become one of the w
7、orld scope the most widely used microcontroller; Display part adopts LED digital tube display, this set of system in the case of does not affect the test performance, greatly save the design cost, is the high cost performance of a human reaction test. Compared with other tester has obvious price com
8、petitive advantage; At the same time, the use of this design method is simple, just press the button to complete the test, the convenience for the testers test. Keywords: Single chip microcomputer; Reaction Speed; AT89S52; LED; Digital tube 目 錄 1 硬件部分設(shè)計 .1 1.1 硬件結(jié)構(gòu)設(shè)計 .2 1.2 硬件電路設(shè)計 .3 1.2.1 硬件模塊選擇 .3
9、 1.2.2 硬件模塊設(shè)計 .3 1.2.3 控制計算公式 .5 2 軟件部分設(shè)計 .6 2.1 開發(fā)環(huán)境 .7 2.2 主體程序設(shè)計 .7 2.2.1 主程序設(shè)計 .7 2.2.2 中斷程序設(shè)計 .7 3 系統(tǒng)測試 .8 3.1 軟件測試 .8 3.2 硬件測試 .8 結(jié) 論 .9 參考文獻 .10 附錄 A .12 附錄 B .13 附錄 C .14 沈 陽 工 學 院 學 士 報 告 0 1 硬件部分設(shè)計 本項目以 AT89S52 單片機為核心,實現(xiàn)對人體反應(yīng)速度的測試,主要控制測試燈 的狀態(tài),通過測試按鍵的狀態(tài)來間接計算人體反應(yīng)速度。正常情況下系統(tǒng)一直處于空 閑等待狀態(tài),直到測試者按下
10、按鍵后,LED 測試燈立即點亮。AT89S52 單片機在 LED 測試燈亮的同時開始計算一個隨機時間,在一段隨機時間結(jié)束后,AT89S52 單片機把 LED 測試燈熄滅,并開始計時燈滅與測試者放開按鍵的時間差,此計時時間用于紀錄 被測試者的反應(yīng)時間,并以毫秒為時間單位在 4 位數(shù)碼管上顯示。如果在 LED 測試燈 滅之前提前放開測試按鍵,則顯示 9999 作為出錯信息。整體系統(tǒng)框圖如圖 1.1 所示。 圖 1.1 單片機引腳圖 1.1 硬件結(jié)構(gòu)設(shè)計 1.1.1 AT89S52 單片機的介紹 單片機是一種集成在電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能 力的中央處理器 CPU 隨機存儲
11、器 RAM、只讀存儲器 ROM、多種 I/O 口和中斷系統(tǒng)、 定時器、計時器等功能集成到一塊硅片上構(gòu)成的一個小而完善的計算機系統(tǒng)。 AT89S52 是一種低功耗、高性能 CMOS8 位微控制器,具有 8K 在系統(tǒng)可編程 Flash 存儲器。使用 Atmel 公司高密度非易失性存儲器技術(shù)制造,與工業(yè) 80C51 產(chǎn)品 指令和引腳完全兼容。片上 Flash 允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。 在單芯片上,擁有靈巧的 8 位 CPU 和在系統(tǒng)可編程 Flash,使得 AT89S52 為眾多嵌入 式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52 具有以下標準功能:8k 字 AT8
12、9C52 單片機系統(tǒng) LED 數(shù)碼管顯示器 按鍵 LED 按鍵指示燈 沈 陽 工 學 院 學 士 報 告 1 節(jié) Flash,256 字節(jié) RAM,32 位 I/O 口線,看門狗定時器,2 個數(shù)據(jù)指針,三個 16 位 定時器/計數(shù)器,一個 6 向量 2 級中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時鐘電路。另 外,AT89S52 可降至 0Hz 靜態(tài)邏輯操作,支持 2 種軟件可選擇節(jié)電模式??臻e模式下, CPU 停止工作,允許 RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下, RAM 內(nèi)容被保存,振蕩器被凍結(jié),單片機一切工作停止,直到下一個中斷或硬件復位 為止。8 位微控制器 8K 字節(jié)在
13、系統(tǒng)可編程 Flash AT89S52。 與 MCS-51 單片機產(chǎn)品兼容、8K 字節(jié)在系統(tǒng)可編程 Flash 存儲器、1000 次擦寫周 期、全靜態(tài)操作:0Hz 33Hz 、 三級加密程序存儲器 、32 個可編程 I/O 口線 、三個 16 位定時器/計數(shù)器八個中斷源、全雙工 UART 串行通道、低功耗空閑和掉電模式、掉 電后中斷可喚醒、看門狗定時器、雙數(shù)據(jù)指針、掉電標識符。單片機引腳圖如圖 1.2 所示。 圖 1.2 AT89S52 單片機引腳圖 1.1.2 LED 發(fā)光二極管的特性 (1) 發(fā)光響應(yīng)快,亮度強,高頻特性好;而且隨著材料的不同,數(shù)碼管還能發(fā)出紅、 黃、綠、藍、橙等多種顏色的
14、光。 沈 陽 工 學 院 學 士 報 告 2 (2) 機械性能好,體積小,重量輕,價格低廉;能與 COMS 和 TTL 電路配合使用; 使用壽命長。 (3) 工作電壓低,驅(qū)動電流適中。每段電流為 510mA,一只數(shù)碼管的 7 段 LED 全亮需要電流 3570mA。這樣打的電流需要由驅(qū)動電路提供,因此,使用時要注意數(shù) 碼管的驅(qū)動問題。 在使用中,為了給發(fā)光二極管加驅(qū)動電壓,他們應(yīng)有一個公共的引腳,公共的引 腳有如下兩種鏈接方法:一、共陰極接法。把發(fā)光二極管的陰極連接在一起構(gòu)成陰極 公共引腳,使用時公共引腳接地,這樣陽極引腳上加高電平的發(fā)光二極管就導通點亮, 而加低電平的則不亮。二、共陽極接法。
15、把發(fā)光二極管的陽極連接在一起作為陽極公 共引腳,使用時陽極公共引腳接+5V。這樣陰極引腳上加低電平的發(fā)光二極管即可導通 點亮,二加高電平的則點不亮。 1.1.3 LED 數(shù)碼管顯示器顯示原理 并排使用的多位數(shù)碼管成為 LED 顯示器。LED 顯示器多采用動態(tài)顯示方式,全部 數(shù)碼管共用一套段碼驅(qū)動電路,各位數(shù)碼管的同段引腳短接后再接到對應(yīng)段碼的驅(qū)動 線上。顯示時通過位控制信號采用掃描的方法逐位地循環(huán)點亮各位數(shù)碼管。動態(tài)顯示 雖然在任一時刻只有一位數(shù)碼管被點亮,但是由于人眼具有的視覺殘留效應(yīng),看起來 與全部數(shù)碼管持續(xù)點亮的效果完全一樣。 LED 顯示器的動態(tài)顯示需要為各位提供段碼以及相應(yīng)的位控制,
16、此即通常所說的 段控和位控。把 LED 顯示器段碼表預(yù)先存放在存儲器中,使用時通過查表就可以得到 段碼。段碼輸出后送到公共端碼線上,也可稱為段控信號。而通過并行口輸出的相互 獨立的位碼則是起選通作用的,也稱位控活掃描信號,用于選擇顯示位。 動態(tài)顯示具有硬件簡單,功耗低和顯示靈活性強等優(yōu)點,但動態(tài)顯示增加了驅(qū)動 軟件的復雜性,且顯示亮度較低。 1.2 硬件電路設(shè)計 LED 數(shù)碼管的顯示電路中采用動態(tài)數(shù)碼管顯示,在其中 P0 端口控制段碼,低電平 有效,P2.0P2.3 端口控制位碼,高電平有效。P2.3 端口控制第 1 個數(shù)碼管,P2.2 端口 沈 陽 工 學 院 學 士 報 告 3 控制第 2
17、 個數(shù)碼管,P2.1 端口控制第 3 個數(shù)碼管,P2.0 端口控制第 4 個數(shù)碼管。 各個數(shù)碼管的段碼都是 P0 端口的輸出,即各個數(shù)碼管輸入的段碼都是一樣的,為 了使其分別顯示不同的數(shù)字,可采用動態(tài)掃描的方式,即先只讓最低位顯示 0,經(jīng)過一 段延時,再只讓次低位顯示 1,以此類推。由于視覺暫留,只要延時時間足夠短,就能 夠使得數(shù)碼的顯示看起來非常穩(wěn)定清楚。 1.2.1 硬件模塊選擇 硬件總體連接,用一只發(fā)光二極管模擬測試燈,以 AT89S52 單片機的 P1.0 端口控 制這只發(fā)光二極管、發(fā)光二極管加限流電阻+5V 電源, P1.0 端口輸出低電平時,測試 燈亮,輸出高電平時,測試燈滅。P1
18、.1 端口接測試按鍵,P0 端口控制 LED 數(shù)碼管的 七段數(shù)碼顯示,P2.0P2.3 控制 4 位數(shù)碼管的選位。 本項目中的店鋪單片機采用目前使用最廣泛、成本最低廉的 AT89S52,其性能在 本設(shè)計中完全足夠。 為了焊接上的方便,本設(shè)計中的 LED 數(shù)碼管顯示器采用四位共陽數(shù)碼管。數(shù)碼管 的共陽極就是把所有 LED 的陽極連接到共同接點 com,而每個 LED 的陰極分別為 a、b、c、d、e 、f、g 及 dp(小數(shù)點) ;共陰極則是把所有 LED 的陰極連接到共同接點 com,而每個 LED 的陽極分別為 a、b、c、d、e、 f、g 及 dp(小數(shù)點) ,如下圖所示。 圖中的 8 個
19、 LED 分別與上面那個圖中的 ADP 各段相對應(yīng),通過控制各個 LED 的亮 滅來顯示數(shù)字。數(shù)碼管的內(nèi)部示意圖如圖 1.3 所示。 圖 1.3 數(shù)碼管的內(nèi)部示意圖 1.2.2 硬件模塊設(shè)計 1. 單片機系統(tǒng)電路設(shè)計 沈 陽 工 學 院 學 士 報 告 4 單片機系統(tǒng)的設(shè)計主要包括單片機的電源設(shè)計、單片機時鐘電路設(shè)計、單片機復 位電路設(shè)計等。時鐘電路中采用 11.0592MHz 的晶振作為系統(tǒng)時鐘,單片機復位電路 采用上電自動復位和按鍵手動復位兩種方式,在 51 單片機中單片機的復位都是采用高 電平復位方式。單片機最小系統(tǒng)圖如圖 1.4 所示。 圖 1.4 單片機最小系統(tǒng)圖 2. 按鍵和指示燈
20、設(shè)計 本設(shè)計的方案是通過人體去按下按鍵,由人體按下與松開按鍵的時間開判斷人體 反應(yīng)速度的,所以設(shè)計中必須設(shè)計按鍵電路,為了操作者操作更明了,設(shè)計中增加了 一個 LED 發(fā)光二極管作為按鍵指示。設(shè)計電路如圖 1.5 所示。 沈 陽 工 學 院 學 士 報 告 5 圖 1.5 LED 指示燈及按鍵電路圖 3. 數(shù)碼管驅(qū)動設(shè)計 本設(shè)計中由于采用的是三寸共陽 LED 數(shù)碼管顯示器,所需的驅(qū)動電流不大,在本 項目中采用低成本的 8550PNP 型三極管作為數(shù)碼管的驅(qū)動,為了限制電流,防止電流 過大對數(shù)碼管燒壞,設(shè)計中在數(shù)碼管的段選端分別串上一個 100 歐姆的電阻,數(shù)碼管 的驅(qū)動如圖 1.6 所示。 圖
21、 1.6 數(shù)碼管驅(qū)動電路圖 1.2.3 控制計算公式 在本系統(tǒng)中的計算主要是針對人體反應(yīng)速度的計算。在測試者按下按鍵后,LED 測試燈立即點亮,在燈亮一個隨機時間后就通過單片機控制燈滅,這時單片機定時器 就開始計時,定時器初始值為 Time1;在測試者看到 LED 燈滅時就釋放按鍵,此時定 時器的值為 Time2,通過計算燈滅與測試者放開按鍵的時間差,得出測試者的反應(yīng)速 度。具體計算公式如式(1.1) V 測試 =Time2-Time1 (1.1) 式中 V 測試 為反應(yīng)速度。 沈 陽 工 學 院 學 士 報 告 6 2 軟件部分設(shè)計 本系統(tǒng)使用 AT89C51 作為控制的單片機芯片,軟件設(shè)計
22、主要分為系統(tǒng)初始化、振 鈴檢測計數(shù)、控制摘掛機、雙音頻信號分析處理、控制電器、密碼處理(包括密碼檢 測和密碼修改) 、信號音提示等部分,每個功能模塊對于整體設(shè)計都是非常重要的,單 片機 AT89C51 通過軟件程序才能很好的對外部的信息進行采集、分析和決策。系統(tǒng)的 主程序流程圖如圖 2.1 所示。 圖 2.1 主程序流程圖 否 是 否 是 是 否 開始 初始化 按鍵是否按下 While(1) 系統(tǒng)產(chǎn)生一個隨機時間作為 LED 燈亮的時間 隨機時間是否到 LED 燈滅 定時器開始計時 按鍵是否松開 數(shù)碼管顯示 結(jié)束 沈 陽 工 學 院 學 士 報 告 7 2.1 開發(fā)環(huán)境 本設(shè)計采用 Keil
23、Software 公司出品的集成開發(fā)環(huán)境進行編程,其版本為 Keil Vision4。Keil Vision4 是 2009 年 2 月發(fā)布的最新版本,是針對 Windows 桌面平 臺所研發(fā)的一套完整的集成開發(fā)環(huán)境,具有可視化、靈活的 Windows 窗口管理。該軟 件不僅給用戶提供了豐富的庫函數(shù),而且提供了功能強大的開發(fā)測試工具;既支持 C 語言編程,也支持匯編語言編程;可以完成編輯、編譯、連接、測試、仿真等整個開 發(fā)流程;此外,在程序被編譯之后,即可生成相應(yīng)的匯編語言代碼,使用戶可以切身 感覺到該款軟件的生成目標的代碼效率是相當高的,并且多數(shù)語句生成的匯編代碼更 為緊湊和容易理解,進而使
24、得編程效率更為高效。 2.2 主體程序設(shè)計 主程序采用查詢方式,當按下 T89S52 單片機為核心的人體反應(yīng)速度測試儀,主要 控制測試燈的狀態(tài),通過測試按鍵的狀態(tài)來間接計算人體反應(yīng)速度。正常情況下系統(tǒng) 運行主程序一直處于空閑等待狀態(tài),知道測試者按下按鍵后,LED 測試燈立即點亮。 AT89S52 單片機在 LED 測試燈亮的同時開始計算一個隨機時間,在一段隨機時間結(jié)束 后,AT89S52 單片機把 LED 測試燈熄滅,并開始計時燈滅與測試者放開按鍵的時間差, 此計時時間用于紀錄被測試者的反應(yīng)時間,并以毫秒為時間單位在 4 位數(shù)碼管上顯示。 如果在 LED 測試燈滅之前提前放開測試按鍵,則顯示
25、9999 作為出錯信息。 2.2.1 設(shè)計流程 當整個系統(tǒng)上電時,進行一系列的初始化,初始化完畢后則通過查詢的方式等待 按鍵按下,當按鍵按下后 LED 測試燈立即點亮,同時單片機通過一個函數(shù)開始計算一 個隨機時間,在一段隨機時間結(jié)束后,AT89S52 單片機把 LED 測試燈熄滅,并開始計 時燈滅與測試者放開按鍵的時間差,此計時時間用于紀錄被測試者的反應(yīng)時間,并以 毫秒為時間單位在 4 位數(shù)碼管上顯示。如果在 LED 測試燈滅之前提前放開測試按鍵, 則顯示 9999 作為出錯信息。 沈 陽 工 學 院 學 士 報 告 8 2.2.2 初始化編程 單片機上電后將首先進行的就是初始化,其中硬件初始
26、化包括 LED 指示燈 IO 口 的初始化、按鍵接口的初始化、LED 數(shù)碼管控制引腳的初始化;軟件初始化包括中斷 的初始化、定時器的初始化等等。 2.2.2 中斷程序設(shè)計 定時器的定時時間是 20ms,用作掃描數(shù)碼管顯示,在定時器開啟時,定時器開始 定時,此時主程序正常運行,當定時器的定時時間到時,主程序不在執(zhí)行,開始進入 中斷程序,在中斷程序中,若計時了 1s 就對時間進行處理且計數(shù)標志清零,賦值給相 應(yīng)的變量且 second 減 1,若沒有則計數(shù)標志 count 就進行加 1,若倒計時的時間為零則 重新賦值,中斷程序執(zhí)行完后返回主程序。中斷程序流程圖如圖 2.2 所示。 圖 2.2 中斷程
27、序流程圖 是 否 否 是 開始 定時器初始化 開啟定時器 按鍵是否按下 按鍵是否松開 停止計時,關(guān)閉定時器 返回 沈 陽 工 學 院 學 士 報 告 9 3 系統(tǒng)測試 按照設(shè)計程序的分析,LED 數(shù)碼管的動態(tài)掃描的頻率是 1000HZ,在實際使用時 完全沒有閃爍。在程序中,定時器 20ms 中斷一次,變量 sec100 自增,中斷 100 次時, 秒的顯示自增,用定時器來定時,準確。另外,用按鍵來開啟定時器,按鍵具有暫停 的功能。當數(shù)碼管上出現(xiàn)提示信息時,反應(yīng)者按下按鍵,就可以測量出反應(yīng)時間,并 在數(shù)碼管上顯示出來。按照正常的設(shè)計理念,整個系統(tǒng)是能夠正常工作的。 3.1 軟件測試 軟件調(diào)試是利
28、用仿真工具進行在線仿真調(diào)試,除發(fā)現(xiàn)和解決程序錯誤外,也可發(fā) 現(xiàn)硬件故障。由于我的 P0.0P0.7 接 A0A7 在電路中接反了,故將數(shù)碼管的碼表進行 修改,然后才成功的。 3.2 硬件測試 硬件的調(diào)試主要是把電路各種參數(shù)調(diào)整到符合設(shè)計要求。具體步驟如下: (1)先排除硬件電路故障,包括設(shè)計性錯誤和工藝性故障,一般原則是先靜態(tài)后動 態(tài)。 (2)利用萬用表或邏輯測試儀器,檢查電路中的各器件以及引腳是否連接正確,是 否有短路故障。發(fā)現(xiàn)有些焊點連到了一起,造成了短路,然后進行了修改。 (3)先將單片機 AT89S52 芯片取下,對電路板進行通電檢查,通過觀察看是沒有異 常,然后用萬用表測試各電源電壓
29、,這些都沒有問題,接上仿真機進行聯(lián)機調(diào)試觀察 到各接口線路均正常。該系統(tǒng)由 5V 電源來驅(qū)動,上電后,整機工作電流為 65mA,電 流穩(wěn)定無大的波動。經(jīng)過測試與分析,此系統(tǒng)穩(wěn)定可用。 沈 陽 工 學 院 學 士 報 告 10 結(jié) 論 本文研究與設(shè)計的人體反應(yīng)測試儀采用了通用的電子元器件,利用 AT89S52 單片 機及相關(guān)的外圍器件實現(xiàn)人體反應(yīng)測試儀,利用單片機的定時器以及外部中斷的原理, 將軟、硬件有機地結(jié)合起來,使得系統(tǒng)能夠正確地進行計時,同時使數(shù)碼管能夠正確 地顯示測試結(jié)果??刂瞥绦虻膯纹瑱C部分利用 C 語言編寫。設(shè)計時,首先通過在線編 程,然后具體焊接硬件作品、仿真,完全實現(xiàn)了設(shè)計功能
30、。本設(shè)計中,利用常規(guī)的數(shù) 碼管掃描方法,通過硬件電路的具體應(yīng)用和系統(tǒng)的仿真研究得出,本設(shè)計不僅安裝簡 單、成本低,更重要的是工作性能穩(wěn)定,是一個實用、創(chuàng)新型的工程設(shè)計。 通過這次的畢業(yè)設(shè)計,我能運用已學的知識解決我在設(shè)計中遇到的問題,使自己的 動手能力和思考問題的能力得到了很大的提高。在做設(shè)計的過程中我查閱了很多的資 料,并認真的閱讀這些與我的設(shè)計相關(guān)的資料,從而我的專業(yè)涵養(yǎng)得到了提高,知識 的儲備量也有所增加。在做設(shè)計時,我復習了很多專業(yè)課的知識,這使得我的專業(yè)知 識在離校之前得到了鞏固。我認為這是我在整個設(shè)計工程中得到的最好的回報。整個 設(shè)計通過了軟件和硬件上的調(diào)試、仿真。我想這對于自己以
31、后的學習和工作都會有很 大的幫助的。在這次設(shè)計中遇到了很多實際性的問題,在實際設(shè)計中才發(fā)現(xiàn),書本上 理論性的東西與在實際運用中的還是有一定的出入的,所以有些問題不但要深入地理 解,而且要不斷地更正以前的錯誤思維。對于單片機設(shè)計, 其硬件電路是比較簡單的,主要是解決程序設(shè)計中的問題。而程序設(shè)計是一個很 靈活的東西,它反映了你解決問題的邏輯思維和創(chuàng)新能力。它才是一個設(shè)計的靈魂所 在。因此在整個設(shè)計過程中大部分時間是用在程序上面的??梢哉f單片機的設(shè)計是軟 件和硬件的結(jié)合,二者是密不可分的。 但是,通過這次設(shè)計我也發(fā)現(xiàn)自己的很多不 足之處。在設(shè)計過程中我發(fā)現(xiàn)自己考慮問題很不全面,自己的專業(yè)知識掌握的很
32、不牢 固,所掌握的計算機應(yīng)用軟件還不夠多,我希望自己的這些不足之處能在今后的工作 和學習中得到改善。而且,通過這次設(shè)計,我懂得了學習的重要性,學會了堅持和努 力,這將為以后的學習做出了最好的榜樣!同時,該設(shè)計也有不足之處,缺少了答題 計分等功能。我將會在以后的學習中繼續(xù)學習。 沈 陽 工 學 院 學 士 報 告 11 參考文獻 1 楊居義,楊堯,楊曉琴.單片機課程設(shè)計指導M.北京:清華大學出版社,2009 2 李廣弟,單片機基礎(chǔ)(第3版)M. 北京:北京航空航天大學出版社,2007 3 李朝青, 單片機原理及接口技術(shù)M.北京:北京航天航空大學出版色,2001 4 蘇家健,曹柏榮,汪志鋒.單片機
33、原理及應(yīng)用技術(shù)M.北京:高等教育出版社, 2003 5 潭浩強, C語言程序設(shè)計M.北京:清華大學出版社, 2005 6 李華,李東 .MCS51/98系列單片機原理與應(yīng)用M.北京:機械工業(yè)出版社,1997 沈 陽 工 學 院 學 士 報 告 12 附錄 A 整個系統(tǒng)電路原理圖: 沈 陽 工 學 院 學 士 報 告 13 附錄 B 硬件實物圖: 沈 陽 工 學 院 學 士 報 告 14 附錄 C /描 述:讀取按鍵 byte bot(void) /讀取按鍵,有按鍵被按下則返回 0,否則返回 1 if(key=0)return 0; else return 1; /描 述:將緩存區(qū) displa
34、y中的整數(shù)譯碼后用數(shù)碼管進行顯示 void display(word ms) /數(shù)碼管上的顯示反應(yīng)時間 byte posi=0 x01,i,j,temp; disp3=ms/1000; /1s disp2=(ms%1000)/100; /100ms disp1=(ms%100)/10; /10ms disp0=ms%10; /1ms for(i=0;i4;i+) /數(shù)碼管顯示 temp=dispi; temp=tabletemp; for(j=0;j0;-j) /延時一段隨機時間,為 1 馬上的隨機倍數(shù) delaylms(); k=bot(); if (k=1) /如果在燈滅前談起按鍵,顯示最
35、長時間作為懲罰 mstime=9999; goto loop; led=1; /燈滅 INIT_TMR1(); /初始定時狀態(tài) while(1) /如果按鍵彈起,反復進入定時狀態(tài),沒 1ms 計時器 溢出一次,毫秒數(shù)加 1 if(TF1=1) TH1=0 xfc; TL1=0 x18; TR1=1; TF1=0; +mstime; 沈 陽 工 學 院 學 士 報 告 17 if(k=bot() break; loop: led=1 while(1) if(k=1) /按鍵彈開后始終顯示時間 k=bot(); display(mstime); else /若按鍵按下,重新開始測試 while(1) if(k=1) /按鍵彈開后始終顯示時間 k=bot(); display(mstime); else /若按鍵按下,重新開始測試 mstime=0; P2=0 xff; break;
- 溫馨提示:
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)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年防凍教育安全教育班會全文PPT
- 2025年寒假安全教育班會全文PPT
- 初中2025年冬季防溺水安全教育全文PPT
- 初中臘八節(jié)2024年專題PPT
- 主播直播培訓提升人氣的方法正確的直播方式如何留住游客
- XX地區(qū)機關(guān)工委2024年度年終黨建工作總結(jié)述職匯報
- 心肺復蘇培訓(心臟驟停的臨床表現(xiàn)與診斷)
- 我的大學生活介紹
- XX單位2024年終專題組織生活會理論學習理論學習強黨性凝心聚力建新功
- 2024年XX單位個人述職述廉報告
- 一文解讀2025中央經(jīng)濟工作會議精神(使社會信心有效提振經(jīng)濟明顯回升)
- 2025職業(yè)生涯規(guī)劃報告自我評估職業(yè)探索目標設(shè)定發(fā)展策略
- 2024年度XX縣縣委書記個人述職報告及2025年工作計劃
- 寒假計劃中學生寒假計劃安排表(規(guī)劃好寒假的每個階段)
- 中央經(jīng)濟工作會議九大看點學思想強黨性重實踐建新功