999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于CPLD的88鍵電子琴的設計與實現

2013-12-29 10:32:44付夢婷付永慶
電子器件 2013年5期
關鍵詞:信號設計

付夢婷,付永慶

(哈爾濱工程大學信息與通信工程學院,哈爾濱150001)

電子琴是現代電子技術高度發展并與傳統音樂有機結合在一起的一種新樂器。目前市場上有很多種音樂模塊,可以直接產生各種曲子,多數集中在使用單片機[1]、555 定時器、邏輯器件組合、LDQ852 集成塊、CPLD/FPGA等,這些設計方法各有優缺點,比如使用單片機實現簡單、成本低,但是產生的音頻過少,很難滿足標準電子琴的設計要求及市場需求,而使用CPLD/FPGA器件設計的電子琴雖然實現起來相對復雜,但是設計產生的音頻數量能很好地滿足標準電子琴的要求,可以說是性價比較高的一類設計[2-4]。隨著電子琴設計技術的不斷發展,功能更強大,音質更好的電子琴已經成為眾多商家競相追逐的目標。CPLD器件具有靜態可重復編程和動態可在系統重構的特性,因其硬件功能可以通過軟件編程來修改,故具有很好的設計靈活性和通用性[5]。此外,基于CPLD的電子琴設計還有體積小、系統可靠性高、開發周期短和研制成本低的優點。本文在CPLD器件上開發了一個88鍵的電子琴音產生電路,通過外部琴鍵控制其發音,并為CPLD輸出的琴音設計了音質提純電路,使電子琴聲音聽起來更加真實悅耳。

1 系統設計

基于CPLD的88鍵電子琴主要由4個模塊組成:選擇控制模塊、電子琴音生成模塊、音質提純模塊和電子琴發聲模塊。前2個模塊由CPLD實現,后2個模塊由CPLD器件的外部電路實現。選擇控制模塊支持通過按鍵選擇音頻,并對按鍵抖動進行消除;電子琴音生成模塊基于VHDL語言[6]開發產生9個音區共88鍵電子琴音頻;音質提純模塊為帶通濾波器電路,用于對CPLD器件輸出的方波音頻信號進行音質提純,使電子琴音更加圓潤光滑;電子琴發聲模塊實現電子琴的鍵音合成與聲音輸出。

本設計采用的CPLD芯片為ALTERA公司的EPM1270T144I3,實現88鍵電子琴設計共使用了1079個邏輯單元和97個I/O引腳。本設計的系統原理框圖由圖1所示,圖中BPF為帶通濾波器,每個音區采用一個BPF來提純音質。

圖1 電子琴系統原理框圖

1.1 選擇控制模塊的設計

選擇控制模塊由鍵盤選擇及消抖電路和琴音選通輸出部分組成。

1.1.1 鍵盤選擇及按鍵消抖電路的設計

88鍵電子琴的鍵盤使用市場上常見的YAMAHA DGX505電子琴黑白鍵盤,其中黑鍵36個,白鍵52個。88個按鍵各引出一條控制線與主控芯片相連,用于通過按鍵對琴音進行控制。

鍵盤的按鍵操作中,由于機械觸點斷開/閉合時會有抖動,信號的傳導不會單純地由1直接跳到0(或由0直接跳到1),而是會無規律地交替出現0和1的變化,這樣只要按一次按鍵,對主控芯片來說就相當于按了若干次,表現在電子琴演奏上會造成聲音的抖動,故須避免。不同類型的按鍵其最長抖動時間也有差別,抖動持續的時間長短與按鍵的機械特性有關,一般為5 ms~10 ms。

按鍵消抖可采用軟件的或硬件的方法來解決。常用的硬件消抖電路有計數器型、D觸發器型、RS觸發器型和狀態機型[7-9]。本文采用計數器型消抖電路,假設放開按鍵產生的鍵值信號為0,按下為1,計數器數值從0增加到N時代表計時累積達10 ms,則具體消抖過程如下:在每個計數時鐘的上升沿到來時,如果按鍵信號為1,則計數器加1,否則計數器為零,若計數過程中檢測到按鍵信號為0,則計數器清零,判定之前出現的高電平信號為抖動。當計數器數值達到 N時,判定按鍵按下有效。取CPLD主時鐘頻率為100 MHz,若直接對其計數,則達到10 ms需計數1 000 000次,故會占去大量邏輯單元,而88個鍵都要消抖,所需邏輯單元數會遠超1 270個。為節省邏輯單元,本設計取小字二組頻率為698.456Hz的#f2音作為計數時鐘,因此只需計數7次便可達到10 ms計時。

