單片機系統(tǒng)開發(fā)與應用實習報告基于AT89S52單片機的多音階電子琴設計_第1頁
單片機系統(tǒng)開發(fā)與應用實習報告基于AT89S52單片機的多音階電子琴設計_第2頁
單片機系統(tǒng)開發(fā)與應用實習報告基于AT89S52單片機的多音階電子琴設計_第3頁
單片機系統(tǒng)開發(fā)與應用實習報告基于AT89S52單片機的多音階電子琴設計_第4頁
單片機系統(tǒng)開發(fā)與應用實習報告基于AT89S52單片機的多音階電子琴設計_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、單片機系統(tǒng)開發(fā)與應用工程實習報告選題名稱:基于at89s52單片機的多音階電子琴設計系(院): 專 業(yè): 班 級: 姓 名: 學 號: 指導教師: 學年學期: 2009 2010 學年 第 2 學期2010年 5 月 30 日摘要: 隨著科技的快速發(fā)展,單片機的應用日益普遍。單片機具有強大的控制功能和靈活的編程實現特性,它已經溶入現代人們的生活中,成為不可替代的一部分。本單片機系統(tǒng)設計應用單片機控制技術,用at89s52單片機為核心控制元件根據上學期所學的單片機知識結合設計了一套單片機控制的電子琴系統(tǒng)。電子琴是現代電子科技與音樂結合的產物,是一種新型的鍵盤樂器,它在現代音樂扮演著重要的角色。以

2、單片機作為主控核心,與鍵盤、揚聲器等模塊組成核心主控制模塊,在主控模塊上設有16個按鍵和揚聲器。本系統(tǒng)運行穩(wěn)定,其優(yōu)點是硬件電路簡單,軟件功能完善,控制系統(tǒng)可靠,性價比較高等,具有一定的實用和參考價值。關鍵詞:at89c52;lm386;矩陣鍵盤行掃描;電子琴目錄1 課題綜述11.1 課題來源11.2 開發(fā)意義11.3 設計目標12 系統(tǒng)硬件設計及說明12.1 系統(tǒng)組成及總體框圖12.2 系統(tǒng)板硬件連線 22.3 元件簡介32.4 音頻功放電路53 系統(tǒng)軟件設計及說明53.1 行列式鍵盤識別63.2 音樂發(fā)生63.3 系統(tǒng)總體功能流程圖84 系統(tǒng)調試94.1 硬件調試94.2 軟件調試10總

3、結11參考文獻121 課題綜述1.1 課題來源單片微型計算機是大規(guī)模集成電路技術發(fā)展的產物,屬第四代電子計算機,它具有高性能、高速度、體積小、價格低廉、穩(wěn)定可靠、應用廣泛的特點。它的應用必定導致傳統(tǒng)的控制技術從根本上發(fā)生變革。因此,單片機的開發(fā)應用已成為高科技和工程領域的一項重大課題。電子琴是現代電子科技與音樂結合的產物,是一種新型的鍵盤樂器。它在現代音樂扮演著重要的角色,單片機具有強大的控制功能和靈活的編程實現特性,它已經溶入現代人們的生活中,成為不可替代的一部分。單片機技術使我們可以利用軟硬件實現電子琴的功能,從而實現電子琴的微型化。1.2 開發(fā)意義(1)可以隨意彈奏想要表達的音樂;(2)

4、軟件功能完善,控制系統(tǒng)可靠;(3)制作簡單,成本低;1.3 設計目標以單片機作為主控核心,與鍵盤、揚聲器等模塊組成核心主控制模塊,在主控模塊上設有16個按鍵和揚聲器。一首音樂是許多不同的音階組成的,而每個音階對應著不同的頻率,這樣我們就可以利用不同的頻率的組合,即可構成我們所想要的音樂了。2 系統(tǒng)硬件設計及說明2.1 系統(tǒng)組成及總體框圖硬件設計的任務是根據總體設計要求,具體確定系統(tǒng)中所要使用的元器件,設計出系統(tǒng)的原理框圖、電路原理圖。主電路主要由4*4按鍵矩陣電路、功率放大電路、揚聲器、復位電路、晶振電路、電源電路幾部分組成。該設計要實現一種由單片機控制的電子琴,單片機工作于12mhz時鐘頻率

