單片機(jī)課程設(shè)計(jì)
《單片機(jī)課程設(shè)計(jì)》由會(huì)員分享,可在線閱讀,更多相關(guān)《單片機(jī)課程設(shè)計(jì)(17頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、單片機(jī)課程設(shè)計(jì) 大慶石油學(xué)院課程設(shè)計(jì) 課程單片課程設(shè)計(jì) 題目簡(jiǎn)易電子琴設(shè)計(jì) 院系電氣信息工程學(xué)院測(cè)控系 專業(yè)班級(jí)測(cè)控技術(shù)與儀器專業(yè)06-1班 學(xué)生姓名劉潔 學(xué)生學(xué)號(hào)060601240105 指導(dǎo)教師曹廣華宋金波 2009年7 月17 日 大慶石油學(xué)院課程設(shè)計(jì)任務(wù)書 課程單片機(jī)課程設(shè)計(jì) 題目簡(jiǎn)易電子琴設(shè)計(jì) 專業(yè)測(cè)控技術(shù)與儀器姓名劉潔學(xué)號(hào)060601240105 一、任務(wù) 設(shè)計(jì)一個(gè)基于AT89C51單片機(jī)的簡(jiǎn)易電子琴。 二、設(shè)計(jì)要求 [1] 利用所給鍵盤的八個(gè)鍵,能夠發(fā)出8個(gè)不同的音調(diào),并且要求按下按鍵發(fā)聲,松開延時(shí)一段時(shí)間停止,中間再按別的鍵則發(fā)另一音調(diào)的聲音。
2、 [2] 當(dāng)系統(tǒng)掃描到鍵盤上有鍵被按下,則快速檢測(cè)出是哪一個(gè)鍵被按下,然后單片機(jī)的定時(shí)器被啟動(dòng),發(fā)出一定頻率的脈沖,該頻率的脈沖經(jīng)喇叭驅(qū)動(dòng)電路放大濾波后,就會(huì)發(fā)出相應(yīng)的音調(diào)。如果在前一個(gè)按下的鍵發(fā)聲的同時(shí)有另一個(gè)鍵被按下,則啟用中斷系統(tǒng),前面鍵的發(fā)音停止,轉(zhuǎn)到后按的鍵的發(fā)音程序,發(fā)出后按的鍵的音。 三、參考資料 [1] 劉國鈞,陳紹業(yè),王鳳翥.圖書館目錄[M].北京:高等教育出版社,1957.15-18. [2] 劉潤華,劉立山.模擬電子技術(shù)[J].山東:石油大學(xué)出版社,2003. [3] 蘇成富.彩燈控制器[J].北京:電機(jī)電器技術(shù),2000,(01). [4] 祝富林.音樂彩燈電
3、路CS9482[J].北京:電子世界,1995,(12). [5] 彭介華.電子技術(shù)課程設(shè)計(jì)指導(dǎo)[J].北京:高等教育出版社,1997. 完成期限 2009.7.6至2009.7.17 指導(dǎo)教師曹廣華宋金波 專業(yè)負(fù)責(zé)人曹廣華 2009年 7 月 6 日 目錄 1 引言 (3) 1.1電子琴概述 (3) 1.2電子琴技術(shù)狀況 (3) 1.3本設(shè)計(jì)任務(wù) (4) 2 總體方案論證與設(shè)計(jì) (5) 2.1 播放模塊 (5) 2.2按鍵控制模塊 (5) 2.3總體硬件組成框圖 (5) 3 系統(tǒng)硬件設(shè)計(jì) (6) 3.1 中心控制模塊的硬件設(shè)計(jì) (6) 3.2 播放模塊的硬件
4、設(shè)計(jì) (6) 3.3 按鍵控制模塊的硬件設(shè)計(jì) (6) 4 系統(tǒng)的軟件設(shè)計(jì) (8) 4.1 下位機(jī)軟件流程 (8) 4.2上位機(jī)軟件 (9) 5 系統(tǒng)調(diào)試與測(cè)試結(jié)果分析 (11) 5.1 使用的儀器儀表 (11) 5.2 系統(tǒng)調(diào)試 (11) 5.3 測(cè)試結(jié)果 (11) 總結(jié) (12) 參考文獻(xiàn) (13) 附錄1 (14) 附錄2 (16) 課程設(shè)計(jì)成績(jī)?cè)u(píng)價(jià)表. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1 引言 在電子音樂領(lǐng)域,自從20世紀(jì)末期MIDI(樂器數(shù)字化接口)推出和逐步
5、規(guī)范化后,各種樂器及眾多數(shù)碼音視頻產(chǎn)品中采用MIDI技術(shù)已逐漸成為一種潮流。但是當(dāng)前各廠商的電子琴產(chǎn)品通常使用自己設(shè)計(jì)的專用音源,并且軟硬件均不對(duì)外公開,阻礙了MIDI技術(shù)的交流。作者在開發(fā)基于MIDI模塊的音樂發(fā)生器的過程中,進(jìn)行了用單片機(jī)控制通用MIDI音源模塊的相關(guān)功能制作電子琴的實(shí)踐,制作出具有8個(gè)按鍵的 MIDI電子琴,該琴支持單音和復(fù)音彈奏,單片機(jī)以標(biāo)準(zhǔn)的MIDI波特率傳送信息,通過串口連接蜂鳴器,從而獲得優(yōu)美的樂音。 1.1電子琴概述 鍵盤樂器,采用半導(dǎo)體集成電路,對(duì)樂音信號(hào)進(jìn)行放大,通過揚(yáng)聲器產(chǎn)生音響。發(fā)音音量可以自由調(diào)節(jié)。音域較寬,和聲豐富,甚至可以演奏出一個(gè)管弦樂隊(duì)的效
6、果,表現(xiàn)力極其豐富。它還可模仿多種音色,甚至可以奏出常規(guī)樂器所無法發(fā)出的聲音(如人聲,風(fēng)雨聲等)。另外,電子琴在獨(dú)奏時(shí),還可隨意配上類似打擊樂音響的節(jié)拍伴奏,適合于演奏節(jié)奏性較強(qiáng)的現(xiàn)代音樂。另外,電子琴還安裝有混響、回聲、延長音、震音和顫音等多項(xiàng)功能裝置,表達(dá)各種情緒時(shí)運(yùn)用自如。 電子琴是電聲樂隊(duì)的中堅(jiān)力量,常用于獨(dú)奏主旋律并伴以豐富的和聲。還常作為獨(dú)奏樂器出現(xiàn),具有鮮明時(shí)代特色。但電子琴的局限性也十分明顯:旋律與和聲缺乏音量變化,過于協(xié)和、單一;在模仿各類管、弦樂器時(shí),音色還不夠逼真,模仿提琴類樂器的音色時(shí),失真度更大,還需要不斷改進(jìn)。電子琴的演奏有較大一部分是通過自動(dòng)和弦伴奏來配合完成的
7、,在音樂中和弦的連接推動(dòng)了旋律地進(jìn)行,不同的和聲連接,形成了不同的音樂色彩。 1.2電子琴技術(shù)狀況 本次設(shè)計(jì)提出了用AT89C51單片機(jī)為核心控制元件,設(shè)計(jì)一個(gè)簡(jiǎn)易的電子琴. 本方案以AT89C51單片機(jī)作為主控核心,與鍵盤、揚(yáng)聲器等模塊組成核心主控制模塊在主控模塊上設(shè)有16個(gè)按鍵和揚(yáng)聲器.根據(jù)使用者的操作隨意彈奏 想要表達(dá)的音樂。一首音樂是許多不同的音階組成的,而每個(gè)音階對(duì)應(yīng)著不同的頻率,這樣我們就可以利用不同的頻率的組合,即可構(gòu)成我們所想要的音樂了,當(dāng)然對(duì)于單片機(jī)來產(chǎn)生不同的頻率非常方便,我們可以利用單片機(jī)的定時(shí)/計(jì)數(shù)器T0來產(chǎn)生這樣方波頻率信號(hào)。 1.3本設(shè)計(jì)任務(wù) 利用所給鍵盤
8、的1,2,3,4,5,6,7,8八個(gè)鍵,能夠發(fā)出8個(gè)不同的音調(diào),并且要求按下按鍵發(fā)聲,松開延時(shí)一段時(shí)間停止,中間再按別的鍵則發(fā)另一音調(diào)的聲音。當(dāng)系統(tǒng)掃描到鍵盤上有鍵被按下,則快速檢測(cè)出是哪一個(gè)鍵被按下,然后單片機(jī)的定時(shí)器被啟動(dòng),發(fā)出一定頻率的脈沖,該頻率的脈沖經(jīng)喇叭驅(qū)動(dòng)電路放大濾波后,就會(huì)發(fā)出相應(yīng)的音調(diào)。如果在前一個(gè)按下的鍵發(fā)聲的同時(shí)有另一個(gè)鍵被按下,則啟用中斷系統(tǒng),前面鍵的發(fā)音停止,轉(zhuǎn)到后按的鍵的發(fā)音程序,發(fā)出后按的鍵的音。 2 總體方案論證與設(shè)計(jì) 本系統(tǒng)采用單片機(jī)AT89C51為電子琴的控制核心,系統(tǒng)主要包括播放模塊、按鍵控制模塊。下面對(duì)各模塊的設(shè)計(jì)逐一進(jìn)行論證比較。 2.1 播放模
9、塊 播放模塊是喇叭構(gòu)成。它幾乎不存在噪聲,音響效果較好。而且由于所需驅(qū)動(dòng)功率較小,且價(jià)格低廉,所以,被廣泛應(yīng)用。 2.2按鍵控制模塊 電子琴設(shè)有8個(gè)按鍵,其中7個(gè)作為音符輸入,另外1個(gè)作為模式轉(zhuǎn)換按鍵,實(shí)現(xiàn)用戶自彈作曲。7個(gè)按鍵分別代表7個(gè)音符,包括中音段的全部音符。通過軟硬件設(shè)計(jì),模式轉(zhuǎn)換按鍵觸發(fā)外部中斷,中斷使程序跳轉(zhuǎn),實(shí)現(xiàn)模式轉(zhuǎn)換,啟動(dòng)電子琴。然后通過查詢電子琴所按下的按鍵,讀取電子琴輸入狀態(tài),跳轉(zhuǎn)到對(duì)應(yīng)的程序人口,實(shí)現(xiàn)自編歌曲。當(dāng)需要取消電子琴編曲功能時(shí),再次按下模式轉(zhuǎn)換按鍵引起外部中斷.即可退出電子琴功能而返回原來按鍵播放處。 2.3總體硬件組成框圖 圖2-1 總體硬件組成
10、框圖 3 系統(tǒng)硬件設(shè)計(jì) 為使該模塊化電子琴控制系統(tǒng)具有更加方便和靈活性,我們對(duì)系統(tǒng)的硬件做了精心設(shè)計(jì)。硬件電路包括中心控制模塊、播放模塊、按鍵控制模塊三大模塊。 3.1 中心控制模塊的硬件設(shè)計(jì) 本次設(shè)計(jì)中中心控制模塊是采用AT89C51單片機(jī)來控制整個(gè)系統(tǒng)。其中P1口作為輸入口,連接蜂鳴器驅(qū)動(dòng)電路,而P2口連接按鍵控制電路,從而實(shí)現(xiàn)播放音樂的功能。 3.2 播放模塊的硬件設(shè)計(jì) 如下圖所示,播放模塊其實(shí)就是喇叭,它接到P1.0口上當(dāng)有按鍵按下時(shí),它就會(huì)發(fā)出聲音.. 圖 3-1 播放模塊硬件連接圖 3.3 按鍵控制模塊的硬件設(shè)計(jì) 在P.2口十連有8個(gè)按鍵并加有8個(gè)拉電阻.它們一端
11、接5伏電源,一端接地.在仿真時(shí),只要有一個(gè)鍵被按下,并被單片機(jī)掃描到,則會(huì)使播放器發(fā)出聲音. 圖 3-2按鍵控制連接圖圖3-2按鍵控制電路圖 4 系統(tǒng)的軟件設(shè)計(jì) 軟件是該電子琴控制系統(tǒng)的重要組成部分,在系統(tǒng)的軟件設(shè)計(jì)中我們也才用了模塊化設(shè)計(jì),將系統(tǒng)的各部分功能編寫成子模塊的形式,這樣增強(qiáng)了系統(tǒng)軟件的可讀性和可移植性。 4.1 下位機(jī)軟件流程 本系統(tǒng)中下位機(jī)(單片機(jī)89C51)的主要功能就是實(shí)現(xiàn)音樂播放功能。其主程序流程如圖4-1所示。 圖4-1 軟件程序流程圖 4.2上位機(jī)軟件 本系統(tǒng)的上位機(jī)軟件主要是編輯電子琴播放狀態(tài)的內(nèi)容,在設(shè)計(jì)中采用匯編語言編寫了電子琴控制系統(tǒng)控制和播放
12、內(nèi)容的程序。 ORG 0000H LJMP MAIN ORG 000BH LJMP INT_T0 ORG 0100H MAIN: MOV SP,#60H ;初始化堆棧指針 MOV 30H,#00 ;定時(shí)器初值清零 MOV 31H,#00 MOV P1,#0FFH ;設(shè)置P1口為輸入模式 MOV TMOD,#01H ;設(shè)置定時(shí)器0為工作模式1 SETB ET0 ;開定時(shí)器0中斷 SETB EA ;開總中斷 CLR TR0 ;關(guān)閉定時(shí)器0 START: MOV R0, P2 CJNE R0,#0FFH,KEY1 ;鍵盤掃描 CLR TR0 SJMP START
13、 KEY1: CJNE R0,#0FEH,KEY2 ;K1鍵按下 MOV 30H,#0FBH ;設(shè)置音階1 MOV 31H,#0E9H LJMP SET_TIMER KEY2: CJNE R0,#0FDH,KEY3 ;K2鍵按下 MOV 30H,#0FCH ;設(shè)置音階2 MOV 31H,#5CH LJMP SET_TIMER KEY3: CJNE R0,#0FBH,KEY4 ;K3鍵按下 MOV 30H,#0FCH ;設(shè)置音階3 MOV 31H,#0C1H LJMP SET_TIMER KEY4: CJNE R0,#0F7H,KEY5 ;K4鍵按下 MOV
14、30H,#0FCH ;設(shè)置音階4 MOV 31H,#0EFH LJMP SET_TIMER KEY5: CJNE R0,#0EFH,KEY6 ;K5鍵按下 MOV 30H,#0FDH ;設(shè)置音階5 MOV 31H,#045H LJMP SET_TIMER KEY6: CJNE R0,#0DFH,KEY7 ;K6鍵按下 MOV 30H,#0FDH ;設(shè)置音階6 MOV 31H,#92H LJMP SET_TIMER KEY7: CJNE R0,#0BFH,KEY8 ;K7鍵按下 MOV 30H,#0FDH ;設(shè)置音階7 MOV 31H,#0D6H LJMP SE
15、T_TIMER KEY8: CJNE R0,#7FH,NOKEY ;K8按下 MOV 30H,#0FDH ;設(shè)置音階8 MOV 31H,#0FBH SET_TIMER: SETB TR0 ;發(fā)聲 SJMP START NOKEY: CLR TR0 ;無鍵按下 SJMP START INT_T0: ;T0中斷服務(wù)程序MOV TH0,30H ;定時(shí)器賦初值 MOV TL0,31H CPL P1.0 ;輸出方波 RETI END 5 系統(tǒng)調(diào)試與測(cè)試結(jié)果分析 5.1 使用的儀器儀表 單片機(jī)仿真器KEILC 蜂鳴器 LS1 5.2 系統(tǒng)調(diào)試 根據(jù)系統(tǒng)設(shè)計(jì)方案,本
16、系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試和軟硬件聯(lián)調(diào)。由于在系統(tǒng)設(shè)計(jì)中采用模塊設(shè)計(jì)法,所以方便對(duì)各電路模塊功能進(jìn)行逐級(jí)測(cè)試:中心控制模塊的調(diào)試,音樂播放模塊的調(diào)試,按鍵控制模塊的調(diào)試等,最后將各模塊組合后進(jìn)行整體測(cè)試。 5.2.1硬件調(diào)試 對(duì)各個(gè)模塊的功能進(jìn)行調(diào)試,主要調(diào)試各模塊能否實(shí)現(xiàn)指定的功能。 5.2.2軟件調(diào)試 軟件調(diào)試采用單片機(jī)仿真器KEILC及微機(jī),將編好的程序進(jìn)行調(diào)試,主要是檢查語法錯(cuò)誤。 5.2.3硬件軟件聯(lián)調(diào) 將調(diào)試好的硬件和軟件進(jìn)行聯(lián)調(diào),主要調(diào)試系統(tǒng)的實(shí)現(xiàn)功能。 5.3 測(cè)試結(jié)果 此次系統(tǒng)設(shè)計(jì)結(jié)果較好,分別播動(dòng)8個(gè)按鍵會(huì)發(fā)出8種高低不同的聲音,如果送入音
17、樂程序,則會(huì)播放歌曲。 總結(jié) 經(jīng)過兩周的忙碌,我的電子琴終于仿真成功.雖然失敗了幾次,但經(jīng)過老師對(duì)硬件連接圖的糾正,自己又調(diào)整.了程序最后終于方仿真成功.心情很激動(dòng),一方面:覺得很有成就感;另一方面:收獲很大,:不但鍛煉了編程的能力,而且通過編程對(duì)硬件的整個(gè)流程了解了。在仿真過程中,我犯了兩個(gè)低級(jí)錯(cuò)誤:一個(gè)是用了沒有模型的元件,另一個(gè)是喇叭可以不用驅(qū)動(dòng)就能發(fā)出聲音。經(jīng)老師提醒,我改正了連接圖。結(jié)果成功了。用單片機(jī)控制播放模塊和按鍵控制模塊制作出的電子琴,結(jié)構(gòu)簡(jiǎn)單,可靠性高,并且價(jià)格低廉,具有實(shí)用的價(jià)值。這種電子琴能夠支持單音和復(fù)音彈奏,如果與高品質(zhì)的音源芯片連接,音質(zhì)更可與高檔電子琴相媲美
18、。 參考文獻(xiàn) [1] 張毅剛,彭喜元。單片機(jī)原理與應(yīng)用[M](十)北京:高等教育出版社,2007.10 [2] 張毅剛。MCS-51單片機(jī)應(yīng)用設(shè)計(jì)[M]。哈爾濱。哈爾濱工業(yè)大學(xué)出版,1999 [3] 李廣弟。單片機(jī)基礎(chǔ)[M]。北京:北京航天航空大學(xué)出版社,2001 [4] 楊振江。智能儀器與數(shù)據(jù)采集系統(tǒng)的新器件及應(yīng)用[M]。西安:西安電子科技大學(xué)出版社,2001 [5] 彭介華.電子技術(shù)課程設(shè)計(jì)指導(dǎo)[J].北京:高等教育出版社,1997. 附錄1 源程序 ORG 0000H LJMP MAIN ORG 000BH LJMP INT_T0 ORG 0100H MAIN:
19、 MOV SP,#60H ;初始化堆棧指針 MOV 30H,#00 ;定時(shí)器初值清零 MOV 31H,#00 MOV P1,#0FFH ;設(shè)置P1口為輸入模式 MOV TMOD,#01H ;設(shè)置定時(shí)器0為工作模式1 SETB ET0 ;開定時(shí)器0中斷 SETB EA ;開總中斷 CLR TR0 ;關(guān)閉定時(shí)器0 START: MOV R0, P2 CJNE R0,#0FFH,KEY1 ;鍵盤掃描 CLR TR0 SJMP START KEY1: CJNE R0,#0FEH,KEY2 ;K1鍵按下 MOV 30H,#0FBH ;設(shè)置音階1 MOV 31H,#0E9
20、H LJMP SET_TIMER KEY2: CJNE R0,#0FDH,KEY3 ;K2鍵按下 MOV 30H,#0FCH ;設(shè)置音階2 MOV 31H,#5CH LJMP SET_TIMER KEY3: CJNE R0,#0FBH,KEY4 ;K3鍵按下 MOV 30H,#0FCH ;設(shè)置音階3 MOV 31H,#0C1H LJMP SET_TIMER KEY4: CJNE R0,#0F7H,KEY5 ;K4鍵按下 MOV 30H,#0FCH ;設(shè)置音階4 MOV 31H,#0EFH LJMP SET_TIMER KEY5: CJNE R0,#0EFH,
21、KEY6 ;K5鍵按下 MOV 30H,#0FDH ;設(shè)置音階5 MOV 31H,#045H LJMP SET_TIMER KEY6: CJNE R0,#0DFH,KEY7 ;K6鍵按下 MOV 30H,#0FDH ;設(shè)置音階6 MOV 31H,#92H LJMP SET_TIMER KEY7: CJNE R0,#0BFH,KEY8 ;K7鍵按下 MOV 30H,#0FDH ;設(shè)置音階7 MOV 31H,#0D6H LJMP SET_TIMER KEY8: CJNE R0,#7FH,NOKEY ;K8按下 MOV 30H,#0FDH ;設(shè)置音階8 MOV 31H,#0FBH SET_TIMER: SETB TR0 ;發(fā)聲 SJMP START NOKEY: CLR TR0 ;無鍵按下 SJMP START INT_T0: ;T0中斷服務(wù)程序MOV TH0,30H ;定時(shí)器賦初值 MOV TL0,31H CPL P1.0 ;輸出方波 RETI END 附錄2 電子琴仿真圖 圖6-1 電子琴仿真電路圖 大慶石油學(xué)院課程設(shè)計(jì)成績(jī)?cè)u(píng)價(jià)表 指導(dǎo)教師:年月日
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 某咨詢創(chuàng)業(yè)__奇正實(shí)業(yè)集團(tuán)有限公司戰(zhàn)略績(jī)效管理
- 廣西崇左市大新縣全茗鎮(zhèn)中學(xué)九年級(jí)語文上冊(cè) 第5課 敬業(yè)與樂業(yè)課件 (新版)新人教版
- 代時(shí)間管理FTF
- 學(xué)校常見傳染病防控知識(shí)課件
- 家具設(shè)計(jì)面料品牌畫冊(cè)
- 地基處理練習(xí)題
- 如何讓孩子有話說
- 抽樣誤差與假設(shè)檢驗(yàn)
- 中考數(shù)學(xué)專題復(fù)習(xí)專題提升五一次函數(shù)的圖象與性質(zhì)的應(yīng)用講義
- 人教版必修一2.4《勻變速直線運(yùn)動(dòng)的位移與速度的》課件
- 2光的衍射概述課件
- 工信版(中職)虛擬現(xiàn)實(shí)技術(shù)與應(yīng)用【03】1-3-8 虛擬現(xiàn)實(shí)立體顯示器電子課件
- 七年級(jí)語文下冊(cè) 《雪花的快樂》課件 鄂教版
- 自我認(rèn)知與時(shí)間管理
- 百分?jǐn)?shù)的意義與寫法