999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STM32單片機(jī)的無線電子琴系統(tǒng)設(shè)計

2023-03-20 08:05:46何健諾謝樹波曾敏羽
電腦迷 2023年23期
關(guān)鍵詞:單片機(jī)音樂設(shè)計

何健諾 謝樹波 曾敏羽

【摘? 要】 在1958年,我國就制造出了電子琴,訖今為止它的設(shè)計方法和發(fā)聲原理各種各樣,主要是利用單片機(jī)、PLC技術(shù)、EDA技術(shù)等發(fā)出聲音和控制音調(diào)?,F(xiàn)代的電子琴通常采用的是PCM技術(shù)進(jìn)行采樣音源,它依舊和以前的電子琴一樣內(nèi)置濾波器和振蕩器,靠同樣的原理來產(chǎn)生和使用音色。本研究設(shè)計的電子琴是一種能夠發(fā)出8種音階的小型、簡易的單片機(jī)電子琴。該系統(tǒng)設(shè)計是以STM32F103C8T6單片機(jī)為主控芯片,通過連接硬件電路和編寫程序來實現(xiàn)。該設(shè)計的特點(diǎn)是采用單片機(jī)的定時器相關(guān)寄存器輸出的值控制輸出PWM來發(fā)出不同音調(diào),實現(xiàn)升調(diào)降調(diào)、自動演奏,還可以演奏簡單的音樂。

【關(guān)鍵詞】 電子琴;STM32F103C8T6;定時器;PWM

一、系統(tǒng)總體設(shè)計

(一)系統(tǒng)總體框架設(shè)計

如今電子琴是通常采用PCM或者AWM技術(shù)采樣音源的形式來完成對傳統(tǒng)樂器的音色呈現(xiàn),一般的原理是先對樂器的聲音進(jìn)行采樣記錄,然后通過ADC數(shù)字化存儲在ROM中,再按鍵盤模仿所記錄的頻率回放聲音,用振蕩電路和濾波器形成各種音色。

事實上,音樂有一個穩(wěn)定的周期信號。該設(shè)計采用STM32F130C8T6的定時器進(jìn)行控制,在IO口輸出PWM信號產(chǎn)生聲音。利用按鍵控制選擇每次輸出的頻率,發(fā)出不同的音調(diào),這樣就可以制作出簡單的電子琴。該設(shè)計的電子琴在演奏方面要求的音色并不是很高,用單片機(jī)自身產(chǎn)生的一般頻率就可以滿足此次設(shè)計的基本要求。

對電子琴的電路功能進(jìn)行系統(tǒng)的解析,采取由上到下的設(shè)計理念,先從設(shè)計的整個結(jié)構(gòu)進(jìn)行研討,把整體設(shè)計的內(nèi)容進(jìn)行步驟詳細(xì)化,最終實行系統(tǒng)結(jié)構(gòu)的整體設(shè)計。該設(shè)計對電子琴系統(tǒng)的用途和優(yōu)劣并沒有十分精準(zhǔn)和完整的要求,系統(tǒng)的效果需求有基本的按鍵功能、自行進(jìn)行演奏功能、主動升調(diào)降調(diào)功能共3種。

(二)系統(tǒng)總體方案設(shè)計

1. 此次設(shè)計的無線電子琴還有音樂儲存功能,能夠自動彈奏存儲好的歌曲。通過編程把數(shù)首曲子的頻率編入系統(tǒng)中,按下設(shè)置的演奏按鈕,電子琴便能夠播放歌曲。

2. 設(shè)置相關(guān)按鍵。當(dāng)按鍵按下時,使用存儲好的一組音調(diào),這里存儲了兩組音調(diào),分別是低音和中音,通過查詢資料,可以得出都是不同頻率的do、re、mi、fa、so、la、si、do八個音調(diào)。

3. 設(shè)計的主要工作原理是利用STM32內(nèi)置的定時器TIM3產(chǎn)生一個PWM信號驅(qū)動揚(yáng)聲器產(chǎn)生特定頻率的聲音,通過改變定時器TIM3的分頻預(yù)置數(shù)改變PWM信號的頻率,從而產(chǎn)生不同音調(diào)的聲音,通過改變占空比,產(chǎn)生不同音量的聲音。

4. 用ST32F103C8T6來做核心控制,設(shè)計中運(yùn)用單片機(jī)的定時寄存器來產(chǎn)生PWM,然后把音調(diào)分別對應(yīng)不同的頻率信號,最后用無線激光進(jìn)行控制,通過揚(yáng)聲器進(jìn)行輸出。