因計時達10 ms后直至按鍵松開一直都要輸出該鍵對應的音頻信號,故需另外定義一個在該時間范圍內為高電平,而其余時間均為低電平的按鍵輸出選通信號。記計數變量為Count,按鍵輸出選通信號為Key,則以VHDL語言設計的消抖電路工作流程如圖2所示。

圖2 消抖電路的工作流程圖

1.1.2琴音選通輸出部分的設計

在選擇輸出部分,當電子琴鍵盤的按鍵被按下時,主控芯片從88個基本琴音中選擇相應的音頻輸出。根據電子琴彈奏原理,電子琴的琴音存在和弦現象,即當電子琴的不同琴鍵同時被按下時,產生的琴音應由所按鍵盤選出的琴音合成產生。琴音的合成即信號的相加,數字信號的相加可通過異、或運算實現,而模擬信號的相加可通過模擬加法器實現。為實現這一功能,設計中同一音區琴音的和弦通過軟件中數字信號的異、或運算實現,不同音區琴音的和弦通過硬件電路中帶通濾波器后的加法器實現。

1.2 電子琴音生成模塊的設計

對電子琴音生成模塊的設計即對分頻器的設計,利用分頻器對100 MHz的晶振時鐘分頻可依次得到所需的88個琴音。

音樂的十二均率規定:每兩個相鄰八度音之間的頻率相差一倍;在兩個相鄰八度音之間,又可分為十二個半音。這里設計9個音區共88個音的音頻,頻率范圍從27.5 Hz~4 186 Hz,這九個音區分別是大字二組、大字一組、大字組、小字組、小字一組、小字二組、小字三組、小字四組、小字五組,其中大字二組只包含A2、#A2和B2 3個音,小字五組只有c5一個音,其余音區各含12個音。88鍵電子琴的小字一組的音符與琴音頻率的對應關系如表1所示。

表1 小字一組電子琴琴音頻率對照表

表中,帶#號的音符表示半音,其他的音符為全音。這里用Ck(k=1,2,…,12)表示小字一組的12個琴音頻率,即C1=262 Hz,C12=494 Hz。因每兩個相鄰音區之間的頻率相差一倍,故若對比小字一組頻率高幾倍音區的琴音頻率用在Ck上方加幾點的方式表示,對比小字一組頻率低幾倍音區的琴音頻率用在Ck下方加幾點的方式表示,則可給出以小字一組琴音頻率表達的各音區的琴音頻率為:

由式(1)知,琴音生成時只須先產生最高音區的12個琴音頻率信號,然后采用逐次二分頻的方法可獲得所有音區的琴音頻率信號。這樣做既能降低設計工作量也能減少對CPLD芯片邏輯單元的需求量,因此可取得節約硬件設計成本的目的。

通過分頻獲得小字一組琴音頻率(分頻器)的設計原理是:將系統主時鐘作為加法計數器的計數時鐘,每當主時鐘的上升沿到來時,讓加法計數器計數一次,當計數累積結果達到N時,計數器復位且使輸出取反,如此反復就能得到所要的琴音頻率。由于通過兩次取反方能得到輸出信號的一個完整周期,故N的數值應等于系統主時鐘頻率與所要輸出琴音頻率比值的一半。以產生4 186 Hz的琴音頻率為例,N值應為100 MHz/4 186 Hz/2=11 994。

1.3 音質提純電路設計

由于分頻器輸出的琴音信號為方波,含高次諧波成分較多,故音質不純,所以,需要把它轉換成音質柔和且純正的正弦波琴音信號。按照傅立葉分析,任何周期信號都可以用一組三角函數的組合表示。

不失一般性,假設方波琴音信號的時域表達式為:

則由傅立葉變換可得其三角函數展開式為:

可見,周期方波是由一組頻率成分成諧波關系、幅值成一定比例,相位角為零的正弦波疊加合成的。因此只需要將方波信號的高次諧波濾除,剩下基波信號輸出,就能達到將方波轉換為正弦波的目的。

為提純琴音信號,采用美國Burr-Brown公司的通用型集成有源濾波器UAF42設計成帶通濾波器來完成該項任務。該芯片在使用時,只要根據設計公式計算合適的外接電阻,再經簡單連接就能很好地滿足設計要求[10]。UAF42芯片工作頻率在10 Hz~100 kHz范圍內時不需要外接匹配電容,因電子琴的88個琴音頻率均在此范圍內,故UAF42的同相輸出二階帶通濾波器設計公式為:

