應(yīng)用電子技術(shù)畢業(yè)設(shè)計(jì)(論文)基于AT89S51單片機(jī)的電子琴_第1頁(yè)
應(yīng)用電子技術(shù)畢業(yè)設(shè)計(jì)(論文)基于AT89S51單片機(jī)的電子琴_第2頁(yè)
應(yīng)用電子技術(shù)畢業(yè)設(shè)計(jì)(論文)基于AT89S51單片機(jī)的電子琴_第3頁(yè)
應(yīng)用電子技術(shù)畢業(yè)設(shè)計(jì)(論文)基于AT89S51單片機(jī)的電子琴_第4頁(yè)
應(yīng)用電子技術(shù)畢業(yè)設(shè)計(jì)(論文)基于AT89S51單片機(jī)的電子琴_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 電子工程學(xué)院畢業(yè)論文(設(shè)計(jì))課 題 基于at89s51單片機(jī)的電子琴 教 研 室 電子工程學(xué)院 專 業(yè) 應(yīng)用電子技術(shù) 班 級(jí) 08應(yīng)用電子 學(xué)生姓名 學(xué)號(hào) 導(dǎo)師姓名 2010年12月 1 日目 錄摘要1引言2第一章、方案論證31.1原理圖31.2系統(tǒng)板硬件連線41.3主要芯片簡(jiǎn)介41.3.1at89s51簡(jiǎn)介41.3.2 lm38661.3.3led數(shù)碼管7第二章、實(shí)現(xiàn)過(guò)程82.1 4x4行列式鍵盤識(shí)別及顯示82.1.1硬件板上的系統(tǒng)連線設(shè)計(jì)92.1.2 程序設(shè)計(jì)內(nèi)容102.1.3 i/o并行口直接驅(qū)動(dòng)led顯示112.2 音樂(lè)產(chǎn)生的方法132.2.1 原理132.2.2 程序框圖16第三章

2、、總結(jié)與展望163.1全文總結(jié)163.2研究展望17結(jié)束語(yǔ)18參考文獻(xiàn)19致謝20附錄21摘 要隨著社會(huì)的發(fā)展進(jìn)步,音樂(lè)逐漸成為我們生活中很重要的一部分,有人曾說(shuō)喜歡音樂(lè)的人不會(huì)向惡。我們都會(huì)抽空欣賞世界名曲,作為對(duì)精神的洗禮。本論文設(shè)計(jì)一個(gè)基于單片機(jī)的簡(jiǎn)易電子琴。我們對(duì)于電子琴如何實(shí)現(xiàn)其功能,如音色選擇、聲音強(qiáng)弱控制、節(jié)拍器、自動(dòng)放音功能等等也很好奇。電子琴是現(xiàn)代電子科技與音樂(lè)結(jié)合的產(chǎn)物,是一種新型的鍵盤樂(lè)器。它在現(xiàn)代音樂(lè)扮演著重要的角色,單片機(jī)具有強(qiáng)大的控制功能和靈活的編程實(shí)現(xiàn)特性,它已經(jīng)溶入現(xiàn)代人們的生活中,成為不可替代的一部分。本文的主要內(nèi)容是用at89s51單片機(jī)為核心控制元件,設(shè)計(jì)

3、一個(gè)電子琴。以單片機(jī)作為主控核心,與鍵盤、揚(yáng)聲器等模塊組成核心主控制模塊,在主控模塊上設(shè)有16個(gè)按鍵和揚(yáng)聲器。本系統(tǒng)運(yùn)行穩(wěn)定,其優(yōu)點(diǎn)是硬件電路簡(jiǎn)單,軟件功能完善,控制系統(tǒng)可靠,性價(jià)比較高等,具有一定的實(shí)用和參考價(jià)值。關(guān)鍵詞:at89s51單片機(jī) 音色 節(jié)拍器 自動(dòng)放音 引 言單片微型計(jì)算機(jī)是大規(guī)模集成電路技術(shù)發(fā)展的產(chǎn)物,屬第四代電子計(jì)算機(jī),它具有高性能、高速度、體積小、價(jià)格低廉、穩(wěn)定可靠、應(yīng)用廣泛的特點(diǎn)。它的應(yīng)用必定導(dǎo)致傳統(tǒng)的控制技術(shù)從根本上發(fā)生變革。因此,單片機(jī)的開(kāi)發(fā)應(yīng)用已成為高科技和工程領(lǐng)域的一項(xiàng)重大課題。 電子琴是現(xiàn)代電子科技與音樂(lè)結(jié)合的產(chǎn)物,是一種新型的鍵盤樂(lè)器。它在現(xiàn)代音樂(lè)扮演著重要