5. 設(shè)計中用KEIL5進(jìn)行軟件的設(shè)計編寫,然后搭建硬件電路運(yùn)行,采取中斷系統(tǒng)和定時器對應(yīng)寄存器的原理掌握電子琴發(fā)聲的頻率,用編程語言實現(xiàn)樂曲演奏必須明確樂曲的音調(diào),通過它來演奏、播放音樂。

二、模塊化分析

(一)揚(yáng)聲器模塊

脈沖寬度調(diào)制(PWM)是英文Pulse Width Modulation的縮寫,簡稱脈寬調(diào)制,應(yīng)用未處理器的數(shù)字輸出來模擬電路進(jìn)行控制的一種技術(shù)。PWM的周期就是由定時器的自動重裝值和CNT計數(shù)頻率決定的,而CNT的計數(shù)時鐘是CK_PSC經(jīng)分頻器PSC得到,通過脈寬調(diào)制解決電子琴的發(fā)聲問題。

揚(yáng)聲器引腳是PB1。把PB1作為定時器通道,定時器作為單片機(jī)的重點(diǎn)難點(diǎn),定時器的溢出時間如下:

Tout=((arr+1)*(psc+1))/Tclk。

式中,Tout是溢出時間;psc(分頻系數(shù))決定數(shù)數(shù)字的快慢;arr為自動重裝值;Tclk為輸入時鐘頻率,設(shè)置頻率為72/(8+1)=8MHz。

頻率為arr,Tout=arr+1/8000000,而頻率是時間的倒數(shù),音調(diào)與頻率有關(guān),音調(diào)(頻率)用:Autoreload=(8000000/usFraq)-1方法自動重裝值。

因為人耳只能聽到大于20Hz小于20000Hz頻率的聲音,自動重裝值最大為65535,所以對應(yīng)值為122。為了防止有噪聲輸出,需要一個判斷頻率的函數(shù)。判斷輸入的頻率小于122Hz大于20000Hz頻率為靜音,使用語句TIM_SetCompare4(TIM3,0)來停止發(fā)聲。

(二)自動演奏模塊

每一段音樂都是不同頻率的聲音按照一定的時間節(jié)拍變換發(fā)出。演奏出音樂需要熟悉音樂的音調(diào)和節(jié)拍的信息。查閱到各首音樂的頻率和節(jié)拍。創(chuàng)建兩個數(shù)組AllBGM1[]和AllBGM2[]分別用來存放兩首音樂,里面存放的是音樂的頻率,當(dāng)自動演奏的時候就依次使用數(shù)組里的頻率,但演奏音樂時,每個音調(diào)需要節(jié)拍都不同,需要在每一次調(diào)用數(shù)組里面的頻率時就延時一段時間,音符節(jié)奏分為一拍、半拍、1/4拍、1/8拍,制作者設(shè)定一拍音符的時間為1,半拍為0.5,1/4拍為0.25,1/8拍為0.125……每個音符以這樣的拍子播放出來,音樂就完成了。用實驗板的KEY5和KEY6作為AllBGM1和AllBGM2的按鍵,KEY5或KEY6按下后,揚(yáng)聲器就可以開始自動演奏內(nèi)置音樂。

(三)激光頭傳感器模塊

設(shè)計中采用激光頭傳感器模塊KY-008作為無線電子琴的琴鍵。激光頭傳感器模塊KY-008,中間是正極,S是控制腳,工作電壓為5V,規(guī)格為15*24mm,光源波長為650nm,重量為2.2g。當(dāng)電路中的激光被物體擋住時,激光頭傳感器模塊就會輸出不同的電平,比傳統(tǒng)固定直接式按鍵更加靈敏,激光頭傳感器輸出電平信號接到單片機(jī)IO口,單片機(jī)識別之后就做出相應(yīng)的反應(yīng)。使用時更加簡便,觸摸激光線便能使電子琴發(fā)聲,保證了電子琴演奏的新穎性。

三、硬件設(shè)計

(一)激光頭傳感器電路設(shè)計

激光頭傳感器模塊KY-008作為琴鍵是無線電子琴,通過設(shè)計8個激光光傳感器作為8個音階,及8個激光發(fā)射端、8個激光信號接收端,電路設(shè)計如圖1所示。

(二)主控模塊電路設(shè)計

主控模塊采用STM32單片機(jī),主控單元的IO口接收激光信號,經(jīng)過程序判斷對應(yīng)IO口,輸出設(shè)定的PWM頻率信號,不同頻率信號對應(yīng)不同的Do-Re-Mi-Fa-Sol-La-Ti-Do音符,每個音符一個音節(jié),主控電路設(shè)計如圖2所示。

(三)輸出驅(qū)動模塊電路設(shè)計

輸出的揚(yáng)聲器使用TDA7279驅(qū)動,芯片TDA7279性能穩(wěn)定,屬于是立體聲雙橋式放大器,工作電壓范圍寬,驅(qū)動電路設(shè)計如圖3所示。