由UAF42內部電路知,若取R1=R2=R4=R=50 kΩ,C1=C2=C=1 000 pF,則只需根據濾波器的中心頻率、帶寬及所需放大倍數即可算出四個電阻RF1、RF2、RG和RQ。為方便計算,取RF1=RF2,則式(4)可化簡為:

取放大倍數ABP=1,則由式(5)~式(7)得:

式(8)為帶通濾波器設計的基本計算公式,只需提供帶通濾波器的中心頻率及帶寬即可計算出相應的帶通濾波器的外接電阻值。

設計時,若對每個音頻輸出都設計一個濾波器,輸出的聲音信號固然很好,但需設計88個帶通濾波器,顯然電路將過分復雜且成本也過高。但若只設計一個濾波器,則因帶寬相對于中心頻率來說太大,濾波效果也會不夠理想。為減少電路復雜性和成本又不使濾波效果受到明顯影響,可把每個音區的12個琴音頻率劃分為一組用一個帶通濾波器濾波。因相鄰音區的琴音頻率相差一倍,故每組琴音中最小頻率琴音的二次諧波頻率大于最大頻率琴音的頻率,因此理論上經帶通濾波器后可濾除組內所有琴音頻率的諧波分量,只剩下基波分量,從而使音色純凈。由于小字五組只有c5一個音,分組時將其歸到小字四組,則88個琴音共分為8組,將最高音區組記為第8組,其含有13個琴音,而第2組~第7組均含有12個琴音,第1組含有3個琴音,因此需要設計8個帶通濾波器來實現音質提純。

經測試發現經帶通濾波器輸出的正弦波仍有一定程度的失真,其頻譜主要為二、三次諧波分量,故在帶通濾波輸出后加入了一階低通濾波器做進一步的濾波處理以提高琴音音質質量。

1.4 電子琴發聲模塊

在完成了對音頻信號的提純設計后,需將各路音頻信號合并,使其合成為一路信號作為最終的輸出信號,并送給揚聲器發出聲音。這里基于LM324設計了一個同相加法器[11],如圖3所示。

圖3 同相加法器電路

圖中,U1~U8是濾波器輸出的8路提純信號,Uo是最終的合成信號,滿足:

取R1=R2=R3=…=R9=R'=R,則:

由式(11)知,它給出的不只是一個加法器,同時也是一個電壓放大器。考慮到多鍵按下時的和弦情況,8路信號加起來可能會出現高電平同時疊加,導致輸出電壓被限幅,產生信號失真,因此反饋電阻Rf阻值不宜過大。設計時取R=10 kΩ,Rf采用10 kΩ的滑動變阻器。由于8路帶通濾波器的放大倍數均為1,則U1~U8的幅度相同,若設為U,則8路同時有信號輸入時,Uo可輸出的電壓幅度范圍為,少于8路信號時則輸出的電壓的幅度變化范圍更小些。經測試,1倍放大的單路濾波器輸出信號經過加法器電路后不會出現波形失真,則調節Rf的值使Uo輸出的電壓幅度為U或更小即可避免超出限幅電壓的情況,同時要保證輸出電壓也不能過小,以保證揚聲器正常發聲,因此試驗時需要反復調節,邊觀看示波器上的輸出波形有無限幅失真同時監聽揚聲器的輸出音量,以達到最佳平衡狀態為宜。

2 功能驗證

驗證本文的設計有兩種途徑,進行 QuartusⅡ[12]環境下的波形仿真和由示波器觀測電子琴系統的實際輸出波形。

2.1 琴音生成功能驗證

以小字三組的最高音頻b3為例,該琴音的實際頻率為1 975.53 Hz。將CPLD對該琴音的輸出接示波器,得到的波形圖、頻率值及頻譜特性如圖4所示。

圖4 分頻生成的小字三組的最高音頻b3特性

由圖可見,輸出波形為方波,頻率約為1 975.49 Hz,與設計要求基本一致。頻率上的微小差異,除與分頻器N值四舍五入取法有關外,與示波器測頻精度也有一定關系,因頻率誤差很小故對琴音的聽覺感受基本無影響,即電子琴的音準性能達到了設計要求。

2.2 消抖功能驗證

由2.1.1節可知,以#f2琴音作為計數時鐘,計數7次可消除持續時間小于10 ms的抖動。假設計數變量為Count,則其取值范圍為0~6,仿真結果如圖5所示。