5、,使用其定時/計數器t0,工作模式為1,改變計數值th0和tl0可以產生不同頻率的脈沖信號。該設計4*4鍵盤對應不同音階,用戶可以根據樂譜在鍵盤上進行演奏,音樂發(fā)生器會根據用戶的彈奏,通過揚聲器將音樂播放出來。用單片機產生的音頻脈沖直接驅動揚聲器并不能產生所要實現的音樂,因為它沒有足夠的驅動能力,這就需要音頻功率放大電路。該設計使用低壓音頻功率放大器lm386實現音頻功放電路。圖2-1 系統(tǒng)結構圖圖2-2 電路原理圖2.2 系統(tǒng)板硬件連線 系統(tǒng)板硬件連線如圖2-2所示,發(fā)生模塊,鍵盤模塊連接如下:1. 把“單片機系統(tǒng)”區(qū)域中的p1.0端口用導線連接到“音頻放大模塊”區(qū)域中的spk in端口上;

6、 2.把“單片機系統(tǒng)“區(qū)域中的p3.0p3.7端口用8芯排線連接到“4x4行列式鍵盤”區(qū)域中的c1c4r1r4端口上。2.3 元件簡介2.3.1 at89c52簡介功能特性:at89s52是一種低功耗、高性能cmos8位微控制器,具有 8k 在系統(tǒng)可編程flash 存儲器。使用atmel 公司高密度非 易失性存儲器技術制造,與工業(yè)80c51 產品指令和引腳完 全兼容。片上flash允許程序存儲器在系統(tǒng)可編程,亦適于 常規(guī)編程器。在單芯片上,擁有靈巧的8 位cpu 和在系統(tǒng) 可編程flash,使得at89s52為眾多嵌入式控制應用系統(tǒng)提 供高靈活、超有效的解決方案。 at89s52具有以下標準功

7、能: 8k字節(jié)flash,256字節(jié)ram, 32 位i/o 口線,看門狗定時器,2 個數據指針,三個16 位 定時器/計數器,一個6向量2級中斷結構,全雙工串行口, 片內晶振及時鐘電路。另外,at89s52 可降至0hz 靜態(tài)邏 輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,cpu 停止工作,允許ram、定時器/計數器、串口、中斷繼續(xù)工作。掉電保護方式下,ram內容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。8 位微控制器 8k 字節(jié)在系統(tǒng)可編程 flash at89s52。主要性能:與mcs-51單片機產品兼容、8k字節(jié)在系統(tǒng)可編程flash存儲器、1000次

8、擦寫周期、全靜態(tài)操作:0hz33hz、三級加密程序存儲器、32個可編程i/o口線、三個16位定時器/計數器八個中斷源、全雙工uart串行通道、低功耗空閑和掉電模式、掉電后中斷可喚醒、看門狗定時器、雙數據指針、掉電標識符。圖2-3 管腳圖2.3.2 lm386簡介lm386是一種音頻集成功放,具有自身功耗低、電壓增益可調整、電源電壓范圍大、外接元件少和總諧波失真小等優(yōu)點,廣泛應用于錄音機和收音機之中。圖2-4 lm386內部電路原理圖lm386內部電路原理圖如圖2-4所示。與通用型集成運放相類似,它是一個三級放大電路。第一級為差分放大電路,t1和t3、t2和t4分別構成復合管,作為差分放大電路的

9、放大管;t5和t6組成鏡像電流源作為t1和t2的有源負載;t3和t4信號從管的基極輸入,從t2管的集電極輸出,為雙端輸入單端輸出差分電路。使用鏡像電流源作為差分放大電路有源負載,可使單端輸出電路的增益近似等于雙端輸出電容的增益。第二級為共射放大電路,t7為放大管,恒流源作有源負載,以增大放大倍數。第三級中的t8和t9管復合成pnp型管,與npn型管t10構成準互補輸出級。二極管d1和d2為輸出級提供合適的偏置電壓,可以消除交越失真。引腳2為反相輸入端,引腳3為同相輸入端。電路由單電源供電,故為otl電路。輸出端(引腳5)應外接輸出電容后再接負載。電阻r7從輸出端連接到t2的發(fā)射極,形成反饋通路