4、的角色,單片機(jī)具有強(qiáng)大的控制功能和靈活的編程實(shí)現(xiàn)特性,它已經(jīng)溶入現(xiàn)代人們的生活中,成為不可替代的一部分。本文的主要內(nèi)容是用at89s51單片機(jī)為核心控制元件,設(shè)計(jì)一個(gè)電子琴。以單片機(jī)作為主控核心,與鍵盤、揚(yáng)聲器等模塊組成核心主控制模塊,在主控模塊上設(shè)有16個(gè)按鍵和揚(yáng)聲器。 本文主要對(duì)使用單片機(jī)設(shè)計(jì)簡(jiǎn)易電子琴進(jìn)行了分析,并介紹了基于單片機(jī)電子琴統(tǒng)硬件組成。利用單片機(jī)產(chǎn)生不同頻率來(lái)獲得我們要求的音階,最終可隨意彈奏想要表達(dá)的音樂(lè)。并且本文分別從原理圖,主要芯片,各模塊原理及各模塊的程序的調(diào)試來(lái)詳細(xì)闡述。 一首音樂(lè)是許多不同的音階組成的,而每個(gè)音階對(duì)應(yīng)著不同的頻率,這樣我們就可以利用不同的頻率的組合

5、,即可構(gòu)成我們所想要的音樂(lè)了,當(dāng)然對(duì)于單片機(jī)來(lái)產(chǎn)生不同的頻率非常方便,我們可以利用單片機(jī)的定時(shí)/計(jì)數(shù)器t0來(lái)產(chǎn)生這樣方波頻率信號(hào),因此,我們只要把一首歌曲的音階對(duì)應(yīng)頻率關(guān)系弄正確即可。第一章 方案論證1.1原理圖圖1-1 電子琴電路圖1.2系統(tǒng)板硬件連線 系統(tǒng)板硬件連線如圖1-1所示,發(fā)生模塊,鍵盤模塊,及l(fā)ed顯示模塊連接如下1.把“單片機(jī)系統(tǒng)”區(qū)域中的p1.0端口用導(dǎo)線連接到“音頻放大模塊”區(qū)域中的spk in端口上;2.把“單片機(jī)系統(tǒng)”區(qū)域中的p3.0p3.7端口用8芯排線連接到“4x4行列式鍵盤”區(qū)域中的c1c4r1r4端口上;3.把“單片機(jī)系統(tǒng)”區(qū)域中的p0.0/ad0p0.7/ad

6、7端口用8芯排線連接到“四路靜態(tài)數(shù)碼顯示模塊”區(qū)域中的任一個(gè)ah端口上;要求:p0.0/ad0對(duì)應(yīng)著a,p0.1/ad1對(duì)應(yīng)著b,p0.7/ad7對(duì)應(yīng)著h。1.3 主要芯片簡(jiǎn)介1.3.1 at89s51簡(jiǎn)介at89s51是一個(gè)低功耗,高性能cmos 8位單片機(jī),片內(nèi)含4k bytes isp(in-system programmable)的可反復(fù)擦寫1000次的flash只讀程序存儲(chǔ)器,器件采用atmel公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)mcs-51指令系統(tǒng)及80c51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和isp flash存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的at89s51可為許多嵌

7、入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。 at89s51具有如下特點(diǎn):40個(gè)引腳(引腳圖如圖1-2所示),4k bytes flash片內(nèi)程序存儲(chǔ)器,128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(ram),32個(gè)外部雙向輸入/輸出(i/o)口,5個(gè)中斷優(yōu)先級(jí)2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,看門狗(wdt)電路,片內(nèi)時(shí)鐘振蕩器。 此外,at89s51設(shè)計(jì)和配置了振蕩頻率可為0hz并可通過(guò)軟件設(shè)置省電模式。空閑模式下,cpu暫停工作,而ram定時(shí)計(jì)數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存ram的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復(fù)位。同時(shí)該

8、芯片還具有pdip、tqfp和plcc等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。 圖1-2 管腳圖1.3.1.1 主要功能特性 兼容mcs-51指令系統(tǒng) 32個(gè)雙向i/o口 2個(gè)16位可編程定時(shí)/計(jì)數(shù)器 全雙工uart串行中斷口線 2個(gè)外部中斷源 中斷喚醒省電模式 看門狗(wdt)電路 靈活的isp字節(jié)和分頁(yè)編程 4k可反復(fù)擦寫isp flash rom 4.5-5.5v工作電壓 時(shí)鐘頻率0-33mhz 128*8bit內(nèi)部ram 低功耗空閑和省電模式 3級(jí)加密位 軟件設(shè)置空閑和省電功能 雙數(shù)據(jù)寄存器指針1.3.2 lm3861.3.2.1 lm386內(nèi)部電路lm386是美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的音

9、頻功率放大器,主要應(yīng)用于低電壓消費(fèi)類產(chǎn)品。lm386特性:靜態(tài)功耗低,約為4ma,可用于電池供電;工作電壓范圍寬,4v-12v或5v-18v;外圍元件少;電壓增益可調(diào),20-200;低失真度。lm386是一種音頻集成功放,具有自身功耗低、電壓增益可調(diào)整、電源電壓范圍大、外接元件少和總諧波失真小等優(yōu)點(diǎn),廣泛應(yīng)用于錄音機(jī)和收音機(jī)之中。圖1-3 lm386內(nèi)部電路原理圖lm386內(nèi)部電路原理圖如圖1-3所示。與通用型集成運(yùn)放相類似,它是一個(gè)三級(jí)放大電路. 第一級(jí)為差分放大電路,t1和t3、t2和t4分別構(gòu)成復(fù)合管,作為差分放大電路的放大管;t5和t6組成鏡像電流源作為t1和t2的有源負(fù)載;t3和t4

