柴春柳+孫德龍+陳智偉
【摘要】 設(shè)計(jì)了一種基于單片機(jī)簡(jiǎn)易電子琴,以STC89C52單片機(jī)為控制核心,輔以一些外圍設(shè)備,使用C語(yǔ)言程序,可以實(shí)現(xiàn)八音階,內(nèi)置的電子音樂(lè)曲目實(shí)現(xiàn)了基于單片機(jī)的鍵盤(pán)設(shè)計(jì)。整個(gè)系統(tǒng)的電路結(jié)構(gòu)清晰簡(jiǎn)單,可靠性能良好,測(cè)試結(jié)果充分滿(mǎn)足設(shè)計(jì)要求。
【關(guān)鍵詞】 單片機(jī) 電子琴 設(shè)計(jì)
伴隨著電子技術(shù)和計(jì)算機(jī)技術(shù)的超高速發(fā)展,單片機(jī)的功能健全,具有成本效益的價(jià)格顯著增強(qiáng),技術(shù)改進(jìn)。由于單片機(jī)具有體積小,價(jià)格便宜,功耗低,超強(qiáng)的控制功能和操作速率等,和在國(guó)民經(jīng)濟(jì)建立建設(shè)、軍事科技和家用電器等領(lǐng)域具有廣泛的應(yīng)用。社會(huì)的飛速發(fā)展,人們對(duì)視覺(jué)、聽(tīng)覺(jué)都有著越來(lái)越高的要求。小鍵盤(pán)能帶給人們快樂(lè)的記憶,增強(qiáng)人們的精神和文化的享受。本文以單片機(jī)為核心元件,以單片機(jī)為核心元件設(shè)計(jì),體積小,重量輕,可演奏和弦音樂(lè),演奏用八音音階,易于使用,并具有一定的商業(yè)價(jià)值。
一、設(shè)計(jì)方案
本設(shè)計(jì)的最最主要內(nèi)容是利用STC89C52單片機(jī)為核心控制元件,設(shè)計(jì)一個(gè)鍵盤(pán)。以單片機(jī)為控制核心,以鍵盤(pán)、揚(yáng)聲器、數(shù)碼管等外設(shè)模塊為主,最后實(shí)現(xiàn)了一種基于單片機(jī)的鍵盤(pán)設(shè)計(jì)。音樂(lè)是由許多不同的尺度,每個(gè)刻度對(duì)應(yīng)著不同的頻率,這樣我們就可以利用不同的頻率的組合,音樂(lè)可以使我們當(dāng)然想要什么,單片機(jī)來(lái)產(chǎn)生不同的頻率非常方便,我們可以利用單片機(jī)的定時(shí)計(jì)數(shù)器T0產(chǎn)生這樣的方波頻率信號(hào),因此,只要我們把歌尺度對(duì)應(yīng)關(guān)系的正確的頻率。
二、設(shè)計(jì)要求
設(shè)計(jì)并制作一個(gè)功能穩(wěn)定,外觀簡(jiǎn)潔的電子琴,基本的要求有:1)充分利用I/O口產(chǎn)生的一定頻率的方波,使用LM386型功放驅(qū)動(dòng)揚(yáng)聲器,從而發(fā)出不同音調(diào),從而演奏出不同的樂(lè)曲。2)可以實(shí)現(xiàn)最少7個(gè)音調(diào)鍵的彈奏。3)內(nèi)置歌曲數(shù)量不少于3首。4)要有指示設(shè)備,能將當(dāng)前音樂(lè)播放的音調(diào)值顯示出來(lái)。5)可以通過(guò)按鍵進(jìn)行曲目的選擇和停止播放等功能。6)由于按鍵使用機(jī)械開(kāi)關(guān)的結(jié)構(gòu),機(jī)械的觸點(diǎn)彈性以及電壓不穩(wěn)定的原因,一般在觸點(diǎn)閉合時(shí)或斷開(kāi)時(shí)的瞬間會(huì)出現(xiàn)電壓的抖動(dòng)。為確保鍵識(shí)別的準(zhǔn)確和穩(wěn)定,在電壓的信號(hào)抖動(dòng)狀態(tài)下不能夠進(jìn)行狀態(tài)的輸入。
三、系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)使用STC89C52單片機(jī)用作為核心的元器件,并且配合的使用了電阻電容晶振等高科技器件,從而構(gòu)成了單片機(jī)的最小系統(tǒng)原理。單片機(jī)一般情況下工作于12MHZ時(shí)鐘的頻率,并且使用其定時(shí)/計(jì)數(shù)器T0,并且工作的模式為1,從而使其改變計(jì)數(shù)值TH0和TL0并且可以發(fā)出并產(chǎn)生不同頻率的脈沖的信號(hào)采樣。使得其它的模塊圍繞著單片機(jī)展開(kāi)。
輸入部分共有兩部分,第一部分是彈奏輸入,第二部分是控制輸入。彈奏輸入是由8個(gè)獨(dú)立按鍵構(gòu)成的,總共可以可彈奏出來(lái)8個(gè)音調(diào),由于咱們的設(shè)計(jì)實(shí)現(xiàn)出的音樂(lè)發(fā)生器是由用戶(hù)通過(guò)使用鍵盤(pán)輸入和彈奏樂(lè)曲的,所以節(jié)拍由用戶(hù)自己掌握,不由程序來(lái)控制。對(duì)于控制的輸入,就只有1個(gè)按鍵,功能主要是播放內(nèi)置音樂(lè)和切歌。
四、系統(tǒng)軟件設(shè)計(jì)
程序運(yùn)行后先判斷八個(gè)音調(diào)鍵是否有被按下,是的話,則根據(jù)不同的音調(diào)鍵,播放不同的音調(diào)。接著判斷“下一曲”按鍵是否有被按下,是的話則把歌曲切換到下一曲,然后播放一首完整的音樂(lè)。然后又回到最前面的音調(diào)按鍵判斷,依此循環(huán)。
五、調(diào)試
1、 硬件調(diào)試。硬件調(diào)試主要是在系統(tǒng)通電之前,仔細(xì)檢查安裝元器件是否錯(cuò)安、漏安,線路連接是否正確。主要工具是萬(wàn)用表和烙鐵等工具,主要是為了排查板子焊錯(cuò)線、焊少線、短路和斷路等情況??赏ㄟ^(guò)電壓、電流、電阻等物理量的測(cè)量,再進(jìn)行推測(cè),以免通電后對(duì)元件造成傷害。
2、軟件調(diào)試。軟件調(diào)試是在硬件調(diào)試完成之后,對(duì)其進(jìn)行同步模擬。最初階段就是把各個(gè)子程序模塊進(jìn)行分別調(diào)試,在調(diào)試過(guò)程中進(jìn)行查看變量和更改數(shù)值等。確保各個(gè)模塊的子程序的正確與平穩(wěn)運(yùn)行,進(jìn)而使主程序和整個(gè)程序都能平穩(wěn)運(yùn)行。
結(jié)語(yǔ):設(shè)計(jì)一種基于STC89C52單片機(jī)為核心控制芯片。在發(fā)音硬件的選擇,摒棄了蜂鳴器,而采用了功放LM386加揚(yáng)聲器的組合,音質(zhì)比單純采用蜂鳴器好很多。彈奏鍵盤(pán)則采用鼠標(biāo)按鍵來(lái)代替普通的按鍵,鼠標(biāo)按鍵無(wú)論在外形、手感、還是質(zhì)量上,都更加適合作為電子琴的彈奏按鍵;另外,還設(shè)有2個(gè)功能按鍵,通過(guò)單片機(jī)IO口控制采集按鍵的狀態(tài),實(shí)現(xiàn)歌曲的切換和復(fù)位等功能。顯示設(shè)備則采用一位共陽(yáng)數(shù)碼管,通過(guò)單片機(jī)P0口給出數(shù)據(jù)信號(hào),可以通過(guò)數(shù)碼管查看當(dāng)前正在播放的音調(diào)編號(hào)。
參 考 文 獻(xiàn)
[1]謝自美.電子線路設(shè)計(jì)·實(shí)驗(yàn)·測(cè)試(第二版).武漢:華中理工出版社,2000.
[2]張友德:?jiǎn)纹⑿蜋C(jī)原理、應(yīng)用和實(shí)驗(yàn)、電子工業(yè)出版社.
[3]吳經(jīng)國(guó):?jiǎn)纹瑱C(jī)應(yīng)用技術(shù),中國(guó)電力出版社.
[4]李群芳:?jiǎn)纹瑱C(jī)微型計(jì)算機(jī)與接口技術(shù),電工業(yè)出版社.
[5]王吉鵬等:微機(jī)原理與接口技術(shù),高等教育出版社.
[6]張曄等:?jiǎn)纹瑱C(jī)應(yīng)用技術(shù),高等教育出版社.