版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、重慶三峽學(xué)院?jiǎn)纹瑱C(jī)課程設(shè)計(jì)報(bào)告書(shū)學(xué) 院: 應(yīng) 用 技 術(shù) 學(xué) 院 年級(jí)專業(yè): 2010級(jí)電子信息工程 學(xué) 號(hào): 學(xué)生姓名: 趙 福 川 指導(dǎo)教師: 謝 輝 教師職稱: 副 教 授 成 績(jī): 制作日期 2012年 11月 29日基于AT89C51單片機(jī)的多音階電子琴的設(shè)計(jì)重慶三峽學(xué)院 應(yīng)用技術(shù)學(xué)院 趙福川摘要單片機(jī)是電子、計(jì)算機(jī)及機(jī)電專業(yè)的一門(mén)重要的必修課程。要求我們掌握單片機(jī)的基本組成和工作原理、會(huì)變程序的一般編寫(xiě)方法、常用接口電路的軟硬件設(shè)計(jì)方法,具備基本的單片機(jī)系統(tǒng)應(yīng)用與開(kāi)發(fā)能力。隨著科技的快速發(fā)展,單片機(jī)的應(yīng)用日益普遍。單片機(jī)具有強(qiáng)大的控制功能和靈活的編程實(shí)現(xiàn)特性,它已經(jīng)溶入現(xiàn)代人們的生
2、活中,成為不可替代的一部分。本單片機(jī)系統(tǒng)設(shè)計(jì)應(yīng)用單片機(jī)控制技術(shù),用AT89C51單片機(jī)為核心控制元件根據(jù)本學(xué)期所學(xué)的單片機(jī)知識(shí)結(jié)合設(shè)計(jì)了一套單片機(jī)控制的電子琴系統(tǒng)。電子琴是現(xiàn)代電子科技與音樂(lè)結(jié)合的產(chǎn)物,是一種新型的鍵盤(pán)樂(lè)器,它在現(xiàn)代音樂(lè)扮演著重要的角色。本次設(shè)計(jì)首先對(duì)單片機(jī)設(shè)計(jì)簡(jiǎn)易電子琴仔細(xì)分析,接著制作硬件電路和編寫(xiě)軟件的程序,最后進(jìn)行軟硬件的調(diào)試運(yùn)行。并且從原理圖,主要芯片,各模塊的原理和各個(gè)模塊的程序調(diào)試來(lái)闡述。利用單片機(jī)產(chǎn)生不同頻率來(lái)獲得我們要求的音階,實(shí)現(xiàn)高、中、低共21個(gè)音符的發(fā)音和顯示和音樂(lè)播放時(shí)的控制顯示,并且能自動(dòng)播放程序中編排的音樂(lè)。系統(tǒng)運(yùn)行穩(wěn)定,其優(yōu)點(diǎn)是硬件電路簡(jiǎn)單,軟件
3、功能完善,控制系統(tǒng)可靠,性價(jià)比高等,具有一定的使用和參考價(jià)值。關(guān)鍵詞:?jiǎn)纹瑱C(jī)、電子琴、AT89C51、獨(dú)立鍵盤(pán)、目 錄第 1 章 引 言. 1.1. 1 設(shè)計(jì)背景. 11.2 設(shè)計(jì)任務(wù). 11.3 設(shè)計(jì)目的. 11.4 設(shè)計(jì)思路. 1第 2 章 方案論證. 12.1 方案論證. 1第 3 章 硬件系統(tǒng)設(shè)計(jì). 23.1時(shí)鐘電路. 23.2 復(fù)位電路. 33.3 原理框圖. 33. 4 顯示部分設(shè)計(jì). 33.5 按鍵部分設(shè)計(jì). 43.6 發(fā)音部分設(shè)計(jì). 5第 4 章 軟件系統(tǒng)設(shè)計(jì). 54.1 系統(tǒng)分析. 54.2 參數(shù)計(jì)算. 74.3 程序設(shè)計(jì). 8第 5 章 實(shí)驗(yàn)結(jié)果. 105.1硬件調(diào)試. 1
4、05.2 軟件調(diào)試. 105.3 仿真結(jié)果. 105.4 結(jié)果分析. 11第 6 章 總 結(jié). 11附錄一:系統(tǒng)整體電路圖. 12附錄二:元器件清單. 12附錄三:源程序代碼. 13參 考 文 獻(xiàn). 19第一章 引言1.1 設(shè)計(jì)背景隨著電子科學(xué)技術(shù)的飛速發(fā)展,電子技術(shù)正在逐漸改善著人們的學(xué)習(xí)、生活、工作,因此開(kāi)發(fā)本系統(tǒng)希望能夠給人們帶來(lái)更多的生活樂(lè)趣?;诋?dāng)前市場(chǎng)上的玩具需求量增大,其中電子琴就是一個(gè)很好的應(yīng)用方面。單片機(jī)技術(shù)使我們可以利用軟硬件來(lái)實(shí)現(xiàn)電子琴的功能,從而可以實(shí)現(xiàn)電子琴的微型化,可以用作玩具琴、音樂(lè)轉(zhuǎn)盤(pán)以及音樂(lè)童車(chē)等等。并且可以進(jìn)行一定的功能擴(kuò)展。鑒于傳統(tǒng)電子琴可以用鍵盤(pán)上的“1
5、”到“A”鍵演奏從低So到高DO等11個(gè)音,從而也可以通過(guò)單片機(jī)實(shí)現(xiàn)對(duì)十個(gè)按鍵的擴(kuò)展,實(shí)現(xiàn)七個(gè)音符鍵的高、中、低21個(gè)音調(diào)的顯示播放和任意音樂(lè)的自動(dòng)播放。本次設(shè)計(jì)將十個(gè)音鍵制作成獨(dú)立鍵盤(pán),其中七個(gè)為音符鍵,三個(gè)為控制鍵,并用數(shù)碼管進(jìn)行顯示,使電子琴的功能更加完美。不但可以實(shí)現(xiàn)對(duì)按鍵的顯示,而且可以實(shí)現(xiàn)對(duì)音樂(lè)的自動(dòng)存儲(chǔ)和播放,使該設(shè)計(jì)功能更加完善。1.2 設(shè)計(jì)任務(wù)1、根據(jù)要求,設(shè)計(jì)以單片機(jī)為核心的多音階電子琴系統(tǒng),可隨意彈奏想要表達(dá)的音樂(lè);2、針對(duì)要求控制的對(duì)象完成程序的編制;3、硬件軟件聯(lián)調(diào),完成題目所要求的功能;4、有高中低三個(gè)音階,并有顯示電路。1.3 設(shè)計(jì)目的1、通過(guò)課程設(shè)計(jì),使我們能夠
6、深入理解單片機(jī)系統(tǒng)的工作原理,接口電路的設(shè)計(jì)及調(diào)試方法,培養(yǎng)綜合運(yùn)用所學(xué)理論知識(shí)分析和解決實(shí)際問(wèn)題的能力;2、使用AT89C51芯片的串口功能,利用獨(dú)立式鍵盤(pán)和AT89C51單片機(jī)以及揚(yáng)聲器實(shí)現(xiàn)樂(lè)曲的演奏;3、用keil軟件進(jìn)行編程與調(diào)試,利用Proteus 7 Professional軟件進(jìn)行繪制硬件電路圖且進(jìn)行仿真。1.4 設(shè)計(jì)思路用獨(dú)立式鍵盤(pán)的7個(gè)按鍵分別對(duì)應(yīng)相應(yīng)的音符,當(dāng)按下某一個(gè)按鍵時(shí),產(chǎn)生一個(gè)相應(yīng)音符,操作者按一定的節(jié)奏、規(guī)律進(jìn)行輸入時(shí),信號(hào)經(jīng)過(guò)單片機(jī)處理,然后經(jīng)音頻放大后經(jīng)揚(yáng)聲器輸出音頻信號(hào),產(chǎn)生樂(lè)曲。本次設(shè)計(jì)有一個(gè)創(chuàng)新,就是預(yù)先存放一段音樂(lè)程序在芯片內(nèi),整個(gè)設(shè)計(jì)既可以作電子琴用
7、又可以作音樂(lè)盒用,且?guī)э@示功能。第二章 方案論證2.1 方案論證2.1.1總體設(shè)計(jì) 采用AT89S52單片機(jī)作為主控芯片,設(shè)置鍵盤(pán)、蜂鳴器等外圍器件,另外還用到一些簡(jiǎn)單器件如:四位數(shù)碼管,和NPN型三極管及電阻等。利用按鍵實(shí)現(xiàn)音符和音調(diào)的輸入;兩位的數(shù)碼管進(jìn)行被操作的按鍵顯示;用NPN型三極管8550實(shí)現(xiàn)低音頻功率放大;最后用蜂鳴器發(fā)音。主控芯片采用AT89S52單片機(jī),它是大規(guī)模集成電路技術(shù)發(fā)展的產(chǎn)物,具有高性能、高速度、體積小、價(jià)格低廉、穩(wěn)定可靠、應(yīng)用廣泛的特點(diǎn)。避免了由于元器件種類、個(gè)數(shù)繁多,而過(guò)于復(fù)雜的硬件電路也容易引起系統(tǒng)的精度不高、體積過(guò)大等不利因素。同時(shí)具有強(qiáng)大的控制功能和靈活的
8、編程實(shí)現(xiàn)特性,由于本設(shè)計(jì)主要用于人們娛樂(lè)方面,因此在設(shè)計(jì)上盡量使其安全以及簡(jiǎn)單易操作。具有經(jīng)濟(jì)可行性、技術(shù)可行性、實(shí)物應(yīng)用性。2.1.2單片機(jī)選型 硬件電路要以單片機(jī)作為主控芯片,實(shí)現(xiàn)按鍵輸入音符和音調(diào),四位數(shù)碼管的顯示以及低音頻功率放大和蜂鳴器發(fā)音。針對(duì)本設(shè)計(jì)的功能和用途,采用AT89C51單片機(jī)更好,實(shí)現(xiàn)功能完全,性價(jià)比較高,更適合本設(shè)計(jì)。第三章 硬件系統(tǒng)設(shè)計(jì)3.1 時(shí)鐘電路 單片機(jī)內(nèi)部具有一個(gè)高增益反相放大器,用于構(gòu)成振蕩器。通常在引腳XTALl和XTAL2跨接石英晶體和兩個(gè)補(bǔ)償電容構(gòu)成自激振蕩器,結(jié)構(gòu)圖2 中X1、C1、C2。可以根據(jù)情況選擇6MHz、12MHz或24MHz等頻率的石英
9、晶體,補(bǔ)償電容通常選擇30pF左右的瓷片電容。圖3-1、時(shí)鐘電路3.2 復(fù)位電路 單片機(jī)小系統(tǒng)常采用上電自動(dòng)復(fù)位和手動(dòng)按鍵復(fù)位兩種方式實(shí)現(xiàn)系統(tǒng)的復(fù)位操作。上電復(fù)位要求接通電源后,自動(dòng)實(shí)現(xiàn)復(fù)位操作。手動(dòng)復(fù)位要求在電源接通的條件下,在單片機(jī)運(yùn)行期間,用按鈕開(kāi)關(guān)操作使單片機(jī)復(fù)位。其結(jié)構(gòu)如下圖。上電自動(dòng)復(fù)位通過(guò)電容C3充電來(lái)實(shí)現(xiàn)。手動(dòng)按鍵復(fù)位是通過(guò)按鍵將電阻R1與VCC接通來(lái)實(shí)現(xiàn)。圖3-2、復(fù)位電路3.3 原理框圖本系統(tǒng)有主控芯片89S52、發(fā)音單元、顯示模塊、按鍵模塊組成。圖3-3、原理框圖3.4 顯示部分設(shè)計(jì)3.4.1數(shù)碼顯示方式數(shù)碼顯示有靜態(tài)顯示方式與動(dòng)態(tài)顯示方式兩種。工作在靜態(tài)顯示方式時(shí),數(shù)碼
10、管的位線與電源一直相連,數(shù)碼管中的二極管均處于通電狀態(tài),即在靜態(tài)工作方式下,顯示電路中數(shù)碼管的位選線是同時(shí)選通,而數(shù)碼管的段選線是獨(dú)立輸入。工作在動(dòng)態(tài)顯示方式時(shí),數(shù)碼管的位線在掃描控制電路的控制下按設(shè)定順序?qū)?,即電路中的?shù)碼管是逐個(gè)接通電源,數(shù)碼管的段選線以并聯(lián)方式與譯碼電路聯(lián)接,即在動(dòng)態(tài)工作方式下,數(shù)碼管不是同時(shí)導(dǎo)通顯示而是按照設(shè)定順序分時(shí)導(dǎo)通顯示。3.4.2八位數(shù)碼管的結(jié)構(gòu)本次課程設(shè)計(jì)的顯示電路采用兩位數(shù)碼管進(jìn)行顯示,由于此設(shè)計(jì)采用的是共陰極的,使用時(shí)不加限流電阻。為了顯示字符,要為 LED 顯示器段碼,除了組成8字形的字符的 7段,另加上1個(gè)小數(shù)點(diǎn)位,共計(jì)8段, 因此提供給 LED 顯
11、示器的顯示段碼為1個(gè)字節(jié)。 圖3-4、數(shù)碼管電路3.5 按鍵部分設(shè)計(jì)3.5.1鍵盤(pán)設(shè)計(jì)鍵盤(pán)在單片機(jī)應(yīng)用系統(tǒng)中是一個(gè)關(guān)鍵的部件,它能實(shí)現(xiàn)向計(jì)算機(jī)輸入數(shù)據(jù),傳送命令等功能,是人工干預(yù)計(jì)算機(jī)的主要手段。鍵盤(pán)可以分為2類:獨(dú)立連接式鍵盤(pán)和矩陣式鍵盤(pán)。本設(shè)計(jì)采用獨(dú)立式鍵盤(pán)。獨(dú)立式按鍵是直接用I/O口線構(gòu)成的單個(gè)按鍵電路,其特點(diǎn)是每個(gè)按鍵單獨(dú)占用一根I/O口線,每個(gè)按鍵的工作不會(huì)影響其它I/O口線的狀態(tài)。獨(dú)立式按鍵電路配置靈活,軟件結(jié)構(gòu)簡(jiǎn)單,但每個(gè)按鍵必須占用一根I/O口線,然而,在按鍵較多時(shí),I/O口線浪費(fèi)較大,不宜采用。獨(dú)立式按鍵軟件常采用查詢式結(jié)構(gòu)。先逐位查詢每根I/O口線的輸入狀態(tài),如某一根I/O
12、口線輸入為低電平,則可確認(rèn)該I/O口線所對(duì)應(yīng)的按鍵已按下,然后,再轉(zhuǎn)向該鍵的功能處理程序。由于本程序較為簡(jiǎn)單,為了使用方便及節(jié)省資源,選擇獨(dú)立式鍵盤(pán)。下圖為獨(dú)立式鍵盤(pán)電路圖:圖3-5、獨(dú)立式鍵盤(pán)電路圖3.6 發(fā)音部分設(shè)計(jì)圖3-6、揚(yáng)聲器電路圖第四章 軟件系統(tǒng)設(shè)計(jì)4.1 系統(tǒng)分析4.1.1系統(tǒng)軟件的組成(1)鍵盤(pán)掃描程序:檢測(cè)是否有按鍵按下,有按鍵按下則記錄按下鍵的鍵值,并跳轉(zhuǎn)至功能轉(zhuǎn)移程序;無(wú)按鍵按下,則返回鍵盤(pán)掃描程序繼續(xù)檢測(cè)。(2)功能轉(zhuǎn)移程序:對(duì)檢測(cè)到的按鍵值進(jìn)行判斷,是琴鍵則跳轉(zhuǎn)至琴鍵處理程序,是功能鍵則跳轉(zhuǎn)至相應(yīng)的功能程序,我們?cè)O(shè)計(jì)的功能程序有兩種,即音色調(diào)節(jié)功能和自動(dòng)播放樂(lè)曲的功能
13、。(3)琴鍵處理程序:根據(jù)檢測(cè)到的按鍵值,查詢音調(diào)表,給計(jì)時(shí)器賦值,使發(fā)出相應(yīng)頻率的聲音。(4)自動(dòng)播放歌曲程序:檢測(cè)到按鍵按下的是自動(dòng)播放歌曲功能鍵后執(zhí)行該程序,電子琴會(huì)自動(dòng)播放事先已經(jīng)存放的歌曲,歌曲播放完畢之后自動(dòng)返回至鍵盤(pán)掃描程序,繼續(xù)等待是否有按鍵按下。4.1.2 系統(tǒng)總體功能流程圖圖4-1、系統(tǒng)總體功能流程圖4.2 參數(shù)計(jì)算4.2.1發(fā)音原理若要產(chǎn)生音頻脈沖,只要算出某一音頻的周期(1/頻率),再將此周期除以2,即為半周期的時(shí)間。利用定時(shí)器計(jì)時(shí)半周期時(shí)間,每當(dāng)計(jì)時(shí)終止后就將P1.0反相,然后重復(fù)計(jì)時(shí)再反相。就可在P1.0引腳上得到此頻率的脈沖。利用AT89C51的內(nèi)部定時(shí)器使其工作
14、計(jì)數(shù)器模式(MODE1)下,改變計(jì)數(shù)值TH0及TL0以產(chǎn)生不同頻率的方法產(chǎn)生不同音階。4.2.2 計(jì)算舉例例如,頻率為523Hz,其周期T1/5231912s,因此只要令計(jì)數(shù)器計(jì)時(shí)956s/1s956,每計(jì)數(shù)956次時(shí)將I/O反相,就可得到中音DO(523Hz)。計(jì)數(shù)脈沖值與頻率的關(guān)系式是:Nfi÷2÷fr,式中,N是計(jì)數(shù)值;fi是機(jī)器頻率(晶體振蕩器為12MHz時(shí),其頻率為1MHz);fr是想要產(chǎn)生的頻率。其計(jì)數(shù)初值T的求法如下:T65536N65536fi÷2÷fr例如:設(shè)K65536,fi1MHz,求中音DO(261Hz)。T65536N65536
15、fi÷2÷fr655361000000÷2÷fr65536500000/fr,中音DO的T65536500000/52364580。4.2.3 計(jì)算結(jié)果(1)單片機(jī)12MHZ晶振,中音符與計(jì)數(shù)T0相關(guān)的計(jì)數(shù)值如下表所示:音符頻率(Hz)計(jì)數(shù)值(T值)音符頻率(Hz)計(jì)數(shù)值(T值)低1DO26263628#4FA#74064860#1DO#27763737中5SO78464898低2RE29463835#5SO#83194934#2RE#31163928中6LA88064968低3MI33064021#6LA#93264994低4FA34964103中7S
16、I96865030#4FA#37064185低1DO104665058低SO39264260#1DO#110965085#5SO#41564331高2RE117565110低6LA44064400#2RE#124565134#6LA#46664463高3MI131865157低7SI49464524高4FA139765178中1DO52364580#4FA#149065198#1DO#55464633高5SO156865217中2RE58764633#5SO#166165235#2RE#62264884高6LA176065252中3MI65964732#6LA#186565268中4FA698
17、64820高7SI196765283采用查表程序進(jìn)行查表時(shí),可以為這個(gè)音符建立一個(gè)表格,有助于單片機(jī)通過(guò)查表的方式來(lái)獲得相應(yīng)的數(shù)據(jù):低音019之間,中音在2039之間,高音在4059之間。4.3程序設(shè)計(jì)4.3.1 判斷音階(高中低音)子程序 在軟件設(shè)計(jì)中采用yinjie代表音階,如下表所示:音階Yinjie值高2中1低0初始化狀態(tài)為中音(yinjie=1),電路中設(shè)計(jì)高、低兩個(gè)音階鍵。上電后,若無(wú)按鍵按下,則為中音模式。若音階鍵被按下,則如下流程圖所示,初始化后進(jìn)行按鍵掃描,在高音鍵按下,若初始yinjie不為2,則另yinjie=2,進(jìn)入高音工作模式,若初始yinjie為2,則對(duì)yinjie
18、進(jìn)行初始化,即另yinjie=1,重新進(jìn)入進(jìn)入中音工作模式,這樣即實(shí)現(xiàn)了高音鍵切換高、中音方式的轉(zhuǎn)換。同理,用低音鍵實(shí)現(xiàn)中、低音的切換。圖4-2、判斷音階(高中低音)子程序4.3.2 播放子程序(包括自動(dòng)播放存儲(chǔ)音樂(lè)和按鍵發(fā)音)本設(shè)計(jì)共兩種播放模式,包括自動(dòng)播放存儲(chǔ)音樂(lè)和按鍵發(fā)音。上電后,首先開(kāi)中斷并設(shè)定定時(shí)器0為工作方式1,當(dāng)自動(dòng)播放鍵按下時(shí),進(jìn)入中斷,根據(jù)樂(lè)譜在定義的音頻數(shù)組中查找相應(yīng)音律,然后給定時(shí)器賦初值,即開(kāi)始播放音樂(lè)。當(dāng)DO、RE、MI、FA、SO、LA、SI七種音符鍵按下時(shí),根據(jù)音階值(如中高中低對(duì)應(yīng))和音符值在定義的音頻數(shù)組中查找相應(yīng)音律,然后給定時(shí)器賦初值,即按鍵發(fā)音。圖4-
19、3、播放子程序第五章 實(shí)驗(yàn)結(jié)果5.1硬件調(diào)試硬件調(diào)試主要是針對(duì)單片機(jī)部分進(jìn)行的調(diào)試。在上電之前,先確保電路中不存在斷路或短路情況,這一工作是整個(gè)調(diào)試工作的第一步,也是非常重要的一個(gè)步驟。在這部分調(diào)試中主要使用的工具是萬(wàn)用表,用來(lái)完成檢測(cè)電路中是否存在斷路或者短路情況的任務(wù)。注意焊點(diǎn)之間,確保焊點(diǎn)沒(méi)有短接在一起,同時(shí)注意焊點(diǎn)的美觀,確保沒(méi)有開(kāi)路以及短路的現(xiàn)象出現(xiàn)。在確保硬件電路正常且無(wú)異常情況(斷路或短路)的情況下方可上電調(diào)試,上電調(diào)試的目的是檢驗(yàn)電路是否接錯(cuò),同時(shí)還要檢驗(yàn)原理是否正確,在本次設(shè)計(jì)中,上電調(diào)試主要是檢測(cè)單片機(jī)控制部分、數(shù)碼管點(diǎn)亮部分、和音頻轉(zhuǎn)換電路硬件調(diào)試。1、數(shù)碼管LED電路調(diào)
20、試:接通電源,隨機(jī)按下按鈕可以看到數(shù)碼管顯示數(shù)字。2、鍵盤(pán)單片機(jī)控制部分調(diào)試:上電后,隨機(jī)按動(dòng)鍵盤(pán)可以發(fā)現(xiàn)各個(gè)按鍵對(duì)應(yīng)的音正確。5.2 軟件調(diào)試調(diào)試主要方法和技巧:通常一個(gè)調(diào)試程序應(yīng)該具備至少四種性能:跟蹤、斷點(diǎn)、查看變量、更改數(shù)值。整個(gè)程序是一個(gè)主程序調(diào)用各個(gè)子程序?qū)崿F(xiàn)功能的過(guò)程,要使主程序和整個(gè)程序都能平穩(wěn)運(yùn)行,各個(gè)模塊的子程序的正確與平穩(wěn)運(yùn)行必不可少,所以在軟件調(diào)試的最初階段就是把各個(gè)子程序模塊進(jìn)行分別調(diào)試。5.3 仿真結(jié)果圖5-1、低音音符LA仿真圖5.4 結(jié)果分析根據(jù)仿真結(jié)果可知,本次課程設(shè)計(jì)能夠準(zhǔn)確并徹底的完成設(shè)計(jì)要求。右側(cè)數(shù)碼管可以顯示a、b、c三種結(jié)果,分別代表低音、中音和高音
21、。右側(cè)數(shù)碼管可以顯示1、2、3、4、5、6、7七個(gè)數(shù)字,分別代表DO、RE、MI、FA、SO、LA、SI七種音符。當(dāng)系統(tǒng)上電后,若按下低音鍵,則選定工作方式為低音模式。P0口連接數(shù)碼管段選端,右側(cè)數(shù)碼管顯示的6即代表LA。四位數(shù)碼管即代表低音LA。第六章 總結(jié)本次課程設(shè)計(jì)我們組做的課題是基于AT89C51單片機(jī)的多音階電子琴的設(shè)計(jì),這是一個(gè)實(shí)用性質(zhì)非常強(qiáng)的題目。它與我們?nèi)粘I盥?lián)系緊密。這個(gè)課題的選取對(duì)所有參加這個(gè)課題研究的同學(xué)們來(lái)說(shuō)都是一個(gè)非常好的鍛煉。在這次課程設(shè)計(jì)中,經(jīng)過(guò)我們的努力,在仿真軟件上實(shí)現(xiàn)了高、中、低21個(gè)音符的發(fā)聲和音樂(lè)的自動(dòng)播放,我們有了一定的成就感,我們也進(jìn)一步熟悉和掌握
22、了單片機(jī)的內(nèi)部結(jié)構(gòu)和工作原理,了解了單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)的基本方法和步驟, 掌握了單片機(jī)仿真軟件Proteus的使用方法和鍵盤(pán)、顯示器在單片機(jī)控制系統(tǒng)中的應(yīng)用??傊ㄟ^(guò)這次課程設(shè)計(jì),我們都清楚明白了自己的能力是怎樣的,想提高還得歸于多鍛煉,多動(dòng)手,多向別人學(xué)習(xí)。當(dāng)然,通過(guò)做這個(gè)課題,也暴露出來(lái)了很多問(wèn)題值得我們?nèi)ヌ接懡鉀Q和克服:第一,不夠細(xì)心,不夠嚴(yán)謹(jǐn);第二,因?qū)φn本理論的掌握度不夠?qū)е戮幊坛霈F(xiàn)錯(cuò)誤;第三,課題研究不夠深刻,課題研究總是浮于表面文章,對(duì)程序?qū)ψ詈蠼Y(jié)果研究不夠造成雖然某一塊地方做的比較好但是在大腦中沒(méi)有一個(gè)總體的印象,無(wú)法理論聯(lián)系實(shí)際,研究成果的應(yīng)用嚴(yán)重背離實(shí)際現(xiàn)實(shí),影響使用。這
23、些問(wèn)題的發(fā)現(xiàn),有助于提高我們?cè)谝院蟮墓ぷ骱蛯W(xué)習(xí)中對(duì)此類問(wèn)題的認(rèn)識(shí),確保不在同一問(wèn)題上再次犯錯(cuò)。錯(cuò)誤傳遞領(lǐng)導(dǎo)的命令和遲到都是對(duì)工作的極度不負(fù)責(zé),都是工作上的極大失職,以后要嚴(yán)格要求自己,堅(jiān)決杜絕此類事情的再次發(fā)生,否則這一次次的“小錯(cuò)”必將帶來(lái)人生中的“大后悔”!總體來(lái)說(shuō),此次單片機(jī)課程設(shè)計(jì)使我們收獲良多,雖然課程設(shè)計(jì)的過(guò)程中遇到了很多困難與問(wèn)題,但我們最終還是完成了設(shè)計(jì)的任務(wù)及要求。不過(guò)在向同學(xué)請(qǐng)教,各方面都有了不同程度的改善。無(wú)論做什么事情,只要你足夠堅(jiān)強(qiáng),有足夠的毅力和決心,有足夠的挑戰(zhàn)困難的勇氣,就沒(méi)有什么辦不到的。最后,衷心感謝謝老師給我們提供了這次難得的實(shí)訓(xùn)機(jī)會(huì),給了我這么深刻的人生
24、體會(huì),這一切一切對(duì)我的人生將是一個(gè)新的旅程!附錄一:系統(tǒng)整體電路圖附錄二:元器件清單序號(hào)元器件名稱數(shù)量(個(gè))1AT89C511230P瓷片電容2312MHz晶振1410UF/16V電解電容15按鈕1160.5W / 8揚(yáng)聲器17數(shù)碼管1810K電阻19排阻(9引腳)1附錄三:源程序代碼#include<reg52.h> #define uchar unsigned char void Run(void); void KeyScan(void); void PlayKey(void); void delay_1ms(uchar i); void PlayMusic(void); vo
25、id DisPlay(void); sbit Beep=P37; uchar Th0,Tl0; /TH0,TL0 uchar flag=0xff; /模式,0表示音樂(lè),ff表示按鍵uchar key=0; /按鍵代號(hào) uchar a; uchar gaodi=0; /音樂(lè)音符 uchar code MusicCode=0XFc,0X44,0XFc,0Xac,0XFd,0X09,0XFd,0X34, 0XFD,0X82,0XFD,0Xc8,0XFD,0X06,0XFb,0X04, 0Xfb,0X90,0Xfc,0X0c,0Xfe,0X22,0Xf9,0X5b,0Xfa,0x15 ; /月亮代表我
26、的心 uchar code Music=0X02,0X82, 0X16,0X32,0X54,0X02,0X52, 0XA6,0X32,0X54,0X02,0X52, 0X64,0X74,0XB6,0X64, 0X52,0X5C,0X32,0X22, 0X16,0X12,0X14,0X32,0X22, 0X16,0X12,0X14,0X22,0X32, 0X26,0X12,0X94,0X22,0X32, 0X2C, 0X32,0X52, 0X36,0X22,0X14,0X54, 0XAC,0X92,0XA2,0X96,0X0A2,0X96,0X82, 0X3C,0X54, 0X36,0X22,0
27、X14,0X54, 0XAC,0X92,0XA2, 0X16,0X12,0X14,0X22,0X32, 0X2C,0X02,0X82, 0X16,0X32,0X56,0X12, 0XA6,0X32,0X56,0X52, 0X66,0X72,0XB6,0X62, 0X62,0X52,0X58,0X32,0X22, 0X16,0X12,0X14,0X32,0X22, 0X16,0X12,0X14,0X22,0X32, 0X1C, 0XFF;/按鍵音符uchar code KeyCode=0XFF,0XFF, 0xF8,0x8B,0xF9,0x5B,0xFA,0x14,0xFA,0x66,0xFB,
28、0x03,0xFB,0x8F,0xFC,0x0B,/低音 0xFC,0x43,0xFC,0xAB,0xFD,0x08,0xFD,0x33,0xFD,0x81,0xFD,0xC7,0xFE,0x05,/中音 0xFE,0x21,0xFE,0x55,0xFE,0x84,0xFE,0X99,0XFE,0xC0,0xFE,0xE3,0xFF,0x02,/高音 ; void main(void) P1=0XFF; /初始化 P0=0XFF; P2=0;TMOD=0X01; IT0=1;TR0=0; EX0=1; ET0=1; EA=1; while(1) KeyScan(); /按鍵掃描 Run();
29、/運(yùn)行 DisPlay(); /顯示 void Run(void) /運(yùn)行 if(flag=0) PlayMusic(); else PlayKey(); void KeyScan(void) /按鍵掃描 if(P1=0XFE) /第一按鍵按下 delay_1ms(12); /延時(shí)12MS if(P1=0XFE) /確定按下 key=1; a=key; else if(P1=0XFD) delay_1ms(12); if(P1=0XFD) key=2; a=key; else if(P1=0XFB) delay_1ms(12); if(P1=0XFB) key=3; a=key; else i
30、f(P1=0XF7) delay_1ms(12); if(P1=0XF7) key=4; a=key; else if(P1=0XEF) delay_1ms(12); if(P1=0XEF) key=5; a=key; else if(P1=0XDF) delay_1ms(12); if(P1=0XDF) key=6; a=key; else if(P1=0XBF) delay_1ms(12); if(P1=0XBF) key=7; a=key; else if(P0=0XFE) /低音模式鍵按下 delay_1ms(12); if(P0=0XFE) gaodi=0; a=gaodi; els
31、e if(P0=0XFD) /中音模式鍵按下 delay_1ms(12); if(P0=0XFD) gaodi=1; a=gaodi; else if(P0=0XFB) /高音模式鍵按下 delay_1ms(12); if(P0=0XFB) gaodi=2; a=gaodi; else return; void PlayKey(void) /響應(yīng)按鍵 if(key=0) return; else Th0=KeyCodegaodi*14+key*2; Tl0=KeyCodegaodi*14+key*2+1; TR0=1; delay_1ms(187); TR0=0; key=0; time0() interrupt 1 /定時(shí)器0中斷 TH0=Th0; TL0=Tl
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- Sr4Al2O7-作為廣譜高效水溶性氧化物犧牲層的制備及其應(yīng)用研究
- 2025年度版?zhèn)€人寵物醫(yī)院費(fèi)用分期還款協(xié)議
- 農(nóng)林廢棄物烘焙炭制備及轉(zhuǎn)化過(guò)程研究
- 枯草芽孢桿菌微生物肥料和水氮用量對(duì)溫室番茄產(chǎn)量和品質(zhì)的影響
- 2025年度裝修工程安全監(jiān)督合同
- 棚戶房電力改造方案
- 浙江圍欄立體綠化施工方案
- 二零二五年度退休解除勞動(dòng)關(guān)系的勞動(dòng)合同終止及養(yǎng)老保障協(xié)議
- 2025年度二零二五年度離婚協(xié)議書(shū)模板及子女撫養(yǎng)權(quán)分配細(xì)則
- 2025年度股權(quán)激勵(lì)計(jì)劃實(shí)施與分配管理合同
- 數(shù)學(xué)-山東省2025年1月濟(jì)南市高三期末學(xué)習(xí)質(zhì)量檢測(cè)濟(jì)南期末試題和答案
- 中儲(chǔ)糧黑龍江分公司社招2025年學(xué)習(xí)資料
- 湖南省長(zhǎng)沙市2024-2025學(xué)年高一數(shù)學(xué)上學(xué)期期末考試試卷
- 船舶行業(yè)維修保養(yǎng)合同
- 2024年林地使用權(quán)轉(zhuǎn)讓協(xié)議書(shū)
- 春節(jié)期間化工企業(yè)安全生產(chǎn)注意安全生產(chǎn)
- 數(shù)字的秘密生活:最有趣的50個(gè)數(shù)學(xué)故事
- 移動(dòng)商務(wù)內(nèi)容運(yùn)營(yíng)(吳洪貴)任務(wù)一 移動(dòng)商務(wù)內(nèi)容運(yùn)營(yíng)關(guān)鍵要素分解
- 基于ADAMS的汽車(chē)懸架系統(tǒng)建模與優(yōu)化
- 當(dāng)前中國(guó)個(gè)人極端暴力犯罪個(gè)案研究
- 中國(guó)象棋比賽規(guī)則
評(píng)論
0/150
提交評(píng)論