圖中,key_in為高電平有效的按鍵信號,key_xiaodou為去抖后的按鍵輸出選通信號,key_signal為與之對應的音頻信號,music為按鍵選出的琴音信號。

圖5 琴鍵消抖波形圖

由圖可見,所設計的消抖電路消除了按鍵按下和松開時的抖動。另外,key_in下降沿到來時,music信號沒有立刻輸出低電平,而是延遲了一段時間才輸出低電平,這由消抖電路本身存在的延時所引起。

2.3 同一音區多鍵按下時和弦功能驗證

2.3.1 從波形仿真上驗證

為便于仿真,設音區中含有三個按鍵,按鍵信號分別為key_in1、key_in2和key_in3,對應的方波音頻信號分別為key_signal1、key_signal2和key_signal3。設與key_in1和key_in2相應的按鍵同時按下,music為輸出信號,按鍵信號高電平有效,則在QuartusⅡ[12]環境下仿真得到的波形如圖6所示。

圖6 同一音區兩鍵按下時和弦波形圖

由圖6可見,music為key_signal1與key_signal2的異或,實現了同一音區多鍵按下時輸出和弦音信號的功能。此處仍考慮了消抖,因此輸出相對于按鍵按下有一定的延時。

2.3.2 從系統輸出波形上驗證

以小字三組為例,該組琴音頻率范圍是1046.5Hz~1975.53 Hz,選取與其中的7個全音對應的按鍵同時按下。由于示波器給出的頻譜結果精確不夠,故利用示波器的數據存儲功能,先導出這7個音和弦的時域波形數據,再用MATLAB做頻譜分析,得到的結果如圖7所示。

由圖7可見,在濾波器的頻帶內含有7根較高的譜線,即7個琴音都通過了音區帶通濾波器,因此實現了和弦的功能。不過帶外仍有少量諧波頻譜存在,這是由7個琴音之間形成的組合頻率干擾,加之濾波器無法達到理想帶通濾波性能所致,但其干擾程度已受到一定的抑制。

圖7 同一音區兩鍵按下時和弦波形及頻譜圖

2.4 濾波器的音質提純功能驗證

2.4.1 帶通濾波器的幅頻特性測試

對帶通濾波器幅頻特性的測試采用信號發生器和示波器進行。以小字三組對應的第7組濾波器為例,濾波器的濾波范圍是1 046.5 Hz~1 975.53 Hz,中心頻率約為1 502 Hz,帶寬約為929 Hz。由信號發生器輸出一個幅度為500 mV,頻率可變的正弦信號,將信號送入濾波器,用示波器觀測其輸出。邊調節正弦信號的頻率,邊觀察與記錄不同頻率輸入信號所對應的輸出信號的幅度,并以此數據用MATLAB畫出其幅頻特性曲線如圖8所示。

圖8 第7組帶通濾波器幅頻特性圖

由圖8可以看出,濾波器中心頻率約為1 500 Hz,且將頻率在1 500 Hz左右的信號放大了1倍,1 000 Hz以下及2 000 Hz以上頻率的信號衰減較大,起到了濾除帶外諧波的作用。

2.4.2 音質提純電路的濾波效果測試

采用示波器分別測CPLD輸出的音頻波形和該音頻信號經過濾波器后的輸出信號,仍以小字三組的最高音頻b3為例,該琴音的實際頻率為1 975.53Hz,測試結果如圖9所示。其中,圖(a)為濾波前的方波信號及濾波后的正弦波信號,從時域波形圖上看,濾波前后頻率一致,且正弦波較理想,濾波效果較好。圖(b)對所得到的正弦波進行了頻譜分析,可見二、三次諧波分量相比基波分量已極其微弱,更高次的諧波分量已經基本上不存在了,顯然,頻域數據也證明了濾波器的濾波效果。

另外,將不通過濾波器發出的聲音與通過濾波器后發出的聲音進行比較,能明顯聽出音質的差異。不接濾波器時聲音比較尖銳刺耳,而接上濾波器后,聲音變得圓潤悅耳。這就從實踐上證明了濾波器設計的有效性。

圖9 濾波器濾波效果圖

3 結束語

本系統采用Altera公司的CPLD芯片EPM1270T144在QuartusⅡ平臺上設計了88鍵電子琴,將電子琴的核心部分集成在了CPLD芯片上,簡化了外圍電路,設計成本較低。理論仿真及實驗測試結果均表明,計數器型消抖電路能很好地消除鍵盤抖動,設計的琴音音色提純濾波器起到了使琴音圓潤悅耳的目的,同時本設計也實現了電子琴的和弦功能。綜上可見,本文設計的電子琴很好地實現了預期設計目標,可為基于CPLD芯片設計電子琴提供有益的理論參考和實踐指導。

