宋曉倩
遼寧錦州渤海大學(xué)
?
基于單片機(jī)的簡易電子琴設(shè)計(jì)
宋曉倩
遼寧錦州渤海大學(xué)
電子琴的制作方法包括集成電路以及單片機(jī)兩種,本文設(shè)計(jì)了基于芯片8255和8253的電子琴設(shè)計(jì),這是一種簡單的電子琴,可以進(jìn)行簡單的音樂發(fā)音,而且這種軟件可以通過各種仿真和調(diào)試。有利于音調(diào)的發(fā)音以及歌曲更好的調(diào)試。
電子琴 音調(diào) 仿真調(diào)試
人們希望通過組織的音樂來表達(dá)自己的思想,表達(dá)自己的情感和生活,因?yàn)槌霈F(xiàn)了各種各樣的電子樂器,包括各種電子琴,電子琴的領(lǐng)域非常廣闊而且可以更好的進(jìn)行表現(xiàn),但是電子琴的體積一般不能進(jìn)行攜帶,單片機(jī)在人們的生活中具有重要的地位和意義,要設(shè)計(jì)一種簡單的電子琴,而且這種電子琴是簡單攜帶而且經(jīng)濟(jì)實(shí)用的,本文設(shè)計(jì)了以單片機(jī)為基礎(chǔ)的電子琴。電子琴在現(xiàn)代社會(huì)來說是一種新鮮的產(chǎn)物,他在現(xiàn)代音樂中占有重要的地位。電子琴單片機(jī)的控制功能比較強(qiáng)大,在當(dāng)前人們的生活中得到了廣泛的運(yùn)用,本文的主要內(nèi)容是通過芯片作為控制軟件,這是一種簡單的電子琴,通過按動(dòng)STAR ES598PCI單片機(jī)的1到7號(hào)鍵我們可以更好地調(diào)整單片機(jī)的音調(diào)。逐漸產(chǎn)生不同頻率的波形,最終輸出到單片機(jī)的蜂鳴器上,這樣可以更好地控制蜂鳴器的發(fā)聲也有利于電子琴更好的演奏,可以事先設(shè)置樂譜有利于電子琴的回放以及用戶演奏的重放,用戶通過DOS界面可以選擇電子琴的回放功能。圖1為系統(tǒng)框圖。
圖1 簡易電子琴系統(tǒng)設(shè)計(jì)框圖
圖2為系統(tǒng)接線圖。
2.1芯片8253的作用
芯片8253為一種可編程定時(shí)計(jì)數(shù)器,在本實(shí)驗(yàn)中有利于輸出頻率和限制輸出聲音頻率的大小,8253是可實(shí)現(xiàn)重新嵌入軟件代碼的定時(shí)器/計(jì)數(shù)器功能的芯片,不僅達(dá)到了可計(jì)數(shù)的效果,而且能夠?qū)崿F(xiàn)定時(shí),它是在方波發(fā)生器的工作模式下通過OUT引腳可以獲得方波輸出,通過改變不同的頻率來實(shí)現(xiàn)不同的發(fā)聲。表1為頻率與計(jì)數(shù)初始值的關(guān)系。
表1 頻率與計(jì)數(shù)初始值
圖2 簡易電子琴系統(tǒng)設(shè)計(jì)接線圖
2.2芯片8255的作用
8255芯片有40個(gè)引腳,在設(shè)計(jì)過程中分別接收到按鍵1-7的數(shù)據(jù)輸入后。又可操作蜂鳴器的開關(guān)和8255芯片工作。這種芯片是一種并行接口以及獨(dú)立的數(shù)據(jù)端口,端口之間可以進(jìn)行端口輸入和輸出,內(nèi)部有3種工作方式,即方式0、 方式1和方式2,而C口能進(jìn)行信號(hào)的聯(lián)絡(luò),通過使用8255A芯片A口,作為一種很基礎(chǔ)的輸入方法。通過輸出線可以和芯片進(jìn)行連接,然后讓計(jì)數(shù)器正常地進(jìn)行工作。有利于蜂鳴器發(fā)聲控制。并且在蜂鳴器的另一個(gè)輸入端會(huì)配備相應(yīng)的放大電路裝置,所以,不必考慮關(guān)于蜂鳴器的程序驅(qū)動(dòng)電流和裝置電壓。只需按照規(guī)定的范圍輸出的驅(qū)動(dòng)電流即可。
2.3基于蜂鳴器實(shí)現(xiàn)的作用
蜂鳴器的接收端會(huì)根據(jù)收到不同的頻率生成相應(yīng)的聲音,輸入和輸出的頻率會(huì)收到振蕩電路的影響。蜂鳴器最終會(huì)發(fā)出不同的頻率的聲音。圖3為蜂鳴器電路圖。
圖3 蜂鳴器電路圖
程序包括DOS功能界面,用戶在演奏的時(shí)候可以根據(jù)按鍵輸入二進(jìn)制數(shù),然后將對(duì)應(yīng)的技術(shù)圖紙存入到計(jì)數(shù)器中,通過芯片可以產(chǎn)生相應(yīng)的頻率就可以判斷蜂鳴器是否發(fā)聲,用戶點(diǎn)擊回放功能會(huì)自動(dòng)進(jìn)行演奏,其主要的工作原理和實(shí)現(xiàn)原理具有類似的特點(diǎn),并不基于用戶輸入的進(jìn)行頻率判斷,而是需要通過使用芯片二號(hào)計(jì)數(shù)器進(jìn)行輸入進(jìn)行頻率判斷。
對(duì)于整套電路設(shè)計(jì)來說,一旦接通電路則需要通過軟件編碼方式采集到8255芯片的口輸入信號(hào)源,如果沒有按下數(shù)據(jù)就不能夠檢測到數(shù)據(jù),沒有接通開關(guān)的話可能會(huì)通過PC口輸入低電平,而且芯片二號(hào)計(jì)數(shù)器也不會(huì)協(xié)同工作,蜂鳴器的發(fā)生端并不發(fā)聲,如果按下電路的總開關(guān)啟動(dòng)按鈕程序就會(huì)采集數(shù)據(jù),按鈕值與A口并不同,會(huì)對(duì)8255A的C口輸出數(shù)據(jù)進(jìn)行修改,那么PC輸出高電平,這樣二號(hào)數(shù)據(jù)器就可以正常工作。通過的對(duì)應(yīng)輸入的數(shù)據(jù)和事件可以得到技術(shù)支持。這個(gè)技術(shù)只可以發(fā)送給8253的通道2,芯片2號(hào)通道工作方式3下,可以獲得滿足頻率電波的需求。這種電波經(jīng)過電路端的放大設(shè)備就可以讓揚(yáng)聲器頻頻發(fā)出聲音,在這對(duì)樂譜進(jìn)行設(shè)計(jì)的時(shí)候會(huì)設(shè)計(jì)兩張表。一張為平面表,主要是記錄對(duì)應(yīng)的頻率值。另一張是時(shí)間表可以存放音符。而且頻率表與時(shí)間表的表象不能錯(cuò)位,當(dāng)進(jìn)行重復(fù)驗(yàn)證或停止演奏情況下,頻率表應(yīng)該歸零。如果用戶需要選擇回放。這樣對(duì)C口的輸出數(shù)據(jù)可以進(jìn)行修改。那么PC0會(huì)輸入高電平,這個(gè)時(shí)候既數(shù)據(jù)正常地進(jìn)行工作??梢詫⒘斜碇械念l率直接寫入到數(shù)據(jù)中。通過單位時(shí)間以及調(diào)試參數(shù)相乘就可以獲得時(shí)間。這個(gè)時(shí)間就是音符的演奏時(shí)間。
8253芯片的2號(hào)計(jì)數(shù)器由于實(shí)現(xiàn)了數(shù)據(jù)控制可以發(fā)出一定頻率的信號(hào)。蜂鳴器會(huì)演奏,頻率表顯示特殊符號(hào),當(dāng)其檢測到這種特殊符號(hào)便會(huì)輸出相應(yīng)的數(shù)據(jù)。最終8253的2號(hào)計(jì)數(shù)器會(huì)停止工作。蜂鳴器也不會(huì)發(fā)聲的,這個(gè)時(shí)候的回放會(huì)結(jié)束。圖4為軟件流程圖。
4.1硬件調(diào)試
為了連接需要硬件芯片的調(diào)試。因?yàn)樵O(shè)計(jì)方案簡單,而且在調(diào)試中并沒有問題存在,最有可能遇到的問題是芯片信號(hào)到底是通過單片機(jī)連接還是通過接口連接。信號(hào)可以通過接線板得到。片選信號(hào)可以通過CS1給出,因?yàn)閱纹瑱C(jī)上的蜂鳴器和一般的發(fā)音蜂鳴器不一樣,在對(duì)蜂鳴器進(jìn)行測試的時(shí)候自然會(huì)對(duì)方波頻率產(chǎn)生影響,所以在對(duì)蜂鳴器進(jìn)行測試的時(shí)候會(huì)有影響。導(dǎo)致發(fā)出的聲音不滿意。需要對(duì)聲音頻率進(jìn)行調(diào)試,調(diào)試過程使得獲取更佳的音質(zhì)效果。
4.2軟件調(diào)試
軟件調(diào)試主要是通過人機(jī)交互方式和回放功能上的測試,在DOS界面下選擇菜單進(jìn)行人機(jī)交互,通過用戶對(duì)菜單項(xiàng)進(jìn)行程序的調(diào)整,通在程序設(shè)計(jì),軟件功能之間互不干擾,但是忽視了寄存器初值的設(shè)置問題,如果忽略了計(jì)算機(jī)的處理工作,沒有進(jìn)行初始化操作可能會(huì)導(dǎo)致實(shí)驗(yàn)中出現(xiàn)錯(cuò)誤,所以在程序不斷完善的過程中需要通過大量的測試解決問題。本文將頻率和節(jié)拍進(jìn)行了分開存儲(chǔ),通過程序可以更好地讀取表中的數(shù)據(jù)。有利于蜂鳴器更好地進(jìn)行演奏。
本文操作了STAR ES598PCI這種單片機(jī)的一到七號(hào)鍵,通過單片機(jī)8255和8253可以調(diào)整音調(diào),因?yàn)檫@種芯片產(chǎn)生不同的頻率分布,而且會(huì)輸出到蜂鳴器,所以對(duì)于不同的開關(guān)會(huì)發(fā)出一到七級(jí)的音階,有利于電子琴的演奏,可以通過設(shè)置的樂譜音樂回放。通過電子琴可以獲得回放功能,人機(jī)交互的軟件實(shí)現(xiàn)模式有利于電子琴全部功能的實(shí)現(xiàn),而且使用效果也很好,能夠?qū)崿F(xiàn)完整的歌曲彈奏。
[1] 孫萬麟. 基于AT89C51單片機(jī)的電子琴設(shè)計(jì)[J].電腦知識(shí)與技術(shù),2010(20)
[2] 黃亮.基于AT89C2051單片機(jī)的電子琴電路的設(shè)計(jì)[J].電子制作,2006(05)
[3] 盛青松.基于AT89C51可彈奏電子琴的設(shè)計(jì)[J].科技信息,2010(32)
[4] 劉樂喜.微機(jī)計(jì)算機(jī)接口技術(shù)及應(yīng)用[M].北京:華中科技大學(xué)出版社,2005
[5] 石東海.單片機(jī)數(shù)據(jù)通信技術(shù)從入門到精通[M].西安:西安電子科技大學(xué)出版社,2002