10、信號(hào)從管的基極輸入,從t2管的集電極輸出,為雙端輸入單端輸出差分電路。使用鏡像電流源作為差分放大電路有源負(fù)載,可使單端輸出電路的增益近似等于雙端輸出電容的增益 第二級(jí)為共射放大電路,t7為放大管,恒流源作有源負(fù)載,以增大放大倍數(shù)。 第三級(jí)中的t8和t9管復(fù)合成pnp型管,與npn型管t10構(gòu)成準(zhǔn)互補(bǔ)輸出級(jí)。二極管d1和d2為輸出級(jí)提供合適的偏置電壓,可以消除交越失真。 引腳2為反相輸入端,引腳3為同相輸入端。電路由單電源供電,故為otl電路。輸出端(引腳5)應(yīng)外接輸出電容后再接負(fù)載。 電阻r7從輸出端連接到t2的發(fā)射極,形成反饋通路,并與r5和r6構(gòu)成反饋網(wǎng)絡(luò),從而引入了深度電壓串聯(lián)負(fù)反饋,使

11、整個(gè)電路具有穩(wěn)定的電壓增益。圖2.3 音頻放大器電路1.3.3 led數(shù)碼管圖1-4 7段數(shù)碼管 figure1-4 7 segment digital tube數(shù)碼管(如圖1-4所示)使用條件:a、段及小數(shù)點(diǎn)上加限流電阻b、使用電壓:段:根據(jù)發(fā)光顏色決定;小數(shù)點(diǎn):根據(jù)發(fā)光顏色決定c、使用電流:靜態(tài):總電流 80ma(每段 10ma);動(dòng)態(tài):平均電流 4-5ma 峰值電流 100ma上面這只是七段數(shù)碼管引腳圖,其中共陽(yáng)極數(shù)碼管引腳圖和共陰極的是一樣的。數(shù)碼管使用注意事項(xiàng)說(shuō)明:(1)數(shù)碼管表面不要用手觸摸,不要用手去弄引角;(2)焊接溫度:260度;焊接時(shí)間:5s(3)表面有保護(hù)膜的產(chǎn)品,可以在

12、使用前撕下來(lái)。第二章 實(shí)現(xiàn)過(guò)程2.1 4x4行列式鍵盤識(shí)別及顯示組成鍵盤的按鍵有機(jī)械式、電容式、導(dǎo)電橡膠式、薄膜式多種,但不管什么形式,其作用都是一個(gè)使電路接通與斷開(kāi)的開(kāi)關(guān)。目前微機(jī)系統(tǒng)中使用的鍵盤按其功能不同,通常可分為編碼鍵盤和非編碼鍵盤兩種基本類型。 編碼鍵盤:鍵盤本身帶有實(shí)現(xiàn)接口主要功能所需的硬件電路。不僅能自動(dòng)檢測(cè)被按下的鍵,并完成去抖動(dòng)、防串鍵等功能,而且能提供與被按鍵功能對(duì)應(yīng)的鍵碼(如ascii碼)送往cpu。所以,編碼鍵盤接口簡(jiǎn)單、使用方便。但由于硬件電路較復(fù)雜,因而價(jià)格較貴。 非編碼鍵盤:鍵盤只簡(jiǎn)單地提供按鍵開(kāi)關(guān)的行列矩陣。有關(guān)按鍵的識(shí)別、鍵碼的確定與輸入、去抖動(dòng)等功能均由軟

13、件完成。目前微機(jī)系統(tǒng)中,一般為了降低成本大多數(shù)采用非編碼鍵盤。 鍵盤接口必須具有去抖動(dòng)、防串鍵、按鍵識(shí)別和鍵碼產(chǎn)生4個(gè)基本功能。 (1)去抖動(dòng):每個(gè)按鍵在按下或松開(kāi)時(shí),都會(huì)產(chǎn)生短時(shí)間的抖動(dòng)。抖動(dòng)的持續(xù)時(shí)間與鍵的質(zhì)量相關(guān),一般為520mm。所謂抖動(dòng)是指在識(shí)別被按鍵是必須避開(kāi)抖動(dòng)狀態(tài),只有處在穩(wěn)定接通或穩(wěn)定斷開(kāi)狀態(tài)才能保證識(shí)別正確無(wú)誤。去抖問(wèn)題可通過(guò)軟件延時(shí)或硬件電路解決。 (2)防串鍵:防串鍵是為了解決多個(gè)鍵同時(shí)按下或者前一按鍵沒(méi)有釋放又有新的按鍵按下時(shí)產(chǎn)生的問(wèn)題。常用的方法有雙鍵鎖定和n鍵輪回兩種方法。雙鍵鎖定,是當(dāng)有兩個(gè)或兩個(gè)以上的按鍵按下時(shí),只把最后釋放的鍵當(dāng)作有效鍵并產(chǎn)生相應(yīng)的鍵碼。n鍵

