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