四、軟件設(shè)計

(一)低音/高音選擇程序設(shè)計

單片機(jī)下載完成后,初始化完成等待選擇模式,按下key1,進(jìn)入低音模式,按下key2,進(jìn)入高音模式,可以開始彈奏。低音,高音對應(yīng)的升調(diào)和降調(diào)程序。

u16 CL[8]={262,294,330,349,392,440,494,523};

u16 CM[8]={523,587,659,698,784,880,988,1047};

void play(u32 tone)

{switch(tone_level)

{case1:buzzerSound(CL[tone],1);break;

case2:buzzerSound(CM[tone],1);break;}}

if(KEY11_STA==KEY_DN)

{tone_level=2;}

if(KEY12_STA==KEY_DN)

{tone_level=1;}

創(chuàng)建兩個數(shù)組CL[]和CM[]分別用來存放低音和中音,里面存放的是各個音調(diào)的頻率,使用的時候就從數(shù)組里提取。用實驗板的KEY1(KEY11_STA)和KEY2(KEY12_STA)作為升調(diào)和降調(diào)的按鍵,在主函數(shù)中設(shè)置按鍵初始化,使用while函數(shù)掃描按鍵狀態(tài),用if函數(shù)判斷按鍵是否按下,KEY1或KEY1按下后,選用低音或高音。這樣就可以實現(xiàn)電子琴的升調(diào)和降調(diào)功能。

(二)程序流程圖設(shè)計

通過判斷無線激光器的線,使用while函數(shù)掃描激光頭傳感器模塊輸出狀態(tài),程序設(shè)計流程如圖4所示。

猜你喜歡
單片機(jī)音樂設(shè)計
基于單片機(jī)的SPWM控制逆變器的設(shè)計與實現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機(jī)的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機(jī)的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
瞞天過海——仿生設(shè)計萌到家
圣誕音樂路
兒童繪本(2017年24期)2018-01-07 15:51:37
設(shè)計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
音樂
Microchip推出兩個全新PIC單片機(jī)系列
音樂
主站蜘蛛池模板: 91亚瑟视频| 无码中文字幕乱码免费2| 在线免费亚洲无码视频| 国产日韩AV高潮在线| 国产欧美性爱网| 成人免费午夜视频| 中文字幕欧美成人免费| 久久综合九九亚洲一区| 黄色网页在线观看| 又爽又大又黄a级毛片在线视频| 亚洲日本韩在线观看| 国产亚洲精品97在线观看| 在线色国产| 欧美a在线| 丝袜亚洲综合| 亚欧成人无码AV在线播放| 久久毛片网| 国产在线无码一区二区三区| 91无码视频在线观看| 久久精品嫩草研究院| 国产在线八区| 亚欧美国产综合| 亚洲大尺度在线| 久久亚洲日本不卡一区二区| 国产高清不卡| 国内精品手机在线观看视频| 国产亚洲男人的天堂在线观看| 国产乱视频网站| 91视频区| 午夜老司机永久免费看片| 中文无码伦av中文字幕| 九色视频线上播放| 在线永久免费观看的毛片| 人妻出轨无码中文一区二区| 91福利片| 老色鬼久久亚洲AV综合| 久久国产av麻豆| 欧美一级高清免费a| 亚洲午夜18| 欧美日韩国产成人在线观看| 国产精品自在自线免费观看| 天堂网亚洲系列亚洲系列| 久久综合九九亚洲一区| 国产精品三级av及在线观看| 国产伦精品一区二区三区视频优播| 日韩视频精品在线| 在线人成精品免费视频| 日韩成人高清无码| 国产成年无码AⅤ片在线| 中文字幕伦视频| 热久久这里是精品6免费观看| 在线观看无码a∨| av无码一区二区三区在线| 亚洲av片在线免费观看| 精品国产欧美精品v| 欧美成人精品一级在线观看| 人妻中文字幕无码久久一区| 一级毛片免费的| 伊人久久大香线蕉成人综合网| 亚洲成人一区二区三区| 成年人视频一区二区| 亚洲日本一本dvd高清| 亚洲男人的天堂久久精品| 欧美色视频日本| 国产精品福利尤物youwu| 天天综合网色| 亚洲一区二区三区国产精品 | 亚洲成网777777国产精品| 中文字幕久久亚洲一区| 久久青草精品一区二区三区| 强奷白丝美女在线观看| 99re热精品视频中文字幕不卡| 欧美第二区| 久久精品人人做人人综合试看| a亚洲视频| 久久国产精品夜色| 久久天天躁夜夜躁狠狠| 国产精品私拍在线爆乳| 亚洲中文在线视频| 久久久久人妻一区精品| 久久a级片| 狠狠五月天中文字幕|