14、輪回,是當(dāng)檢測(cè)到有多個(gè)鍵被按下時(shí),能根據(jù)發(fā)現(xiàn)它們的順序依次產(chǎn)生相應(yīng)鍵的鍵碼。 (3)被按鍵識(shí)別:如何識(shí)別被按鍵是接口解決的主要問(wèn)題,一般可通過(guò)軟硬結(jié)合的方法完成。常用的方法有行掃描法和線反轉(zhuǎn)法兩種。行掃描法的基本思想是,由程序?qū)︽I盤逐行掃描,通過(guò)檢測(cè)到的列輸出狀態(tài)來(lái)確定閉合鍵,為此,需要設(shè)置入口、輸出口一個(gè),該方法在微機(jī)系統(tǒng)中被廣泛使用。線反轉(zhuǎn)法的基本思想是通過(guò)行列顛倒兩次掃描來(lái)識(shí)別閉合鍵,為此需要提供兩個(gè)可編程的雙向輸入/輸出端口。 (4)鍵碼產(chǎn)生:為了從鍵的行列坐標(biāo)編碼得到反映鍵功能的鍵碼,一般在內(nèi)存區(qū)中建立一個(gè)鍵盤編碼表,通過(guò)查表獲得被按鍵的鍵碼。用at89s51的并行口p1接44矩陣鍵

15、盤,以p1.0p1.3作輸入線,以p1.4p1.7作輸出線;在數(shù)碼管上顯示每個(gè)按鍵的“0f”序號(hào)。圖2-1 鍵盤識(shí)別模塊2.1.1 系統(tǒng)板上硬件連線設(shè)計(jì)鍵盤模塊硬件連線如圖2-1所示:(1)把“單片機(jī)系統(tǒng)”區(qū)域中的p3.0p3.7端口用8芯排線連接到“4x4行列式鍵盤”區(qū)域中的c1c4r1r4端口上;(2)把“單片機(jī)系統(tǒng)”區(qū)域中的p0.0/ad0p0.7/ad7端口用8芯排線連接到“7段數(shù)碼顯示模塊”區(qū)域中的任一個(gè)ah端口上;要求:p0.0/ad0對(duì)應(yīng)著a,p0.1/ad1對(duì)應(yīng)著b,p0.7/ad7對(duì)應(yīng)著h。2.1.2 程序設(shè)計(jì)內(nèi)容(1)44矩陣鍵盤識(shí)別處理,每個(gè)按鍵有它的行值和列值,行值和列

16、值的組合就是識(shí)別這個(gè)按鍵的編碼。矩陣的行線和列線分別通過(guò)兩并行接口和cpu通信。每個(gè)按鍵的狀態(tài)同樣需變成數(shù)字量“0”和“1”,開(kāi)關(guān)的一端(列線)通過(guò)電阻接vcc,而接地是通過(guò)程序輸出數(shù)字“0”實(shí)現(xiàn)的。(2)鍵盤處理程序的任務(wù)是:確定有無(wú)鍵按下,判斷哪一個(gè)鍵按下,鍵的功能是什么;還要消除按鍵在閉合或斷開(kāi)時(shí)的抖動(dòng)。兩個(gè)并行口中,一個(gè)輸出掃描碼,使按鍵逐行動(dòng)態(tài)接地,另一個(gè)并行口輸入按鍵狀態(tài),由行掃描值和回饋信號(hào)共同形成鍵編碼而識(shí)別按鍵,通過(guò)軟件查表,查出該鍵的功能。電路圖如下圖2.1.1 行列式鍵盤電路2.1.3 i/o并行口直接驅(qū)動(dòng)led顯示led顯示模塊如圖2-2所示,利用at89s51單片機(jī)的

17、p0端口的p0.0p0.7連接到一個(gè)七段數(shù)碼管的ah的筆段上,數(shù)碼管的公共端接地。在數(shù)碼管上循環(huán)顯示07數(shù)字,時(shí)間間隔0.2秒。圖2-2 電路原理圖系統(tǒng)板上硬件連線:(如圖2-2所示) 把“單片機(jī)系統(tǒng)”區(qū)域中的p0.0/ad0p0.7/ad7端口用8芯排線連接到“七段數(shù)碼顯示模塊”區(qū)域中的任一個(gè)數(shù)碼管的ah端口上;要求:p0.0/ad0與a相連,p0.1/ad1與b相連,p0.2/ad2與c相連,p0.7/ad7與h相連。程序設(shè)計(jì)內(nèi)容 (1)led數(shù)碼顯示原理: 七段led顯示器內(nèi)部由七個(gè)條形發(fā)光二極管和一個(gè)小圓點(diǎn)發(fā)光二極管組成,根據(jù)各管的極管的接線形式,可分成共陰極型和共陽(yáng)極型。 led數(shù)碼