10、,并與r5和r6構成反饋網絡,從而引入了深度電壓串聯(lián)負反饋,使整個電路具有穩(wěn)定的電壓增益。圖2-5 lm386的外形和引腳的排列 lm386的外形和引腳的排列如圖2-5所示。引腳2為反相輸入端,3為同相輸入端;引腳5為輸出端;引腳6和4分別為電源和地;引腳1和8為電壓增益設定端;使用時在引腳7和地之間接旁路電容,通常取10f。查lm386的電源電壓4-12v或5-18v(lm386n-4);靜態(tài)消耗電流為4ma;電壓增益為20-200db;在1、8腳開路時,帶寬為300khz;輸入阻抗為50k;音頻功率0.5w。盡管lm386的應用非常簡單,但稍不注意,特別是器件上電、斷電瞬間,甚至工作穩(wěn)定后

11、,一些操作(如插拔音頻插頭、旋音量調節(jié)鈕)都會帶來的瞬態(tài)沖擊,在輸出喇叭上會產生非常討厭的噪聲。2.4 音頻功放電路 該設計使用國家半導體公司的低壓音頻功率放大器lm386來實現音頻功放電路。其電路以及各參數如下圖圖2-6 lm386電路圖及各參數圖2-7 lm386應用圖3 系統(tǒng)軟件設計及說明本軟件設計關鍵是要實現一種由單片機控制的簡單音樂發(fā)生器,它由16個音節(jié)組成的的鍵盤,用戶可以根據樂譜在鍵盤上進行演奏,音樂發(fā)生器會根據用戶的彈奏,通過揚聲器將音樂播放出來。3.1 行列式鍵盤識別為了降低成本采用非編碼鍵盤。非編碼鍵盤:鍵盤只簡單地提供按鍵開關的行列矩陣。有關按鍵的識別、鍵碼的確定與輸入、

12、去抖動等功能均由軟件完成。鍵盤接口必須具有去抖動、防串鍵、按鍵識別和鍵碼產生4個基本功能。 (1)去抖動:每個按鍵在按下或松開時,都會產生短時間的抖動。抖動的持續(xù)時間與鍵的質量相關,一般為520mm。所謂抖動是指在識別被按鍵是必須避開抖動狀態(tài),只有處在穩(wěn)定接通或穩(wěn)定斷開狀態(tài)才能保證識別正確無誤。去抖問題可通過軟件延時或硬件電路解決。 (2)防串鍵:防串鍵是為了解決多個鍵同時按下或者前一按鍵沒有釋放又有新的按鍵按下時產生的問題。常用的方法有雙鍵鎖定和n鍵輪回兩種方法。雙鍵鎖定,是當有兩個或兩個以上的按鍵按下時,只把最后釋放的鍵當作有效鍵并產生相應的鍵碼。n鍵輪回,是當檢測到有多個鍵被按下時,能根

13、據發(fā)現它們的順序依次產生相應鍵的鍵碼。 (3)被按鍵識別:如何識別被按鍵是接口解決的主要問題,一般可通過軟硬結合的方法完成。常用的方法有行掃描法和線反轉法兩種。行掃描法的基本思想是,由程序對鍵盤逐行掃描,通過檢測到的列輸出狀態(tài)來確定閉合鍵,為此,需要設置入口、輸出口一個,該方法在微機系統(tǒng)中被廣泛使用。線反轉法的基本思想是通過行列顛倒兩次掃描來識別閉合鍵,為此需要提供兩個可編程的雙向輸入/輸出端口。 (4)鍵碼產生:為了從鍵的行列坐標編碼得到反映鍵功能的鍵碼,一般在內存區(qū)中建立一個鍵盤編碼表,通過查表獲得被按鍵的鍵碼。3.2 音樂發(fā)生3.2.1 音樂相關知識樂音聽起來有的高,有的低,這就叫音高,

14、音高是由發(fā)音物體振動頻率的高低決定的,頻率高聲音就高,頻率低聲音就低,不同音商的樂音是用c、d、e、f、g、a、b表示的,這7個字母就是樂音的音名,它們一般依次唱成do、re、mi、fa、so、la、si,這是唱曲時樂音的發(fā)音,所以叫唱名。音持續(xù)時間的長短即時值,一般用拍數表示,休止符表示暫停發(fā)音。一首音樂是由許多不同的音符組成的,而每個音符對應著不同的頻率,這樣就可以利用不同頻率的組合,加以與拍數對應的延時,構成音樂。3.2.2 如何用單片機實現音樂的頻率 一首音樂是許多不同的音階組成的,而每個音階對應著不同的頻率,這樣我們就可以利用不同的頻率的組合,即可構成我們所想要的音樂了,當然對于單片

