溫劍芳
(鶴山市職業(yè)技術(shù)學(xué)校,廣東江門,529700)
項(xiàng)目任務(wù)的情景性:學(xué)校一年一度的專業(yè)建設(shè)展示節(jié),藝術(shù)科組聯(lián)合電子科組設(shè)計(jì)一款電子音樂盒,要求在此次活動中展演,并放到電子商務(wù)科組的展攤上義賣。藝術(shù)科組給出音樂盒的效果要求:能播放歌曲,能彈奏簡單的樂曲。電子科組將這個(gè)項(xiàng)目接收后,分配給了高二級的電子創(chuàng)客訓(xùn)練隊(duì)完成。
項(xiàng)目過程:教師引領(lǐng),小組協(xié)作,個(gè)體參與,創(chuàng)客設(shè)計(jì)。
教師布置項(xiàng)目任務(wù),馬上引發(fā)學(xué)生的興趣;進(jìn)行積極的小組討論和資料搜索;細(xì)分需要解決的技術(shù)點(diǎn)。按照音樂盒的效果要求,提出需要解決以下幾個(gè)問題。
第一,采用什么技術(shù)進(jìn)行電路控制?第二,音樂盒的彈奏部分采用什么元件或模塊解決?第三,發(fā)音部分電路如何設(shè)計(jì)?第四,音樂是模擬信號,不同音符發(fā)聲是什么原理?第五,音樂簡譜如何轉(zhuǎn)化到電路控制器上?第六,要作為商品在會場出售,包裝如何設(shè)計(jì)才能吸引觀眾?能否從視覺、聽覺都作出效果?
學(xué)生們在教師引導(dǎo)下通過查閱資料、參考以往的設(shè)計(jì)案例,商討后,確立了解決以上問題的幾個(gè)技術(shù)點(diǎn)。
采用單片機(jī)控制電路,其內(nèi)部存儲器能解決歌曲的數(shù)據(jù)存儲;使用4×4 的鍵盤模塊解決音樂盒的鍵盤彈奏;采用數(shù)碼管顯示模塊進(jìn)行彈奏的音符的顯示;采用單片機(jī)輸出控制蜂鳴器發(fā)出不同頻率的聲音即音符;尋找轉(zhuǎn)化軟件實(shí)現(xiàn)音樂簡譜轉(zhuǎn)化成單片機(jī)的認(rèn)識的代碼;音樂盒的包裝可以通過亞克力板完成,可以清楚看見內(nèi)部線路的結(jié)構(gòu),體現(xiàn)專業(yè)特色,另外DIY 的設(shè)計(jì)降低成本。
本次項(xiàng)目的設(shè)計(jì)解決方案需要到硬件電路搭建和軟件編程,屬于工程類的創(chuàng)客設(shè)計(jì)。
系統(tǒng)工作原理:音樂盒上電后,單片機(jī)輸出控制音頻播放模塊進(jìn)行樂曲播放,樂曲播放完畢;單片機(jī)進(jìn)行鍵盤掃描,若有按鍵按下,單片機(jī)輸出控制數(shù)碼管顯示對應(yīng)音符,音頻電路發(fā)出對應(yīng)音響,使用者即可根據(jù)個(gè)人喜好彈奏鍵盤,使音樂盒演奏出樂曲。
2.2.1 單片機(jī)向外輸出的音頻原理
基于本次參與設(shè)計(jì)的學(xué)生開始學(xué)習(xí)單片機(jī)不久,教師則需要在單片機(jī)的中斷系統(tǒng)定時(shí)器的基礎(chǔ)知識和應(yīng)用上對學(xué)生進(jìn)行知識的教授,以此引導(dǎo)學(xué)生解決采用單片機(jī)定時(shí)器技術(shù)輸出控制模塊電路發(fā)出不同音頻的技術(shù)點(diǎn)。這個(gè)技術(shù)點(diǎn)屬于軟件編程的難點(diǎn),適合采用仿真電路結(jié)合程序開發(fā),引導(dǎo)學(xué)生找案例結(jié)合參考,以便學(xué)生更形象地理解。
要讓電路的蜂鳴器發(fā)出不同的音頻,采用給蜂鳴器輸送對應(yīng)的音符頻率的電平信號即可。不同音頻電信號的產(chǎn)生采用設(shè)定單片機(jī)的定時(shí)器做出頻率不同的方波電平信號輸送出來即可發(fā)音。如中音“1”的頻率為523Hz,這個(gè)方波信號的周期為1/523s,即1.91ms,方波的半個(gè)周期為0.955ms。要產(chǎn)生這樣的方波信號,以單片機(jī)的機(jī)器周期是1.085us,采用定時(shí)器T0 工作方式0,計(jì)算出T0 的初始值,設(shè)置定時(shí)器T0 中斷即可。