18、管的ga七個(gè)發(fā)光二極管因加正電壓而發(fā)亮,因加零電壓而不以發(fā)亮,不同亮暗的組合就能形成不同的字形,這種組合稱之為字形碼,下面給出共陰極的字形碼表(如表2-1所示)表2-1 字形碼表“0”3fh“8”7fh“1”06h“9”6fh“2”5bh“a”77h“3”4fh“b”7ch“4”66h“c”39h“5”6dh“d”5eh“6”7dh“e”79h“7”07h“f”71h(2)由于顯示的數(shù)字09的字形碼沒(méi)有規(guī)律可循,只能采用查表的方式來(lái)完成我們所需的要求了。這樣我們按著數(shù)字09的順序,把每個(gè)數(shù)字的筆段代碼按順序排好!建立的表格如下所示:tabledb 3fh,06h,5bh,4fh,66h,6dh

19、,7dh,07h,7fh,6fh。2.2 音樂(lè)產(chǎn)生的方法2.2.1 原理一首音樂(lè)是許多不同的音階組成的,而每個(gè)音階對(duì)應(yīng)著不同的頻率,這樣我們就可以利用不同的頻率的組合,即可構(gòu)成我們所想要的音樂(lè)了,當(dāng)然對(duì)于單片機(jī)來(lái)產(chǎn)生不同的頻率非常方便,我們可以利用單片機(jī)的定時(shí)/計(jì)數(shù)器t0來(lái)產(chǎn)生這樣方波頻率信號(hào),因此,我們只要把一首歌曲的音階對(duì)應(yīng)頻率關(guān)系正確即可。若要產(chǎn)生音頻脈沖,只要算出某一音頻的周期(1/頻率),再將此周期除以2,即為半周期的時(shí)間。利用定時(shí)器計(jì)時(shí)半周期時(shí)間,每當(dāng)計(jì)時(shí)終止后就將p1.0反相,然后重復(fù)計(jì)時(shí)再反相。就可在p1.0引腳上得到此頻率的脈沖。 利用at89c51的內(nèi)部定時(shí)器使其工作計(jì)數(shù)器

20、模式(mode1)下,改變計(jì)數(shù)值th0及tl0以產(chǎn)生不同頻率的方法產(chǎn)生不同音階,例如,頻率為523hz,其周期t1/5231912s,因此只要令計(jì)數(shù)器計(jì)時(shí)956s/1s956,每計(jì)數(shù)956次時(shí)將i/o反相,就可得到中音do(523hz)。 計(jì)數(shù)脈沖值與頻率的關(guān)系式(如式2-1所示)是: nfi2fr 2-1式中,n是計(jì)數(shù)值;fi是機(jī)器頻率(晶體振蕩器為12mhz時(shí),其頻率為1mhz);fr是想要產(chǎn)生的頻率。其計(jì)數(shù)初值t的求法如下: t65536n65536fi2fr 例如:設(shè)k65536,fi1mhz,求低音do(261hz)、中音do(523hz)、高音do(1046hz)的計(jì)數(shù)值。 t65

21、536n65536fi2fr6553610000002fr65536500000/fr 低音do的t65536500000/26263627 中音do的t65536500000/52364580 高音do的t65536500000/104665059單片機(jī)12mhz晶振,高中低音符與計(jì)數(shù)t0相關(guān)的計(jì)數(shù)值如表2-2所示表2-2 音符頻率表音符頻率(hz)簡(jiǎn)譜碼(t值)音符頻率(hz)簡(jiǎn)譜碼(t值)低1do26263628# 4 fa#74064860#1do#27763731中 5 so78464898低2re29463835# 5 so#83164934#2 re#31163928中 6 la

22、88064968低 3 m33064021# 693264994低 4 fa34964103中 7 si98865030# 4 fa#37064185高 1 do104665058低 5 so39264260# 1 do#110965085# 5 so#41564331高 2 re117565110低 6 la44064400# 2 re#124565134# 646664463高 3 m131865157低 7 si49464524高 4 fa139765178中 1 do52364580# 4 fa#148065198# 1 do#55464633高 5 so156865217中 2 re

23、58764684# 5 so#166165235# 2 re#62264732高 6 la176065252中 3 m65964777# 6186565268中 4 fa69864820高 7 si196765283我們要為這個(gè)音符建立一個(gè)表格,單片機(jī)通過(guò)查表的方式來(lái)獲得相應(yīng)的數(shù)據(jù) 低音019之間,中音在2039之間,高音在4059之間 table: dw 0, 63628, 63835, 64021, 64103, 64260, 64400, 64524, 0, 0 dw 0, 63731, 63928, 0, 64185, 64331, 64463, 0, 0, 0 dw 0, 64580

24、, 64684, 64777, 64820, 64898, 64968, 65030, 0, 0 dw 0, 64633, 64732, 0, 64860, 64934, 64994, 0, 0, 0 dw 0, 65058, 65110,65157, 65178, 65217, 65252, 65283, 0, 0 dw 0, 65085, 65134, 0, 65198, 65235, 65268, 0, 0, 0 dw 0音樂(lè)的音拍,一個(gè)節(jié)拍為單位(c調(diào))(如表2-3所示)表2-3 曲調(diào)值表曲調(diào)值delay曲調(diào)值delay調(diào)4/4125ms調(diào)4/462ms調(diào)3/4187ms調(diào)3/494m

