音樂播放控制電路設(shè)計(jì)方案
2.2 音長(zhǎng)控制
曲譜存儲(chǔ)單元的數(shù)據(jù)輸出時(shí)間是時(shí)值計(jì)數(shù)脈沖的一個(gè)周期,決定了該單元音符的持續(xù)時(shí)間。所以,與計(jì)數(shù)脈沖周期相同時(shí)值的音符為音長(zhǎng)的度量單位,其音符碼占1個(gè)存儲(chǔ)單元。其他音符根據(jù)其時(shí)值長(zhǎng)短占據(jù)不同數(shù)量的存儲(chǔ)單元。比如,若以8分音符的時(shí)值作為存儲(chǔ)器地址計(jì)數(shù)器的脈沖周期,則8分音符碼占 1個(gè)存儲(chǔ)單元,4分音符占2個(gè)存儲(chǔ)單元,2分音符占4個(gè)存儲(chǔ)單元,以此類推。
因此,可以所選曲譜的最短音符作為時(shí)值的度量單位。比如,圖3所示的《梁祝》曲譜中最短的音符為8分音,若其編碼存放1個(gè)存儲(chǔ)單元,則時(shí)值計(jì)數(shù)脈沖周期為一個(gè)8分音長(zhǎng)時(shí)間,可選O.5 s。曲譜中的四分音符碼需要存放2個(gè)單元,一拍延長(zhǎng)音也需要2個(gè)單元。該段曲譜有8個(gè)音節(jié),每個(gè)音節(jié)是一個(gè)全音(8個(gè)8分音),演奏總時(shí)值為8×8個(gè)8分音。所以,存儲(chǔ)曲譜編碼的存儲(chǔ)器需要64個(gè)存儲(chǔ)單元。
2.3 音強(qiáng)控制
音的強(qiáng)度也稱音的力度,體現(xiàn)了樂曲的情感元素。由于本設(shè)計(jì)實(shí)現(xiàn)的是簡(jiǎn)單的電子音樂播放,無(wú)法表現(xiàn)音強(qiáng)的不同。而且,參考方案還不能區(qū)別相同音高的音符連續(xù)與否。比如,兩個(gè)八分音符“11”的總時(shí)值與一個(gè)四分音符“1”的時(shí)值相同,但體現(xiàn)的樂聲是不同的。前者是兩個(gè)強(qiáng)8分音,而后者可以認(rèn)為是一個(gè)強(qiáng)8分音和一個(gè)弱8分音構(gòu)成。為了解決這個(gè)問題,可以在連續(xù)的相同強(qiáng)音間加一個(gè)極短促的間斷區(qū)別兩者的不同,間斷時(shí)間可以是幾個(gè)毫秒。這樣,在音符編碼中應(yīng)該有一位碼控制。
如果間斷音碼單獨(dú)占1個(gè)存儲(chǔ)單元,可設(shè)置間斷音標(biāo)志,控制時(shí)值計(jì)數(shù)器狀態(tài)為間斷信息單元地址時(shí)計(jì)數(shù)頻率改變,使間斷碼輸出的時(shí)間為間斷音長(zhǎng);如果間斷音碼與強(qiáng)音碼存放同一單元,可觸發(fā)數(shù)字單穩(wěn)態(tài)電路產(chǎn)生問斷控制信號(hào)EN。
2.4 樂曲的循環(huán)播放控制
為了實(shí)現(xiàn)樂曲的循環(huán)播放,應(yīng)該在樂曲結(jié)束時(shí)使曲譜表的查表地址回到初始值。可在曲譜表的最后一個(gè)單元中存放一個(gè)結(jié)束符,結(jié)束符的編碼可以利用音程碼的冗余碼。電路采用邏輯門對(duì)音程碼進(jìn)行判斷,當(dāng)出現(xiàn)結(jié)束符碼時(shí)控制時(shí)值計(jì)數(shù)器復(fù)位,樂曲重新開始演奏。
2.5 曲譜編碼舉例
設(shè)音符的6位二進(jìn)制編碼中,最高位為間斷音控制,中間2位為音程碼,最低3位為音名碼。每個(gè)8分音存放于1個(gè)存儲(chǔ)單元,四分音符碼占2個(gè)存儲(chǔ)單元。若音名碼用其簡(jiǎn)譜數(shù)符對(duì)應(yīng)的二進(jìn)制碼表示,而低、中、高三個(gè)音程分別用"01”,“00",“10”三組碼表示,“11”為結(jié)束符碼,則圖3曲譜碼存儲(chǔ)表如表2 所示。表中6位二進(jìn)制音符碼用2位八進(jìn)制數(shù)表示。
分頻器相關(guān)文章:分頻器原理 蜂鳴器相關(guān)文章:蜂鳴器原理
評(píng)論