新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 音樂播放控制電路設計方案

        音樂播放控制電路設計方案

        作者: 時間:2011-07-02 來源:網絡 收藏

        2.2 音長控制

          曲譜存儲單元的數據輸出時間是時值計數脈沖的一個周期,決定了該單元音符的持續時間。所以,與計數脈沖周期相同時值的音符為音長的度量單位,其音符碼占1個存儲單元。其他音符根據其時值長短占據不同數量的存儲單元。比如,若以8分音符的時值作為存儲器地址計數器的脈沖周期,則8分音符碼占 1個存儲單元,4分音符占2個存儲單元,2分音符占4個存儲單元,以此類推。

          因此,可以所選曲譜的最短音符作為時值的度量單位。比如,圖3所示的《梁祝》曲譜中最短的音符為8分音,若其編碼存放1個存儲單元,則時值計數脈沖周期為一個8分音長時間,可選O.5 s。曲譜中的四分音符碼需要存放2個單元,一拍延長音也需要2個單元。該段曲譜有8個音節,每個音節是一個全音(8個8分音),演奏總時值為8×8個8分音。所以,存儲曲譜編碼的存儲器需要64個存儲單元。

          2.3 音強控制

          音的強度也稱音的力度,體現了樂曲的情感元素。由于本設計實現的是簡單的電子音樂播放,無法表現音強的不同。而且,參考方案還不能區別相同音高的音符連續與否。比如,兩個八分音符“11”的總時值與一個四分音符“1”的時值相同,但體現的樂聲是不同的。前者是兩個強8分音,而后者可以認為是一個強8分音和一個弱8分音構成。為了解決這個問題,可以在連續的相同強音間加一個極短促的間斷區別兩者的不同,間斷時間可以是幾個毫秒。這樣,在音符編碼中應該有一位碼控制。

          如果間斷音碼單獨占1個存儲單元,可設置間斷音標志,控制時值計數器狀態為間斷信息單元地址時計數頻率改變,使間斷碼輸出的時間為間斷音長;如果間斷音碼與強音碼存放同一單元,可觸發數字單穩態電路產生問斷控制信號EN。

        2.4 樂曲的循環播放控制

          為了實現樂曲的循環播放,應該在樂曲結束時使曲譜表的查表地址回到初始值。可在曲譜表的最后一個單元中存放一個結束符,結束符的編碼可以利用音程碼的冗余碼。電路采用邏輯門對音程碼進行判斷,當出現結束符碼時控制時值計數器復位,樂曲重新開始演奏。

        2.5 曲譜編碼舉例

          設音符的6位二進制編碼中,最高位為間斷音控制,中間2位為音程碼,最低3位為音名碼。每個8分音存放于1個存儲單元,四分音符碼占2個存儲單元。若音名碼用其簡譜數符對應的二進制碼表示,而低、中、高三個音程分別用"01”,“00",“10”三組碼表示,“11”為結束符碼,則圖3曲譜碼存儲表如表2 所示。表中6位二進制音符碼用2位八進制數表示。

        分頻器相關文章:分頻器原理
        蜂鳴器相關文章:蜂鳴器原理


        關鍵詞: 電子技術 FPGA ROM

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 卓尼县| 耒阳市| 青田县| 邵阳市| 时尚| 太仓市| 海南省| 龙江县| 泰和县| 石狮市| 淮南市| 泾源县| 高州市| 五原县| 清徐县| 汽车| 即墨市| 镇康县| 兴山县| 承德市| 怀化市| 迭部县| 安丘市| 西安市| 浮山县| 宣城市| 金沙县| 大埔区| 左云县| 武平县| 沂水县| 丰原市| 杭锦旗| 乌审旗| 友谊县| 平泉县| 剑川县| 阳春市| 宜黄县| 东丰县| 蒲城县|