?

基于單片機的簡易電子琴設計

2015-12-22 01:53彭建英彭光含曾志剛
關鍵詞:電子琴數碼管音調

彭建英, 彭光含, 曾志剛

?

基于單片機的簡易電子琴設計

彭建英, 彭光含, 曾志剛

(湖南文理學院物理與電子科學學院, 湖南常德, 415000)

采用單片機AT89S52作為主控芯片, 用4 × 4鍵盤電路進行音調的選擇, 音調值由LED數碼管顯示, 設計了一款簡易電子琴, 實現了16個音調的發音和歌曲的播放。對音調的產生原理和節拍的控制進行了說明。最后利用PROTEUS和KEIL軟件進行了聯合仿真和調試, 較好地實現了16音調發音和歌曲播放的功能。

AT89S52; 電子琴; 音調; PROTEUS仿真

電子琴的制作方法主要有基于集成電路或可編程器件[1–2]和基于單片機[3–4]2類。本文利用單片機AT89S52設計了一款簡易電子琴, 可以實現16音調的發音和歌曲的播放等功能。

1 系統總體設計方案

電子琴系統由AT89S52單片機、4 × 4矩陣鍵盤、選擇按鍵、LED顯示器等模塊組成, 系統設計如圖1所示。

圖1 系統框圖

2 系統硬件設計

鍵盤電路利用4 × 4行列式矩陣鍵盤產生2個8度的音階, 0—7表示低8度do—xi, 8—F表示高8度的do—xi。P10—P13接行線, P14—P17接列線, 鍵盤電路如圖2所示。

圖2 鍵盤電路圖

數碼顯示電路由P0口提供數碼管的數據端, P0口作為輸出端口需要接上拉電阻, 數碼管選取共陽極數碼管。數碼管顯示0—F, 對應鍵盤電路中的按鍵值。

揚聲器電路如圖3所示, 由P3.0產生信號, 經過電阻R3和R2分壓電路, R2上的電壓加在三極管的基極, 三極管的集電極加揚聲器。當P3.0為低電平時, 三極管截止, 揚聲器不發聲; 當P3.0為高電平時, 三極管導通, 揚聲器發聲[5–8]。

圖3 揚聲器電路

3 系統軟件設計

3.1 音階頻率的確定

在音樂理論中, 把一組音按音調高低的次序排列起來就成為音節, 也就是dou, ruai, mi, fa, sou, la, xi, dou。高音dou的頻率正好是中音dou頻率的2倍。以下是音調A階、B階、C階、D階的頻率, 單位為Hz[9–10]。A: L1, 131; L2, 147; L3, 165; L4, 175; L5, 196; L6, 220; L7, 247。B: N1, 262; N2, 296; N3, 330; N4, 349; N5, 392; N6, 440; N7, 494。C: H1, 523; H2, 587; H3, 659; H4, 698; H5, 784; H6, 880; H7, 988。D: I1, 1 047; I2, 1 175; I3, 1 319; I4, 1 397; I5, 1 568; I6, 1 760; I7, 1 976。

3.2 單片機產生不同頻率脈沖信號的原理

要產生音頻脈沖, 只要計算出某一音頻脈沖的周期, 然后將此周期除以2, 利用定時器定時該半周期的時間, 每當計時時間到后將輸出脈沖取反, 就可得到這個音頻信號的頻率。

所求得的16個音調對應的定時器計數值建立的表為: TABLE DW

64 021, 64 103, 64 260, 64 400, 64 524, 64 580, 64 684, 64 777, 64 820, 64 896, 65 010, 65 030, 65 058, 65 110, 65 157, 65 178。TABLE后面的16個數是16個音調對應的定時器計數值。

表1 節拍時間表

3.3 節拍的延時的確定

如果一拍為0.4 s, 則1/4拍為0.1 s, 只要設定延時時間就可求得節拍的時間。求得1/4拍的延時時間, 其余的節拍是它的倍數, 表1為1/4和1/8節拍的時間設定。

3.4 軟件流程

軟件流程如圖4所示, 其中KEY鍵斷開播放歌曲, 閉合進行音調的顯示和播放。

圖4 軟件流程圖

4 系統仿真

系統仿真如圖5所示, 由4 × 4鍵盤的16個按鍵對應16個音調, KEY鍵控制歌曲的播放。鍵盤按下1號鍵, 發do的音調, 在數碼管上顯示1。

圖5 電子琴系統仿真圖

5 結論

本設計是以AT89S52單片機為主控芯片設計了一款電子琴, 主要進行了4 × 4鍵盤電路、按鍵選擇電路、LED數碼顯示和揚聲器播放電路等硬件的設計, 軟件部分對音調的產生原理和節拍的控制進行了說明。利用PROTEUS和KEIL軟件進行了仿真, 結果表明系統設計可行。

參考文獻:

[1] 陳華容. 基于FPGA電子琴的設計[J]. 器件與電路, 2006(2): 26–29.

[2] 閆娟. 基于Verilog HDL的簡易電子琴設計[J]. 企業技術開發, 2011(13): 104.

[3] 張丹, 馬淑云. 基于AT89C51單片機電子琴的設計[J]. 中國高新技術企業, 2010(36): 6–7.

[4] 周琛暉. 基于AT89S51單片機的電子琴設計[J]. 電腦知識與技術, 2009(27): 7 679–7 681.

[5] 胡建波. 微機原理與接口技術實驗——基于Proteus仿真[M]. 北京: 機械工業出版社, 2011: 117–121.

[6] 樓然苗. 單片機課程設計指導[M]. 北京: 北京航空航天大學出版社, 2007: 1–10.

[7] 藍和慧, 寧武. 全國大學生電子設計競賽單片機應用技能精解[M]. 北京: 電子工業出版社, 2010: 32–33.

[8] 謝維成, 楊加國. 單片機原理與應用及C51程序設計[M]. 北京: 清華大學出版社, 2009: 192–196.

[9] 張建平, 朱偉娜. 單片機電子琴[J]. 無線電, 2008(5): 76–77.

[10] 李林濤, 陳明, 梁宜勇, 等. 基于單片機的簡易電子琴錄/放音系統[J]. 數字技術, 2010(2): 14–15.

(責任編校:劉剛毅)

Design of simple electronic piano based on single chip microcomputer

PengJianying, Peng Guanghan, Zeng Zhigang

(College of Physics and Electronics, Hunan University of Art and Science, Changde 415000, China)

A simple electronic piano is designed based on AT89S52 MCU, the tone is chosen by 4 × 4 keyboard circuit to and the tone value is displayed by the LED digital tube, which has the function of the 16 tones’s pronunciation and song’s play. At the same time, the tone realization principle and the control of the rhythm is described. Finally, the PROTEUS and KEIL softwares are used to simulate and debug, the functions of the 16 tones’s pronunciation and song’s play are achieved.

AT89S52; electronic piano; tone; PROTEUS simulation

10.3969/j.issn.1672–6146.2015.04.007

TP 273+.5

1672–6146(2015)04–0030–03

彭建英,1186198908@qq.com。

2015–07–11

湖南省教育廳項目(13C626)。

猜你喜歡
電子琴數碼管音調
微課教學設計之“數碼管動態顯示”
基于AT89C51單片機的電子琴設計
Arduino編程
MC9S08FL16單片機數碼管靜態顯示分析
單片機控制的四位數碼管動態顯示編程
聽力障礙幼兒音調異常矯治的實施建議
劉濤《音調未定的儒家——2004年以來關于孔子的論爭·序》
電子琴
越南女教師肌緊張性發聲障礙對完成音調靶點基頻的影響
樂器的音調是如何改變的
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合