25、s調(diào)2/4250ms調(diào)2/4125ms對(duì)于不同的曲調(diào)我們也可以用單片機(jī)的另外一個(gè)定時(shí)/計(jì)數(shù)器來(lái)完成。琴鍵處理程序,根據(jù)檢測(cè)到得按鍵值,查詢音律表,給計(jì)時(shí)器賦值,發(fā)出相應(yīng)頻率的聲音。對(duì)音調(diào)的控制:根據(jù)不同的按鍵,對(duì)定時(shí)器t1送入不同的初值,調(diào)節(jié)t1的溢出時(shí)間,這樣就可以輸出不同音調(diào)頻率的方波。不同音調(diào)下各個(gè)音階的定時(shí)器。在這個(gè)程序中用到了兩個(gè)定時(shí)/計(jì)數(shù)器來(lái)完成的。其中t0用來(lái)產(chǎn)生音符頻率,t1用來(lái)產(chǎn)生音拍。2.2.2 程序框圖音樂(lè)發(fā)聲程序框圖如圖2-4所示:圖2-4 音樂(lè)發(fā)聲程序框圖第三章 總結(jié)與展望3.1全文總結(jié)通過(guò)這次畢業(yè)設(shè)計(jì),我學(xué)到了不少課本上沒(méi)有的知識(shí),也鍛煉了自己的動(dòng)手能力,將以前學(xué)過(guò)

26、的零散的知識(shí)串到一起。首先在畢業(yè)設(shè)計(jì)剛開(kāi)始的調(diào)研階段,我學(xué)會(huì)了怎么通過(guò)各種方式查詢相關(guān)的資料。通過(guò)對(duì)這些資料的學(xué)習(xí),我大致了解了單片機(jī)的發(fā)展現(xiàn)狀以及未來(lái)的發(fā)展趨勢(shì),認(rèn)識(shí)到目前單片機(jī)方面的各種各樣的發(fā)展,和它們之間的競(jìng)爭(zhēng)。了解了單片機(jī)方面的先進(jìn)技術(shù),這些都為我的未來(lái)的學(xué)習(xí)指明了方向。我的畢業(yè)設(shè)計(jì)主要涉及硬件和軟件兩方面的內(nèi)容,通過(guò)這些我的硬件和軟件開(kāi)發(fā)能力都獲得了提高。首先硬件方面,基本了解了電子產(chǎn)品的開(kāi)發(fā)流程和所要做的工作?;菊莆樟藀rotel99se原理圖的方法,并設(shè)計(jì)了一個(gè)單片機(jī)最小系統(tǒng)。通過(guò)開(kāi)發(fā)板的設(shè)計(jì)和硬件搭建的過(guò)程,使我對(duì)51系單片機(jī)的接口有了更深層次的理解,熟悉了一些單片機(jī)常用的

27、外圍電路引腳和連接方法,如led數(shù)碼管,鍵盤等。在軟件方面,通過(guò)串行口調(diào)試工具的開(kāi)發(fā),使我加深了對(duì)累封裝的理解,熟悉了51系列單片機(jī)內(nèi)部的寄存器和編程規(guī)則,以及如何控制外圍電路。3.2研究展望微型計(jì)算機(jī)的出現(xiàn)和大量使用將人類社會(huì)帶入一個(gè)新的時(shí)代,單片微型計(jì)算機(jī)(簡(jiǎn)稱單片機(jī))在其中扮演著十分重要的角色。雖然它沒(méi)有常見(jiàn)的pc那樣大的體積和重量,不會(huì)在辦公桌或控制臺(tái)上占據(jù)一個(gè)顯要的位置,但它就像小小的螺絲釘一樣,鑲嵌在人們工作、生活中需要計(jì)算、控制、測(cè)量等智能活動(dòng)的各個(gè)角落。自20世紀(jì)70年代問(wèn)世以來(lái),單片機(jī)以其體積小、可靠性高、控制功能強(qiáng)、使用方便、性能價(jià)格比高、容易產(chǎn)品化等特點(diǎn),在智能儀表、機(jī)電

28、一體化、實(shí)時(shí)控制、分布式多機(jī)系統(tǒng)、家用電器等各個(gè)領(lǐng)域得到了廣泛應(yīng)用,對(duì)各個(gè)行業(yè)的技術(shù)改造和產(chǎn)品的更新?lián)Q代起著重要的推動(dòng)作用,對(duì)人們生活質(zhì)量的提高產(chǎn)生了深刻的影響。作為21世紀(jì)的工科大學(xué)生,學(xué)好單片機(jī),一方面可以加深對(duì)計(jì)算機(jī)原理和結(jié)構(gòu)的認(rèn)識(shí),另一方面也為自身在專業(yè)上的深入發(fā)展構(gòu)筑了一個(gè)很好的平臺(tái)其重要性怎么強(qiáng)調(diào)都不為過(guò)。結(jié) 束 語(yǔ)將程序燒入芯片,調(diào)試成功后,可任意彈奏自己想要的旋律。本研究通過(guò)制作電子琴,將幾個(gè)模塊很好的融合起來(lái),對(duì)使用單片機(jī)設(shè)計(jì)簡(jiǎn)易電子琴進(jìn)行了分析,并介紹了基于單片機(jī)電子琴統(tǒng)硬件組成。利用單片機(jī)產(chǎn)生不同頻率來(lái)獲得我們要求的音階,最終可隨意彈奏想要表達(dá)的音樂(lè)。說(shuō)明一首音樂(lè)是許多不

