簡易8按鍵電子琴設(shè)計(jì)實(shí)驗(yàn)_第1頁
簡易8按鍵電子琴設(shè)計(jì)實(shí)驗(yàn)_第2頁
簡易8按鍵電子琴設(shè)計(jì)實(shí)驗(yàn)_第3頁
簡易8按鍵電子琴設(shè)計(jì)實(shí)驗(yàn)_第4頁
簡易8按鍵電子琴設(shè)計(jì)實(shí)驗(yàn)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、電子琴系統(tǒng)設(shè)計(jì)設(shè)計(jì)要求設(shè)計(jì)一個簡易電子琴。用喇叭發(fā) 1、2、3、4、5、6、7、i。要求按下按鍵發(fā)聲,松開延時一段時間停止。中間再按別的鍵則發(fā)另一音調(diào)的聲音。鍵盤輸入功能。按鍵同時對應(yīng)指示燈點(diǎn)亮,按鍵結(jié)束,指示燈熄滅。方案設(shè)計(jì)1.音樂產(chǎn)生原理由于一首音樂是許多不同的音階組成的,而每個音階對應(yīng)著不同的頻率,這樣我們就可 以利用不同的頻率的組合,即可構(gòu)成我們所想要的音樂了,當(dāng)然對于單片機(jī)來產(chǎn)生不同的頻 率非常方便,我們可以利用單片機(jī)的定時/計(jì)數(shù)器T0來產(chǎn)生這樣方波頻率信號,因此,我們 只要把一首歌曲的音階對應(yīng)頻率關(guān)系弄正確即可。本次設(shè)計(jì)中單片機(jī)晶振為12MH Z,那么定時器的計(jì)數(shù)周期為1MHZ,假

2、如 選擇工作方式1,那T值便為T=216-5 * 105/相應(yīng)的頻率,那么根據(jù)不同的頻 率計(jì)算出應(yīng)該賦給定時器的計(jì)數(shù)值,列出不同音符與單片機(jī)計(jì)數(shù)T0相關(guān)的計(jì)數(shù) 值如下表所示:按鍵音階參數(shù)S1中音do108S2中音re102S3中音mi91S4中音fa86S5中音so77S6中音la68S7中音xi61S8高音do57方案設(shè)計(jì)方案一:采用CPLD外接揚(yáng)聲器、鍵盤、數(shù)碼管等。8個譯碼輸出顯示的數(shù)碼管,以顯示目標(biāo)芯片的32位輸出信號,且8個發(fā)光管也能顯示目標(biāo)器件的8位輸出信號。時鐘為50MHz,輸出接揚(yáng)聲器。具體過程:主系統(tǒng)可由兩個模塊組成:當(dāng)系統(tǒng)檢測到有按鍵按下時,對應(yīng)音 符的頻率由模塊1獲得,這

3、是一個數(shù)控分頻器。由其clk端輸入一具有較高頻率 的信號,分頻后輸出。音符的持續(xù)時間須根據(jù)樂曲的速度及每個音符的節(jié)拍數(shù)決定,模塊2的功能 是為模塊1提供決定所發(fā)音的分頻預(yù)置值,而此數(shù)在模塊1輸入口停留的時間即 為此音符的節(jié)拍值。(2)方案二:采用單片機(jī)外接揚(yáng)聲器、鍵盤、數(shù)碼管等。具體過程:當(dāng)系統(tǒng)掃描到鍵盤上有鍵子被按下,則快速檢測出是那一個鍵子, 然后單片機(jī)的定時器被啟動,發(fā)出一定頻率的脈沖,該頻率的脈沖經(jīng)喇叭驅(qū)動電 路放大濾波后,就會發(fā)出相應(yīng)的音調(diào)。如果在前一個按下的鍵發(fā)聲的同時有另一 個鍵被按下,則啟用中斷系統(tǒng),前面鍵的發(fā)音停止,轉(zhuǎn)到后按的鍵的發(fā)音程序, 發(fā)出后按的鍵的音。方案選擇對比兩套

4、方案各有優(yōu)缺點(diǎn),方案一采用CPLD,工作速度快,系統(tǒng)穩(wěn)定,效 果好,但是其價格昂貴;而方案二在設(shè)計(jì)這樣小型電子系統(tǒng)方面,無論是效果還 是工作速度與方案一都相差不大,而且價格較為便宜。因此,選擇方案二即單片 機(jī)加外設(shè)的方式設(shè)計(jì)該系統(tǒng)較好。系統(tǒng)硬件設(shè)計(jì)根據(jù)設(shè)計(jì)題目要求,該系統(tǒng)需要涉及如下幾個方面:(1)電源部分(2)單片機(jī)部分(3)音頻功放部分(4)揚(yáng)聲器、鍵盤及LED指示燈部分電源部分設(shè)計(jì)由于本系統(tǒng)構(gòu)造簡單,不宜使用自制或者購買的5v穩(wěn)壓電源,采用三節(jié)5 號電池供電即可。單片機(jī)部分設(shè)計(jì)根據(jù)本系統(tǒng)的特點(diǎn),采用AT89C51單片機(jī)即可完成全部功能。AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存