圖1 系統(tǒng)原理圖

圖2 軟件流程圖
2.2.2 尋求音樂代碼軟件
創(chuàng)客者的思維是靈活運(yùn)用數(shù)學(xué)邏輯,發(fā)現(xiàn)規(guī)律性,并設(shè)計(jì)出函數(shù)代碼以便控制器執(zhí)行。
本次的音樂盒要做到隨設(shè)計(jì)者喜歡播放不同的樂曲。對于只認(rèn)識代碼的控制器來說,創(chuàng)客們?nèi)缒苷页鲆环N音樂代碼生產(chǎn)軟件,把音樂分解成音階和音階的時(shí)長的代碼組合存在芯片中。將樂曲簡譜輸入后轉(zhuǎn)化成數(shù)組代碼,結(jié)合定時(shí)器T0 中斷的設(shè)置,放入程序相應(yīng)的樂曲數(shù)組代碼中,即可使電路連續(xù)的播放樂曲。這些聰明的創(chuàng)客們利用網(wǎng)絡(luò)就收集到一種51MUSIC單片機(jī)音樂代碼生成器,使編程變得簡單有趣。

圖3 51MUSIC 單片機(jī)音樂代碼生成器
2.2.3 構(gòu)建音頻播放模塊
音頻播放模塊用一個(gè)4.7k 電阻,一個(gè)PNP 型三極管8012,一個(gè)交流無源蜂鳴器構(gòu)成。用單片機(jī)引腳P3.0 按音階頻率輸出方波信號,通過三極管驅(qū)動無源蜂鳴器,當(dāng)單片機(jī)的P3.0腳為低電平時(shí),三極管飽和導(dǎo)通,蜂鳴器通電鳴響。若單片機(jī)的P3.0 腳為高電平時(shí),三極管截止,蜂鳴器沒有電流就不鳴響。通過單片機(jī)控制P3.0 輸出的方波的頻率、時(shí)間,便能產(chǎn)生簡單的音樂。
2.2.4 建立4×4 鍵盤對應(yīng)音樂鍵盤
搭建4×4 矩陣鍵盤模塊,矩陣鍵盤的4 列依次接在單片機(jī)的P1.0-P1.3 腳,矩陣鍵盤的4 行依次接在單片機(jī)的P1.4-P1.7 腳。鍵盤檢測原理,用逐行掃描的檢測方法,先掃描第一行,P1.4 置低電平,其他行置高電平,如檢測到P1.0-P1.3 列中其中一列是低電平,根據(jù)行列坐標(biāo),單片機(jī)確認(rèn)按鍵的位置。如檢測P1.0-P1.3 列全是高電平;則依次掃描第二行,P1.5 置低電平,如此重復(fù)第一行的掃描檢測,循環(huán)進(jìn)行鍵盤掃描,確定按鍵的位置。16 個(gè)按鍵按順序地對應(yīng)簡譜的16 個(gè)音符。
單片機(jī)AT89S51、電子元件、電子焊接工具、PROTEUS 軟件、KEIL C 軟件、51MUSIC 單片機(jī)音樂代碼生成器軟件。
作品設(shè)計(jì)初步形成,通過仿真,PROTEUS 軟件畫出的電路圖導(dǎo)入單片機(jī)程序,檢驗(yàn)初步成果。仿真效果沒有問題后,制作硬件電路。創(chuàng)客們在制作硬件電路中會遇到一些問題,我們的學(xué)生應(yīng)用電子技能焊接電路,他們要有看原理圖制作電路的技能。焊接電路有可能出現(xiàn)虛焊、元件損壞導(dǎo)致電路不正常工作,這需要?jiǎng)?chuàng)客細(xì)心檢查、分析、使用萬用表檢測等方法進(jìn)行排故。通過硬件電路的制作較大地提高創(chuàng)客們的動手制作能力和硬件電路的排故能力。音樂盒的電路仿真圖如圖4 所示,硬件電路如圖5 所示。

圖4 電路仿真圖

圖5 硬件電路
創(chuàng)客們設(shè)計(jì)出電路,經(jīng)過與工藝設(shè)計(jì)專業(yè)學(xué)生共同設(shè)計(jì)包裝后,在專業(yè)建設(shè)展示節(jié)展攤上吸引了大批粉絲。粉絲們對這音樂盒產(chǎn)生很大的興趣,并動手彈奏,對創(chuàng)客們的創(chuàng)作大加贊賞。不少學(xué)生當(dāng)場表示申請加入電子創(chuàng)客隊(duì)。此款音樂盒成了展場上的熱銷義賣產(chǎn)品之一。