29、同的音階組成的,而每個(gè)音階對(duì)應(yīng)著不同的頻率,這樣我們就可以利用不同的頻率的組合,即可構(gòu)成我們所想要的音樂(lè)了,于是我們可以利用單片機(jī)的定時(shí)/計(jì)數(shù)器t0來(lái)產(chǎn)生這樣方波頻率信號(hào),因此,我們只要把一首歌曲的音階對(duì)應(yīng)頻率關(guān)系弄正確即可,然后我們利用功放電路來(lái)將音樂(lè)聲音放大,同時(shí)通過(guò)顯示模塊來(lái)確知自己所彈的音符。 不足之處有:1.可彈奏的音符數(shù)較少,只能在一定范圍內(nèi)滿足用戶需要??赏ㄟ^(guò)改進(jìn)鍵盤識(shí)別模塊和發(fā)生模塊來(lái)增加其復(fù)雜度。 2.音量不可調(diào)??赏ㄟ^(guò)改進(jìn)功放電路,即在lm386的1腳和8腳間增加一直外界電阻和電容,將3腳與地之間的電阻換為10k的變阻,即可調(diào)節(jié)其放大增益。參考文獻(xiàn)1 陳明熒8051單片機(jī)課

30、程設(shè)計(jì)實(shí)訓(xùn)教材m北京:清華大學(xué)出版社,2003年9月2 徐新艷單片機(jī)原理、應(yīng)用與實(shí)踐m北京:高等教育出版社,2005年3月3 吳金戌,沈慶陽(yáng),郭庭吉8051單片機(jī)實(shí)踐與應(yīng)用m第一版北京:清華大學(xué)出版社,2002年4 吳金戌,沈慶陽(yáng),郭庭吉,8051單片機(jī)實(shí)踐與應(yīng)用m清華大學(xué)出版社,20015 馮博琴,微型計(jì)算機(jī)原理與接口技術(shù)m清華大學(xué)出版社,20046 張毅剛,mcs-51單片機(jī)應(yīng)用設(shè)計(jì)m哈爾濱工業(yè)大學(xué)出版社,20047 張淑清,姜萬(wàn)錄等,單片微型計(jì)算機(jī)接口技術(shù)及應(yīng)用m國(guó)防工業(yè)出版社,20038 吳金戌,沈慶陽(yáng),郭庭吉,8051單片機(jī)實(shí)踐與應(yīng)用m清華大學(xué)出版社,20019 馮博琴,微型計(jì)算機(jī)原

31、理與接口技術(shù)m清華大學(xué)出版社,200410 張毅剛,mcs-51單片機(jī)應(yīng)用設(shè)計(jì)m哈爾濱工業(yè)大學(xué)出版社,200411 龍威林,楊冠聲,胡山.單片機(jī)應(yīng)用入門:at89s51和avrm.北京:化學(xué)工業(yè)出版社,2008. 12 黃鑫,馬善農(nóng),趙永科.基于cpld的電子琴研究與設(shè)計(jì)j.科技廣場(chǎng),2007(5). 13 趙亮,侯國(guó)銳.單片機(jī)c語(yǔ)言編程與實(shí)例m.北京:人民郵電出版社,2003. 14 楊恢先,黃輝先.單片機(jī)原理及應(yīng)用m.北京:人民郵電出版社,2006. 15 張虹.單片機(jī)原理及應(yīng)用m.北京:中國(guó)電力出版社,2009. 16 李云鋼,鄒逢興,龍志強(qiáng). 單片機(jī)原理與應(yīng)用系統(tǒng)計(jì)j.北京:中國(guó)水利水

32、電出版社,2008.致 謝 這次畢業(yè)論文能夠得以順利完成,是所有曾經(jīng)指導(dǎo)過(guò)我的老師,幫助過(guò)我的同學(xué),一直支持著我的家人對(duì)我的教誨、幫助和鼓勵(lì)的結(jié)果。我要在這里對(duì)他們表示深深的謝意! 首先,要特別感謝我的指導(dǎo)老師高建黨老師。高老師在我畢業(yè)論文的撰寫過(guò)程中,給我提供了極大的幫助和指導(dǎo)。從開(kāi)始選題到中期修正,再到最終定稿,高老師給我提供了許多寶貴建議。老師淵博的專業(yè)知識(shí),嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度,精益求精的工作作風(fēng),誨人不倦的高尚師德,樸實(shí)無(wú)華、平易近人的人格魅力對(duì)我影響深遠(yuǎn)。不僅使我樹(shù)立了遠(yuǎn)大的學(xué)術(shù)目標(biāo)、掌握了基本的研究方法,還使我明白了許多待人接物與為人處世的道理。 其次,要感謝所有曾經(jīng)教我們電子信息的任