5、儲器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低電壓,高性能 CMOS8 位微 處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲 器的單片機(jī)。單片機(jī)的可擦除只讀存儲器可以反復(fù)擦除 100次。該器件采用 ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸 出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL 的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C單 片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方

6、案。AT89C51單片 機(jī)引腳圖見下圖:ITTfEXPl 1 1 pJ 1 P】3 Pl 4 ?L5 PI 6 PL.T ITTfEXPl 1 1 pJ 1 P】3 Pl 4 ?L5 PI 6 PL.T KSTTXDiTJ 11 trrrwwi IhTTLMJi 1WP3 4 1W3.5JCTAL1 JCTALI v&sAmen 1單片機(jī)引角源TOCPOIADCI* l/ADlPOl/AIBMJ/ADSPO4AEMn*| PQ.7/ADTEAJVFFL5/A13:3MHLAALQP2.WAB主要特性與MCS-51兼容4K字節(jié)可編程閃爍存儲器壽命:1000寫/擦循環(huán)數(shù)據(jù)保留時間:10年全靜態(tài)工作

7、:0Hz-24Hz三級程序存儲器鎖定128*8位內(nèi)部RAM32可編程I/O線兩個16位定時器/計(jì)數(shù)器5個中斷源可編程串行通道低功耗的閑置和掉電模式片內(nèi)振蕩器和時鐘電路管腳說明VCC :供電電壓。GND:接地。P0 口: P0 口為一個8位漏級開路雙向I/O 口,每腳可吸收8TTL門電流。 當(dāng)P1 口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù) 存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0 口作為原 碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時,P0輸出原碼,此時P0外部必須被拉高。P1 口: P1 口是一個內(nèi)部提供上拉電阻的8位雙向I/O 口,P1 口緩沖器能 接收

8、輸出4TTL門電流。P1 口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入, P1 口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH 編程和校驗(yàn)時,P1 口作為第八位地址接收。P2 口: P2 口為一個內(nèi)部上拉電阻的8位雙向I/O 口,P2 口緩沖器可接收, 輸出4個TTL門電流,當(dāng)P2 口被寫“1時,其管腳被內(nèi)部上拉電阻拉高,且作 為輸入。并因此作為輸入時,P2 口的管腳被外部拉低,將輸出電流。這是由于 內(nèi)部上拉的緣故P2 口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行 存取時,P2 口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng) 對外部八位地址數(shù)據(jù)存

9、儲器進(jìn)行讀寫時,P2 口輸出其特殊功能寄存器的內(nèi)容。 P2 口在FLASH編程和校驗(yàn)時接收高八位地址信號和控制信號。P3 口: P3 口管腳是8個帶內(nèi)部上拉電阻的雙向I/O 口,可接收輸出4個 TTL門電流。當(dāng)P3 口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為 輸入,由于外部下拉為低電平,P3 口將輸出電流(ILL)這是由于上拉的緣故。P3 口也可作為AT89C51的一些特殊功能口,如下表所示: 口管腳備選功能P3.0 RXD (串行輸入口)P3.1 TXD (串行輸出口)P3.2 /INT0 (外部中斷0)P3.3 /INT1 (外部中斷1)P3.4 T0 (記時器0外部輸入)P

10、3.5 T1 (記時器1外部輸入)P3.6 /WR (外部數(shù)據(jù)存儲器寫選通)P3.7 /RD (外部數(shù)據(jù)存儲器讀選通)P3 口同時為閃爍編程和編程校驗(yàn)接收一些控制信號。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高 電平時間。ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地 位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不 變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外 部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時, 將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR

