




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、單片機(jī)控制蜂鳴器鳴奏音樂(lè)一一中北大學(xué):馬政貴首先介紹蜂鳴器的發(fā)聲原理。我們都知道,音調(diào)和音調(diào)的時(shí)長(zhǎng)是音符的主要特征, 通過(guò)產(chǎn)生不同的音調(diào)和音調(diào)的時(shí)長(zhǎng)可以奏出不同的音符來(lái)。然后一個(gè)個(gè)音符串聯(lián)在一 起就可以產(chǎn)生美妙的音樂(lè)來(lái)了。音調(diào)主要由聲音的頻率決定,通過(guò)單片機(jī)給蜂鳴器不同 的音頻脈沖來(lái)產(chǎn)生不同的音調(diào)。要產(chǎn)生音頻脈沖,只要算出某一音頻的周期(周期=1/頻率), 然后將此周期除以2即為半周期的時(shí)間。利用單片機(jī)的定時(shí)器工作在計(jì)數(shù)模式MODE1 F, 設(shè)定THO和TLO的值以產(chǎn)生這半個(gè)周期,每當(dāng)計(jì)時(shí)到達(dá)時(shí)就將輸出脈沖的DO (即接蜂鳴 器的那個(gè)管腳)反相,然后重復(fù)計(jì)時(shí)此半個(gè)周期再對(duì)I/O反相,就可以在I
2、/O引腳上得到此 頻率的脈沖。如果沒(méi)有必要進(jìn)行精確的計(jì)時(shí),可以用for循壞空語(yǔ)句來(lái)粗略計(jì)時(shí)即可(本文 選用此法)。當(dāng)單片機(jī)使用11.0592M11Z的晶振時(shí),for(i=0;i115;i+);這個(gè)空循環(huán)延時(shí)約為 1ms;當(dāng)晶振選用12M11Z時(shí),可使用fbr(i=O;i125;i+);這個(gè)空循環(huán)來(lái)延時(shí)1ms。在這個(gè)空循 環(huán)外頭再進(jìn)行一次循環(huán)就可以實(shí)現(xiàn)延時(shí)若干ms。女山實(shí)現(xiàn)延時(shí)若干ms,晶振為11.0592M11Z void delay(unsigned int i)unsigned charj; wliile(i-)foi(j=0j115j+);例如delav(lOOO)便可以實(shí)現(xiàn)延時(shí)Is實(shí)現(xiàn)
3、延時(shí)若干ms,晶振為12Mhz void delav(unsigned int i)unsigned chai j; wliile(i-)for(j=Oj125j+);例如delay(1000)編便可以實(shí)現(xiàn)延時(shí)Is知道如何產(chǎn)生不同的頻率的音調(diào)和進(jìn)行音調(diào)的延時(shí)的之后,我們便可以編寫(xiě)程序來(lái) 讓單片機(jī)控制蜂鳴器來(lái)鳴奏音樂(lè)了。下面附上不同音調(diào)所對(duì)應(yīng)的頻率表:61 Cg備音符頻率與計(jì)數(shù)值T的對(duì)腕表音符類宰(Hz)簡(jiǎn)語(yǔ)碼T值)音符強(qiáng)率(Hz)畫(huà)溝碼(T值丿低1 DO26263628W4FA*74064860 1 DO#27763731中5 SO78464898M 2 RE294638355SO#83164
4、934#2 RE#31163928中6LA88064968fi 3M33064021#6932649944FA34964103中7S!98365030#4 FA*37064I&5島1DO104665058低5 SO39264260# 1 DO#110965085#5SO*41564331島2RE117565110低6 LA44064400#2RE#124565134646664463高3M131865157ft 7 SI49464524高4FA139765178中1 DO523645S0W4FA#14806519SVIDO*55464633rft 5 SO156865217中2 RE58764
5、684*5SO#166165235#2 RE#62264732高6 LA1760I65252中3M65964777侑61865I65268中4 FA69864S20高7 SI196765283下文介紹了讓單片機(jī)控制蜂鳴器進(jìn)行鳴奏音樂(lè)的兩種方法。第一種方法是基礎(chǔ)的方 法,就是順序地讓蜂鳴器挨個(gè)地演奏每個(gè)音符。方法一:(此歌曲是莫斯哥郊外的晚上的樂(lè)曲)#include sbit finq=P3A6;void delay(unsigned int a)unsigned char b;wlule(a)foi(b=0;b115;b+);void yaiizou(unsigned char unsigne
6、d mt pai)unsigned char y;unsigned mt j;fbr(j=Ojpaij+)finq=0; for(y=0;yi;y+); finq=l;for(y=0;yi;y+);void mam()wlule(l)vanzou(65,220);l/2拍中音6yanzou(55,262);/1/2拍高音1yanzou(44,330);1/2拍高音3yanzou(55,262);/1/2 拍高音1yaiizou(49,587);/I拍高音2yaiizou(55,262);/1/2 拍高音1yaiizou(5&247);/1/2 拍中音7yanzou(44,660);/I拍高音3
7、yanzou(49,587);/I拍高音2yaiizou(65,880);2拍中音6yanzou(55,262);/1/2拍高音1yaiizou(44,330);1/2拍高音3yaiizou(37,392);/1/2 拍高音5yanzou(37,392);/1/2 拍高音5vanzou(65,440);/I拍中音6yanzou(37,392);/1/2 拍高音5yanzou(41,349);/1/2 拍高音4yaiizou(44,2640);4拍高音3yaiizou(4L698);/I拍高音4yanzou(37,784);/I拍高音5yanzou(29,492);/1/2 拍高音7yanzou
8、(33,440);/1/2 拍高音6yanzou(44,660);/I拍咼首3delav(250);yaiizou(5 8,494);/I拍中音7yaiizou(65,220);1/2拍中音6yanzou(44,330);1/2拍高音3yanzou(49,293);/1/2 拍高音2yanzou(41,698);1拍咼音4yanzou(4L698);/I拍高音4yanzou(37,392);l/2 拍咼音5yanzou(41,349);/1/2 拍高音4yaiizou(44,660);/I拍咼音3yanzou(49,293);/1/2 拍咼音2yaiizou(55,262);/1/2拍高音1y
9、anzou(44,660);/I拍高音3yaiizou(49,587);/I拍高音2yaiizou(65,880);2拍中音6yaiizou(65,880);2拍中音6yanzou(4L698);/I拍高音4yaiizou(3 7,784);/I拍高音5yaiizou(29,492);/1/2 拍高音7yaiizou(33,440);/1/2 拍高音6yaiizou(44,660);1拍咼音3delav(250);yanzou(5 &494);1拍中音7yanzou(65,220);1/2拍中音6yaiizou(44,330);/1/2拍高音3yanzou(49,293);/1/2 拍高音2y
10、anzou(41,698);/I拍高音4yanzou(4L698);/I拍高音4yanzou(37,392);/1/2 拍咼音5yaiizou(41,349);/1/2 拍咼音4yaiizou(44,660);1拍咼音3yaiizou(49,293);/1/2 拍高音2yanzou(55,262);/1/2拍高音1yanzou(44,660);/I拍咼音3yanzou(49,587);1拍咼音2yanzou(65,880);2 拍 中音 6yanzou(65,880);/2拍 中音6delav(5000);觀察方法一的主函數(shù)可以發(fā)現(xiàn),每個(gè)語(yǔ)句的形式和實(shí)現(xiàn)的功能都是一樣的,于是可以想到用 數(shù)組來(lái)
11、進(jìn)行代碼的簡(jiǎn)化。方法二便是通過(guò)數(shù)組來(lái)實(shí)現(xiàn)的。方法二:(此樂(lè)曲是讓我們蕩起雙槳)#include sbit finq=P3A6;sbit stait=PlA4;定義了一個(gè)按鍵進(jìn)行控制,當(dāng)按鍵按下時(shí),開(kāi)始演奏音樂(lè)void delay(unsigned int i)unsigned charj;while(i-)for(j=0j115j+);void yaiizou(unsigned char pinlv?unsigned mt jiepai)unsigned char pl;unsigned mtjp;if(jiepai=l) delay(250);/1/2 拍暫停,即 1/2 拍的 0else
12、if(jiepai=2) delay(500); /I 拍暫停,即 1 拍的 0elsefbr(jp=Ojpjiepaijp+)finq=O;fbi(pl=O;plpHilv;pl-H-);finq=l;fbi(pl=O;plpHilv;pl-H-);void main()unsigned char i.x;unsigned char code pinlv=1315110,98, 87, 73, 87, 110,98, 131,0,110,9& 87, 73, 73, 65, 98,87,87,87,73,65,73,65,55,5&65,73,65,87,110,9&87,73,11031J
13、10、9&87,65,73,73,0,87,65,65,73$ 2,87,9&87,733110,98O110,9&87,73,65,55,5&65,73,87,65,65;unsignedintcodejiepai= 110J31J47494496465431,294,440J431J47J65,58&196440294,660,330J 65,196 ,880,58&220,262,124,110,196,220,330,131,147,495,196,262,220,131,147,165,220/784,3922,660, 660,220)96,175,330,588,495,196,110,131,147,2,131,147,330,392,440,524,247,220,19665,880,
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)入股協(xié)議合同范本
- 產(chǎn)品要求合同范本
- 醫(yī)院電梯購(gòu)買(mǎi)合同范例
- 俱樂(lè)部線上合同范本英文
- 代寫(xiě)勞務(wù)合同范例范例
- 關(guān)于加油站出租合同范本
- 公司廠房拆遷合同范本
- 養(yǎng)鵝購(gòu)銷合同范本
- 公司股權(quán)虧損合同范本
- 加工付款協(xié)議合同范本
- 2023年H3CNE題庫(kù)附答案
- 2024年首都醫(yī)科大學(xué)附屬北京安定醫(yī)院招聘筆試真題
- 老舊小區(qū)改造項(xiàng)目施工組織設(shè)計(jì)方案
- 【招商手冊(cè)】杭州ICON CENTER 社交娛樂(lè)中心年輕人潮流消費(fèi)創(chuàng)新實(shí)驗(yàn)
- AI一體化智慧校園建設(shè)方案中學(xué)版
- 2025年國(guó)家稅務(wù)總局遼寧省稅務(wù)局系統(tǒng)招聘事業(yè)單位工作人員管理單位筆試遴選500模擬題附帶答案詳解
- 2024年思想道德與政治考試題庫(kù) (單選、多選)
- 《中國(guó)成人白內(nèi)障摘除手術(shù)指南(2023年)》解讀
- 七年級(jí)語(yǔ)文組名著閱讀計(jì)劃
- 2025年上半年上饒市上饒縣事業(yè)單位招考(139名)易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2025年高考數(shù)學(xué)模擬卷(浙江專用)(解析版)
評(píng)論
0/150
提交評(píng)論