15、機來產生不同的頻率非常方便,我們可以利用單片機的定時/計數器t0來產生這樣方波頻率信號,因此,我們只要把一首歌曲的音階對應頻率關系弄正確即可。利用定時器計時半周期時間,每當計時終止后就將p1.0反相,然后重復計時再反相。就可在p1.0引腳上得到此頻率的脈沖。我們要為音符建立一個表格,單片機通過查表的方式來獲得相應的數據。根據所建表我們可以給4*4鍵盤每個按鍵賦予音階對應的頻率。單片機12mhz晶振,高中低音符與計數t0相關的計數值如表3-1所示表3-1 頻率表音符頻率(hz)計數值(t值)音符頻率(hz)計數值(t值)低1do26263628#4fa#74064860#1do#27763737

16、中5so78464898低2re29463835#5so#83194934#2re#31163928中6la88064968低3mi33064021#6la#93264994低4fa34964103中7si96865030#4fa#37064185低1do104665058低so39264260#1do#110965085#5so#41564331高2re117565110低6la44064400#2re#124565134#6la#46664463高3mi131865157低7si49464524高4fa139765178中1do52364580#4fa#149065198#1do#5546

17、4633高5so156865217中2re58764633#5so#166165235#2re#62264884高6la176065252中3mi65964732#6la#186565268中4fa69864820高7si196765283表3-2 曲調曲調值delay曲調值delay調4/4125ms調4/462ms調3/4187ms調3/494ms調2/4250ms調2/4125ms對于不同的曲調我們也可以用單片機的另外一個定時/計數器來完成。在這個程序中用到了兩個定時/計數器來完成的。其中t0用來產生音符頻率,t1用來產生音拍。圖3-1 音樂發(fā)聲程序框圖3.3 系統(tǒng)總體功能流程圖 該程序

18、設計思路比較清晰既從開始到聲明變量與函數再到讀取按鈕開關,判斷是否按下,然后就是一個一個按鈕的動作。其主程序流程圖如下: 圖3-2 主程序流程圖按鍵子程序流程圖如下圖3-3 按鍵子程序流程圖4 系統(tǒng)調試電路調試是整個系統(tǒng)功能否實現的關鍵步驟,我們將整個調試過程分為三大部分:硬件調試、軟件調試和綜合調試。4.1 硬件調試硬件調試主要是針對單片機部分進行調試。在上電前,先確保電路中不在斷路或短路情況,這一工作是整個調試工作的第一步,也是非常重要的一個步驟。在這部分調試中主要使用的工具是萬用表,用來完成檢測電路中是否存在斷路或者短路情況等。注意焊點之間,確保焊點沒有短接在一起,同時注意焊點的美觀,確

19、保沒有開路以及短路的現象出現。在確保硬件電路正常,無異常情況(斷路或短路)方可上電調試,上電調試的目的是檢驗電路是否接錯,同時還要檢驗原理是否正確,在本次設計中,上電調試主要鍵盤單片機控制部分、和音頻轉換電路硬件調試。鍵盤單片機控制部分調試:上電后,隨機按動鍵盤可以發(fā)現各個按鍵對應的音正確。4.2 軟件調試調試主要方法和技巧:通常一個調試程序應該具備至少四種性能:跟蹤、斷點、查看變量、更改數值。整個程序是一個主程序調用各個子程序實現功能的過程,要使主程序和整個程序都能平穩(wěn)運行,各個模塊的子程序的正確與平穩(wěn)運行必不可少,所以在軟件調試的最初階段就是把各個子程序模塊進行分別調試??偨Y通過各方面努力

20、,本次課程設計任務完成,系統(tǒng)部分功能已實現。將程序燒入芯片,調試成功后,可任意彈奏自己想要的旋律。本設計通過制作電子琴,將幾個模塊很好的融合起來,對使用單片機設計簡易電子琴進行了分析,并介紹了基于單片機電子琴統(tǒng)硬件組成。利用單片機產生不同頻率來獲得我們要求的音階,最終可隨意彈奏想要表達的音樂。說明一首音樂是許多不同的音階組成的,而每個音階對應著不同的頻率,這樣我們就可以利用不同的頻率的組合,即可構成我們所想要的音樂了,于是我們可以利用單片機的定時/計數器t0來產生這樣方波頻率信號,因此,我們只要把一首歌曲的音階對應頻率關系弄正確即可,然后我們利用功放電路來將音樂聲音放大,同時通過顯示模塊來確知自己所彈的音符。單片機技術實現了電子琴的微型化,使我們可以利用軟硬件實現電子琴

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論