11、8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉 高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每 個機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN 信號將不出現(xiàn)。/EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲器 (0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將 內(nèi)部鎖定為RESET; 當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH 編程期間,此引腳也用于施加12V編程電源(VPP)。

12、XTAL1 :反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2 :來自反向振蕩器的輸出。(3)振蕩器特性XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置 為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件, XTAL2應(yīng)不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外 部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。芯片擦除整個PEROM陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并 保持ALE管腳處于低電平10ms來完成。在芯片擦操作中,代碼陣列全被寫“1” 且在任何非空存儲字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行

13、。此外,AT89C51設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩 種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時器,計(jì) 數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振 蕩器,禁止所用其他芯片功能,直到下一個硬件復(fù)位為止。音頻功放部分設(shè)計(jì)音頻功放部分可用一片LM386來對信號進(jìn)行放大在輸入揚(yáng)聲器發(fā)聲。LM386是美國國家半導(dǎo)體公司生產(chǎn)的音頻功率放大器,主要應(yīng)用于低電壓 消費(fèi)類產(chǎn)品。為使外圍元件最少,電壓增益內(nèi)置為20。但在1腳和8腳之間增 加一只外接電阻和電容,便可將電壓增益調(diào)為任意值,直至200。輸入端以地位 參考,同時輸出端被自動偏置到

14、電源電壓的一半,在6V電源電壓下,它的靜態(tài) 功耗僅為24mW,使得LM386特別適用于電池供電的場合。LM386的封裝形式有塑封8引線雙列直插式和貼片式。下圖為LM386芯片 引腳圖:132734IRtt其他部分設(shè)計(jì)由該系統(tǒng)特點(diǎn)及設(shè)計(jì)要求可知,LED、外擴(kuò)鍵盤及揚(yáng)聲器用手邊能找到的型 號即可。電路原理設(shè)計(jì)1.系統(tǒng)原理框圖鍵盤輸入音頻信號輸出LED指示燈輸 出鍵盤輸入音頻信號輸出LED指示燈輸 出2.電路原理圖該系統(tǒng)硬件單路由AT89C51單片機(jī)、鍵盤電路、LM386音頻功放電路、擴(kuò) 展電路及揚(yáng)聲器發(fā)生組組成。具體原理圖如下:VCCR?.RES2ELECRO1C4hdC?ELETRO1VCCRE

15、S2423410uD2Z ZIN- PIN+CCGODT8765土 C?LSLM86RES2I ELECRD1-pc?CAPC2Y1 11.0592MSIEAKERD1VCCR?.RES2ELECRO1C4hdC?ELETRO1VCCRES2423410uD2Z ZIN- PIN+CCGODT8765土 C?LSLM86RES2I ELECRD1-pc?CAPC2Y1 11.0592MSIEAKERD14D2-2D33D4-4D5-5D6-6D7-7D8-843-C42-0VCC31KEX119X2184541K47-C46-CR1P10POOP11P01P12P02P13P03P14PO4P

16、15P05P16P05P17P07INT1P23INTOP21P22T1P23TOP24一P25EA/VPP25P27X1X2RESETRXDTXDRDALE/WRPJEN39-38耳-6-3534333228212232440S4130.29-一%驅(qū)動程序設(shè)計(jì)該系統(tǒng)驅(qū)動程序由主程序,發(fā)聲程序以及延時程序構(gòu)成。1.程序:/* panio.c -電子琴設(shè)計(jì)*/#includeSbit speaker=P3#includeSbit speaker=P3A0;Sbit led=P1;Unsigned char keys;包含reg51.h文件聲明喇叭位置聲明指示燈位置聲明變量/*聲明音階數(shù)組-Do

17、Re Mi Fa So La Si Do# */ unsigned char freq=108,102,91,86,77,68,61,57;void sound(unsigned char);聲明發(fā)聲函數(shù)void delay(unsigned char);聲明延遲函數(shù)/=主程序=/main()主程序開始P2=0 xff;將P2規(guī)劃成輸入口while(1)/while 循環(huán) keys=P2;讀取按鈕switch(keys)判斷 case 0 x01:sound(0);led=0 x01;break;按下S1,發(fā)Do音,同時對應(yīng)指示燈亮case 0 x02:sound(1);led=0 x02;c

18、ase 0 x04:sound(2);led=0 x04;break;按下S3,發(fā)Mi音,同時對應(yīng)指示燈亮case 0 x08:sound(3);led=0 x08;break;按下S4,發(fā)Fa音,同時對應(yīng)指示燈亮case 0 x10:sound(4);led=0 x10;break;按下S5,發(fā)So音,同時對應(yīng)指示燈亮case 0 x20:sound(5);led=0 x20;break;按下S6,發(fā)La音,同時對應(yīng)指示亮case 0 x40:sound(6);led=0 x40;break;/按下S7,發(fā)Si音,同時對應(yīng)指示燈亮case 0 x80:sound(7);led=0 x80;Led=0 x00;/=發(fā)聲函數(shù)void sound(unsi

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論