彭其圣,彭建盛,徐 詠
(1.中南民族大學 電子信息工程學院,武漢 430074;2.河池學院 物理與電子工程系,宜州 412400)
目前電子琴朝著種類繁多、體積小、演奏攜帶方便、價格低廉的方向發展。傳統的電子琴由于其設計復雜,成本高昂,無法抵御惡劣外界環境需要經常保養,而家用電子琴的音色和靈敏度又達不到專業電子琴的需求。因此,降低成本,方便攜帶,功能齊全,又能達到專業電子琴音質的電子琴成為了擺在電子琴設計者面前的首要任務。要設計出一款廉價的、高質的、娛樂性強和方便攜帶的受普通老百姓歡迎的電子琴,高質廉價的處理器的選擇成為了關鍵,而PSoC3恰恰能完成這些要求[1,2]。本系統基于PSoC3實現的多功能、多音階電子琴設計。該設計具有外圍電路簡單,系統原理清晰,易于調試與實現,成本廉價,功耗低,開發周期短,使用壽命長等特點[3,4]。
系統選用了CY8C3866AXI的PSoC3芯片,其實現了如Capsense Button and Silder、DAC音頻輸出、演奏錄制/回放、調速/音量大部分功能等,音頻功放由LM386實現,Nokia5110 LCD負責顯示部分,LM2575負責整個系統供電等。基于PSoC3的多功能電子琴設計,要求既能達到價格低廉,播放和演奏高音質,功能齊全,又能具有便攜時尚功能的電子琴。基于以上的要求我們采用了如圖1所示的結構進行設計。

圖1 系統結構圖
系統的工作原理如下:為方便PSoC3的內置8位DAC產生相應音色的樂音波形和定時計數器Timer2控制樂音的節拍,首先,將各音色波形圖和常用音樂節拍數字化保存;其次,將需要播放和演奏的音樂的音符和節拍保存在數組中,根據數組的值算出定時計數器的初值并保存;通過觸摸感應檢測和液晶顯示進行人機通信,實現對電子琴的多功能控制;當播放音樂時,定時計數器工作,控制DAC產生樂音波形,樂音波形經功放電路驅動揚聲器產生優質的樂音。
PSoC3的CY8C38系列芯片具有多器件集成性,這樣既避免了復雜的連線,又減少了外圍器件的使用,降低了設計成本,提高了可靠性與精確性,大大減小了電子琴的體積;而且該芯片內還集成了觸摸感應設計,可以自由的對按鍵和滑動條等進行設計,觸摸感應設計增加了電子琴抵御外界干擾的特性,提高了控制靈敏度,并且在觸摸新潮下的觸摸設計更能得到大眾用戶群的喜愛。
系統中PSoC3所配置的內部硬件資源包括2個定時計數器Timer,1個8位的電壓型數模轉化器VDAC8、1個可變增益放大器PGA、1個電壓跟隨器Opamp,17個觸摸感應按鍵,1組觸摸感應滑動條和1個Nokia5110液晶顯示模塊[5]。具體配置如圖2所示。

圖2 PSoC3內部資源配置圖

圖3 Capsense模塊原理圖

圖4 觸摸感應鍵盤原理圖
PSoC3的觸摸感應采用了一種Delta-Sigma調制器(CSD)的電容式感測方法[6]。使用PSoC3的觸摸感應使設計人員在短短幾分鐘內就能實現觸摸感應按鍵和滑條的功能,而且無需編寫任何代碼。本設計由17個電容式觸摸按鍵構成觸摸鍵盤和5個電容式觸摸按鍵構成觸摸感應滑動條,使用兩個通道掃描觸摸感應。本系統中,Capsense模塊原理如圖3所示,在8位分辨率、24MHz采集速率、雙通道、高速掃描的Capsense模式下,如果Sensor采集的感應值大于195則認為有觸摸感應, 否則PSoC3認為沒有觸摸感應。本設計觸摸感應鍵盤原理圖如圖4所示。
電子琴顯示模塊主要實現菜單顯示功能和操作提醒顯示功能,用戶需要通過該可視化顯示模塊來設置和發送所需要的播放、演奏、音色選取、錄音功能、當前音樂狀態等功能。可見顯示模塊如此之重要,為此該設計選用由NOKIA公司生產的由84x48 的點陣組成的LPH7366 LCD,其體積很小,采用低電壓供電,功耗低且具有掉電模式等特點。由此模塊將PSoC3的實時信息傳達給用戶,連接PSoC3的原理圖如圖5所示。

