摘 要:本文以AT89S52單片機作為核心控制元件,利用單片機內部計數(shù)器產生不同的頻率輸出產生音階,設計鍵盤及蜂鳴器為外圍電路,制作了一款簡易電子琴。
關鍵詞:單片機;電子琴
電子琴是現(xiàn)代電子科技與音樂結合的產物,是一種鍵盤樂器,在現(xiàn)代音樂扮演著重要的角色,本文主要對電子琴原理進行了分析,設計制作出一款簡易電子琴。
一、系統(tǒng)硬件設計
系統(tǒng)整體結構框圖設計如下:
(一)單片機控制模塊
主控芯片選擇AT89S52單片機,低功耗8位微控制器,具有8K在系統(tǒng)可編程Flash存儲器。
(二)鍵盤輸入部分
本系統(tǒng)中設計8個按鍵,分別代表不同的音符。用P2口接獨立鍵盤,軟件消除抖動處理,并能準確判斷所需執(zhí)行的相應程序。
(三)蜂鳴器
蜂鳴器本身相當于一個喇叭,需要一個頻率適當?shù)慕涣餍盘栻寗硬拍馨l(fā)聲,三極管在蜂鳴器中,和壓電陶瓷片組成一個自激式振蕩電路,壓電陶瓷片同時充當反饋元件和發(fā)聲元件兩個功能。
二、軟件設計及實現(xiàn)
音樂是由許多不同的音符組成的,而每個音符對應著不同的頻率,這樣就可以利用不同的頻率組合,加上拍數(shù)對應的延時從而構成音樂。
單片機程序主要實現(xiàn)的功能:產生一定頻率的方波一般是先將某口線輸出高電平,延遲一段時間后再輸出低電平。通過改變延遲時間可以改變單片機的輸出方波的頻率。
例如低3MI音,頻率為330Hz,其周期T=1/f=1/330=3030us,計數(shù)值N=3030/2=1515,所以每計數(shù)1515次P1.0反向。計數(shù)初值T=65536N=64021。C調的各音符頻率與計數(shù)值T的對照表如下表所示。
89S52單片機內部設有兩個16位的可編程定時器/計數(shù)器,本設計選用計數(shù)器中斷模式,寄存器設置的步驟如下:
(1)確定工作方式(即對TMOD賦值);
(2)預置定時或計數(shù)的初值;
(3)設置計數(shù)器的中斷(直接對IE位賦值);
(4)啟動定時器/計數(shù)器。
當有按鍵按下時,打開定時器,并且把對應的值輸入到定時器中斷程序,定時器就會按照不同的周期溢出,使單片機引腳輸出不同頻率的方波,從而使蜂鳴器發(fā)出不同的聲音,然后關閉定時器。等待下次按鍵。
三、實驗結果
通過實驗成功實現(xiàn)了不同按鍵對應的8個音階,達到預期實驗目標。簡易電子琴實物圖:
四、總結
本文根據(jù)電子琴設計原理,理解掌握了聲音頻率等知識,設計一款簡易的電子琴實驗制作,能夠通過按鍵實現(xiàn)不同音樂的音階。
參考文獻:
[1]雷思孝.單片機原理及使用技術[M].西安電子科技大學出版社.
[2]單片機的C語言應用程序設計(第四版)北京航空航天大學出版社.
[3]C語言程序設計[M]第二版.清華大學出版社.
[4]單片機原理及接口技術[M].北京航空航天大學出版社.
[5]8051單片機C語言應用[M].科學出版社,2002.
[6]張永楓.單片機應用實訓教程[M].西安電子科技大學出版,2005.
[7]謝自美.電子線路設計、實驗、測試.華中理工大學出版社,2000.
作者簡介:李佳琪(1999),女,漢族,四川成都人,學生,高中。