[1]任肖麗,王驥.基于STC89C51單片機的電子琴設計[J].電子元器件應用,2010,12(7):27-31.

[2]安雪娥,潘漢懷.基于CPLD的電子琴系統設計[J].信息與電腦,2009,21(11):25.

[3]姬曄.基于 FPGA的音樂合成器設計[D].吉林:吉林大學,2010

[4]張卿.基于FPGA的音樂演奏電路及電子琴的設計[J].現代經濟信息,2009(16):285-287

[5]劉延飛.基于Altera FPGA/CPLD的電子系統設計及工程實踐[M].北京:人民郵電出版社,2009:1-17.

[6]付永慶.VHDL語言及其應用[M].北京:高等教育出版社,2005:55-56,133-138,171-173.

[7]張友木.基于VHDL語言的幾種消抖電路的設計[J].山西電子技術,2011(1):1674-4578

[8]候繼紅.基于VHDL語言的按鍵消抖電路設計及仿真[J].現代電子技術,2009(23):201-202

[9]許德成.基于FPGA的按鍵消抖動設計[J].吉林師范大學學報(自然科學版),2009(4):154-156

[10]楊振江,余進.多用途有源濾波器UAF42的應用[J].電子技術應用,1997,7(9):47-49

[11]謝紅.模擬電子技術基礎[M].哈爾濱:哈爾濱工程大學出版社,2002:226-228.

[12]徐剛.Altera QuartusⅡ軟件使用教程[Z].芳園電子工作室,2006.

猜你喜歡
信號設計
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
孩子停止長個的信號
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
基于LabVIEW的力加載信號采集與PID控制
一種基于極大似然估計的信號盲抽取算法
主站蜘蛛池模板: 99无码中文字幕视频| 国产女人18水真多毛片18精品| 国产自在线播放| 无码在线激情片| 欧美日韩在线国产| 伊人五月丁香综合AⅤ| 亚洲男人天堂2020| 欧美翘臀一区二区三区| 天堂网亚洲系列亚洲系列| 国产69囗曝护士吞精在线视频| 欧美精品啪啪一区二区三区| 国产精品浪潮Av| 亚洲国产91人成在线| av无码一区二区三区在线| 国产精品第5页| 最新国产高清在线| 国产精品太粉嫩高中在线观看| 亚洲三级视频在线观看| 亚洲精品在线观看91| 中文字幕 欧美日韩| 2020精品极品国产色在线观看| 无码电影在线观看| 国产成人综合网| 无码区日韩专区免费系列| 日韩精品中文字幕一区三区| 无码免费视频| 成人在线综合| 国产欧美专区在线观看| 国产经典在线观看一区| 欧美黄色网站在线看| 久久久久久久蜜桃| 亚洲天堂网在线观看视频| 国产精品开放后亚洲| 精品成人一区二区三区电影 | 91尤物国产尤物福利在线| 欧美区一区| 国产在线精品人成导航| 91啦中文字幕| 亚洲男人天堂久久| 久久综合色视频| 久久久四虎成人永久免费网站| 国产成人精品三级| 97久久人人超碰国产精品| 中文字幕 91| 久久久受www免费人成| 2020久久国产综合精品swag| 亚洲成年网站在线观看| 欧美亚洲另类在线观看| 午夜福利无码一区二区| 88国产经典欧美一区二区三区| 國產尤物AV尤物在線觀看| 久久一日本道色综合久久| h网址在线观看| 无码视频国产精品一区二区| 国国产a国产片免费麻豆| 97国产精品视频自在拍| 国产精品黑色丝袜的老师| 在线综合亚洲欧美网站| 92精品国产自产在线观看| 欧美精品成人一区二区在线观看| 亚洲欧美日韩另类在线一| 色九九视频| 国产在线精品美女观看| 有专无码视频| 亚洲香蕉在线| 国产免费福利网站| 亚洲国产午夜精华无码福利| 日韩国产高清无码| 国产xxxxx免费视频| 日韩成人在线网站| 亚洲精品国偷自产在线91正片| 六月婷婷激情综合| 欧美一级99在线观看国产| 亚洲精品男人天堂| 一级毛片免费不卡在线| 99视频精品在线观看| 毛片久久网站小视频| 91激情视频| 热这里只有精品国产热门精品| 亚洲国产日韩欧美在线| 日本国产精品一区久久久| 区国产精品搜索视频|