圖5 系統主界面
音頻功放模塊主要用于將電子琴的音頻信號進行無失真的放大讓用戶聽到最高保真的聲音,所以該設計使用美國國家半導體公司生產的LM386音頻功率放大器。LM386工作的原理圖如圖6所示,將CY8C3866的樂音輸出信號經電位器分壓后送入功放模塊的正向輸入端進行放大后由Vout輸出,通過1腳和8腳之間電容和電位器調節放大倍數[7]。

圖6 音頻功放原理圖
系統程序設計是在賽普拉斯半導體公司的PSoC Creator集成開發環境中進行的。使用PSoC Creator,是根據應用需求進行設計,而不受目標器件的限制。PSoC Creator集成開發環境為每個模塊的應用提供了許多API和中斷服務程序ISR ,當編寫應用程序時只需調用這些函數,即可實現該模塊的功能。
從系統上電后,各模塊和變量進行初始化,初始化成功后進入觸摸感應掃描,當掃描返回值為13、14、15、16、17時,相應的進入音樂演奏模式,音樂播放1、2、3模式,次級菜單,掃描返回值是除以上其他值時,系統進入定時和刷新標志位檢測,當檢測到有效標志位時執行顯示刷新和模塊重置,當標志位無效或執行顯示刷新和模塊重置后,系統進入待機模式,在此模式下,系統仍然進行Capsense掃描和相關標志位檢測,如圖7所示。

圖7 主菜單程序框圖
次級菜單主要是完成各模塊功能的設置,與主菜單的程序設計思路類似,如圖8所示。從主菜單進入次級菜單后,首先進行Capsense掃描,當掃描返回值為分別為13、14、15、16、17時,系統相應的進入設置播放速度模式、設置播放音量模式、設置演奏錄制模式、播放演奏音樂模式和系統返回主菜單;當掃描返回值是除以上的其他值時,系統進行刷新標志位檢測,當標志位有效時進行顯示刷新,否則系統進入待機模式,當執行顯示刷新后系統也進入待機模式,在此模式下,系統仍然進行Capsense掃描和刷新標志位檢測。

圖8 次級菜單程序框圖
通過實物測試,本設計已達到了預期的相關技術指標,既克服設計復雜、成本高昂、無法抵御惡劣外界環境需要經常保養等困難,又提高音色和靈敏度。對比傳統的單片機系統,本設計進一步突出了外圍硬件電路簡單、操作方便、節能、便攜、成本低廉、開發周期短、生命周期長和性能穩定等特點,且體現了觸摸設計新穎時尚、靈敏度高、抗干擾能力強和系統演奏樂曲效果良好,具有較高的實用價值和開發前景,具有廣泛的市場應用前景。
[1] 韓改寧. 基于AT89C52實現簡單音樂發生器[J]. 電腦知識與技術, 2009(2): 354-355.
[2] 舒紅波, 李蔚, 王治國. 用單片機實現各音色電子琴[J].控制工程, 2004(S1): 117-118.
[3] 徐開蕓, 劉蘭英, 金永良. PSoC在針織機械設備電氣控制系統中的應用[J]. 制造業自動化, 20120(10): 43-45.
[4] 朱明程, 李曉濱. PSoC原理與應用設計[M]. 北京: 機械工業出版社, 2008.
[5] 何賓. 可編程片上系統PSoC設計指南[M]. 北京: 化學工業出版社, 2011.
[6] 劉織財, 萬選明. CapSense電容觸摸感應技術的原理及應用[J]電子制作, 2011(12): 66-69.
[7] 童詩白, 華成英. 模擬電子技術基礎(第4版)[M]. 北京: 高等教育出版社, 2006.