33、課老師,老師們教會(huì)我的不僅僅是專業(yè)知識(shí),更多的是對(duì)待學(xué)習(xí)、對(duì)待生活的態(tài)度。 第三,感謝我的父母親,你們是我力量的源泉,只要有你們,不管面對(duì)什么樣的困難,我都不會(huì)害怕,謝謝你們對(duì)我的支持與鼓勵(lì)! 再次,感謝我的室友及其他好友,因?yàn)橛心銈兊膸椭?,我的論文得以順利完成。感謝你們,大學(xué)三年給我了那么多的幫助與鼓勵(lì),在我不開(kāi)心的時(shí)候,總能讓我開(kāi)心起來(lái)。不會(huì)忘記,大學(xué)三年里我們一起度過(guò)的歡樂(lè)時(shí)光,那些開(kāi)心的日子,總是那么令人難以忘懷。 最后對(duì)老師,同學(xué)和家人再次致以我最衷心的感謝!教導(dǎo)過(guò)我的老師,你們的人格魅力永記我心間。身邊的同學(xué)和朋友,有你們,我的大學(xué)才算完整。寢室的好友,你們的天賦猶如上天恩賜,有了

34、你們我的生活更加精彩。附 錄電路原理圖:程序框圖程序框圖如圖所示:c語(yǔ)言源程序#includeunsigned char code table=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f;unsigned char discount;void delay02s(void) unsigned char i, j, k; for(i=20;i0;i-) for(j=20;j0;j-) for(k=248;k0;k-);void main(void) while(1) for(discount=0;dispcount0;i-)for(j=20

35、0;j0;j-);temp=p3;temp=temp & 0x0f;if (temp!=0x0f)temp=p3;temp=temp & 0x0f;switch(temp)case 0x0e:key=7;break;case 0x0d:key=8;break;case 0x0b:key=9;break;case 0x07:key=10;break;temp=p3;p1_0=p1_0;p0=tablekey;temp=temp & 0x0f;while(temp!=0x0f)temp=p3;temp=temp & 0x0f;p3=0xff;p3_5=0;temp=p3;temp=temp & 0

36、x0f;if (temp!=0x0f)for(i=50;i0;i-)for(j=200;j0;j-);temp=p3;temp=temp & 0x0f;if (temp!=0x0f)temp=p3;temp=temp & 0x0f;switch(temp)case 0x0e:key=4;break;case 0x0d:key=5;break;case 0x0b:key=6;break;case 0x07:key=11;break;temp=p3;p1_0=p1_0;p0=tablekey;temp=temp & 0x0f;while(temp!=0x0f)temp=p3;temp=temp &

37、 0x0f;p3=0xff;p3_6=0;temp=p3;temp=temp & 0x0f;if (temp!=0x0f)for(i=50;i0;i-)for(j=200;j0;j-);temp=p3;temp=temp & 0x0f;if (temp!=0x0f)temp=p3;temp=temp & 0x0f;switch(temp)case 0x0e:key=1;break;case 0x0d:key=2;break;case 0x0b:key=3;break;case 0x07:key=12;break;temp=p3;p1_0=p1_0;p0=tablekey;temp=temp &

38、 0x0f;while(temp!=0x0f)temp=p3;temp=temp & 0x0f;p3=0xff;p3_7=0;temp=p3;temp=temp & 0x0f;if (temp!=0x0f)for(i=50;i0;i-)for(j=200;j0;j-);temp=p3;temp=temp & 0x0f;if (temp!=0x0f)temp=p3;temp=temp & 0x0f;switch(temp)case 0x0e:key=0;break;case 0x0d:key=13;break;case 0x0b:key=14;break;case 0x07:key=15;bre

39、ak;temp=p3;p1_0=p1_0;p0=tablekey;temp=temp & 0x0f;while(temp!=0x0f)temp=p3;temp=temp & 0x0f;程序框圖 音樂(lè)發(fā)聲程序框圖如圖所示:程序#includeunsigned char code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;unsigned char temp;unsigned char key;unsigned char i,j;unsigned char sth0;

40、unsigned char stl0;unsigned int code tab=64021,64103,64260,64400, 64524,64580,64684,64777, 64820,64898,64968,65030, 65058,65110,65157,65178;void main(void) tmod=0x01; et0=1; ea=1; while(1) p3=0xff; p3_4=0; temp=p3; temp=temp & 0x0f; if (temp!=0x0f) for(i=50;i0;i-) for(j=200;j0;j-); temp=p3; temp=temp & 0x0f; if (temp!=0x0f) temp=p3; temp=temp & 0x0f; switch(temp) case 0x0e: key=0; break; case 0x0d: key=1; break; case 0x0b: key=2; break; case 0x07: key=3; break; temp=p3; p1_0=p1_0; p0=tablekey; sth0=tabkey/256; stl0=tabkey%6; tr0=1; temp=temp & 0x0f; while(temp!=0x0f

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論