




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGE11PAGE11成績(jī)
指導(dǎo)教師:
成績(jī)指導(dǎo)教師:《EDA技術(shù)與實(shí)驗(yàn)》課程設(shè)計(jì)題目:基于EDA技術(shù)的樂(lè)曲演奏電路的設(shè)計(jì)姓名:院系:電子信息工程系專(zhuān)業(yè):通信工程班級(jí):通信102學(xué)號(hào):指導(dǎo)教師:2012年12月基于EDA技術(shù)的樂(lè)曲演奏電路的設(shè)計(jì)摘要:此次設(shè)基于EDA技術(shù),通過(guò)對(duì)輸入脈沖的分對(duì)不同音符(高、中、低音)的控制,通過(guò)計(jì)數(shù)來(lái)實(shí)現(xiàn)對(duì)不同音符所持續(xù)時(shí)間長(zhǎng)短的控制;通過(guò)Verilog語(yǔ)言來(lái)編程來(lái)實(shí)現(xiàn)樂(lè)曲演奏電路及揚(yáng)聲器的模擬,最后利用對(duì)Max+plusⅡ軟件的仿真的時(shí)序波形圖的額分析來(lái)完成“歡樂(lè)頌”片段的演奏。關(guān)鍵字:EDA;樂(lè)曲演奏;Verilog語(yǔ)言;Max+plusⅡ軟件前言EDA是英文“ElectronicsDesignAutomation(電子設(shè)計(jì)自動(dòng)化)”的縮寫(xiě)。EDA技術(shù)是近幾年迅速發(fā)展起來(lái)的計(jì)算機(jī)軟件、硬件和微電子交叉的現(xiàn)代電子設(shè)計(jì)學(xué)科,是現(xiàn)代電子工程領(lǐng)域的一門(mén)新技術(shù).它是以可編程邏輯器件(PLD)為物質(zhì)基礎(chǔ),以計(jì)算機(jī)為工作平臺(tái),以EDA工具軟件為開(kāi)發(fā)環(huán)境,以硬件描述語(yǔ)言(HDL)作為電子系統(tǒng)功能描述的主要方式,以電子系統(tǒng)設(shè)計(jì)為應(yīng)用方向的電子產(chǎn)品自動(dòng)化設(shè)計(jì)過(guò)程.【1】目前以硬件描述語(yǔ)言(Verilog或VHDL)所完成的電路設(shè)計(jì),可以經(jīng)過(guò)簡(jiǎn)HYPERLINK”http:///albums/51371/51371.html#0$734f12f3d4b952d80a46e0a3"單的綜合與布局,快速的燒錄至FPGA上進(jìn)行測(cè)試,是現(xiàn)代IC設(shè)計(jì)驗(yàn)證的技術(shù)主流。【2】超高速集成電路硬件描述語(yǔ)言VHDL是HDL的一種,是一種標(biāo)準(zhǔn)化程度較高的硬件描述語(yǔ)言,主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。進(jìn)入到21世紀(jì)后,EDA技術(shù)得到了更快的發(fā)展,開(kāi)始步入了一個(gè)新的時(shí)期,突出地表現(xiàn)在以下幾個(gè)方面:電子技術(shù)各個(gè)領(lǐng)域全方位融入EDA技術(shù),除了日益成熟的數(shù)字技術(shù)外,可編程模擬器件的設(shè)計(jì)技術(shù)也有了很大的進(jìn)步。EDA技術(shù)使得電子領(lǐng)域各學(xué)科的界限更加模糊,它們相互滲透和包容,如模擬與數(shù)字、軟件和硬件、系統(tǒng)和器件、ASIC與FPGA、行為與結(jié)構(gòu)等,軟、硬協(xié)同設(shè)計(jì)技術(shù)也成為EDA技術(shù)的一個(gè)發(fā)展方向。IP核在電子設(shè)計(jì)領(lǐng)域得到了廣泛的應(yīng)用,基于IP核的SOC設(shè)計(jì)技術(shù)趨向成熟,電子設(shè)計(jì)成果的可重用性進(jìn)一步提高。嵌入式微處理器軟核的出現(xiàn),更大規(guī)模的FPGA/CPLD器件的不斷推出,使得可編程芯片系統(tǒng)步入實(shí)用化階段,在一片F(xiàn)PGA芯片中實(shí)現(xiàn)一個(gè)完備的系統(tǒng)已成為可能。用FPGA器件實(shí)現(xiàn)完備硬件的數(shù)字信號(hào)處理成為可能,用純數(shù)字邏輯進(jìn)行DSP模塊的設(shè)計(jì),使得高速DSP實(shí)現(xiàn)成為現(xiàn)實(shí),并有力地推動(dòng)了軟件無(wú)線(xiàn)電技術(shù)的實(shí)用化?;贔PGA的DSP技術(shù)為高速數(shù)字信號(hào)處理算法提供了實(shí)現(xiàn)途徑。在設(shè)計(jì)和仿真兩方面支持標(biāo)準(zhǔn)硬件描述語(yǔ)言的EDA軟件不斷推出,系統(tǒng)級(jí)、行為驗(yàn)證級(jí)硬件描述語(yǔ)言的出現(xiàn)使得復(fù)雜電子系統(tǒng)的設(shè)計(jì)和驗(yàn)證更加高效。在一些大型的系統(tǒng)設(shè)計(jì)中,設(shè)計(jì)驗(yàn)證工作非常艱巨,這些高效的EDA工具的出現(xiàn)減輕了開(kāi)發(fā)人員的工作量。Max+plusⅡ是http:///view/333155.htm"可編程邏輯器件的供應(yīng)商之一。Max+plusⅡ界面友好,使用便捷,被譽(yù)為業(yè)界最易用易學(xué)的EDA片段.按照?qǐng)D一樂(lè)譜,設(shè)計(jì)相應(yīng)電路控制speaker信號(hào)的方波頻率,某一頻率持續(xù)時(shí)間長(zhǎng)短,各頻率間間隔大小,就可以推動(dòng)小揚(yáng)聲器演奏樂(lè)曲.圖一“歡樂(lè)頌”樂(lè)譜片段2.2設(shè)計(jì)方案比較方案一:由單片機(jī)MSP430F149來(lái)實(shí)現(xiàn)樂(lè)曲演奏電路的設(shè)計(jì),外圍電源采用+3V電源供電,時(shí)鐘有8MHz的晶振產(chǎn)生,中央處理器由MS430F149單片機(jī)來(lái)完成,樂(lè)曲演奏狀態(tài)由七段數(shù)碼管來(lái)模擬。這種方案,結(jié)構(gòu)簡(jiǎn)單容易掌握,各部分電路實(shí)現(xiàn)起來(lái)都非常容易,在傳統(tǒng)的樂(lè)曲演奏設(shè)計(jì)中也應(yīng)用得較為廣泛,技術(shù)成熟。其原理框圖見(jiàn)圖二。圖二單片機(jī)原理實(shí)現(xiàn)框圖方案二:基于現(xiàn)場(chǎng)可編程門(mén)陣列FPGA,通過(guò)EDA技術(shù)。采用VHDL超高速集成電路硬件描述語(yǔ)言實(shí)現(xiàn)樂(lè)曲演奏電路設(shè)計(jì)。3程序設(shè)計(jì)思想3。1分頻電路產(chǎn)生不同頻率方波;3。2利用計(jì)數(shù)器實(shí)現(xiàn)speaker信號(hào)頻率選擇,某一頻率持續(xù)時(shí)間長(zhǎng)短,各頻率間間隔大小,其原理框圖見(jiàn)圖三。圖三樂(lè)曲演奏電路原理框圖通過(guò)方案一二的比較,可以看出方案一的設(shè)計(jì)使用分立元件電路較為多,因此會(huì)增加電路調(diào)試難度,且電路的不穩(wěn)定性也會(huì)隨之增加,而采用FPGA芯片實(shí)現(xiàn)的電路,由于在整體性上較好,在信號(hào)處理和整個(gè)系統(tǒng)的控制中,F(xiàn)PGA的方案能大大縮減電路的體積,提高電路的穩(wěn)定性。此外其先進(jìn)的開(kāi)發(fā)工具使整個(gè)系統(tǒng)的設(shè)計(jì)調(diào)試周期大大縮短,一般來(lái)講,同樣的邏輯,基于FPGA要比基于單片機(jī)要快很多,因?yàn)樗鼈児ぷ鞯脑硎峭耆煌摹纹瑱C(jī)是基于指令工作的,同樣的激勵(lì)到達(dá)單片機(jī)后,單片機(jī)首先要判斷,然后讀取相應(yīng)的指令,最后做出響應(yīng),每一步都是需要在單片機(jī)的時(shí)鐘驅(qū)動(dòng)下一步步的進(jìn)行。而基于FPGA則是把相應(yīng)的邏輯“暫時(shí)”固化為硬件電路,它對(duì)激勵(lì)作出的響應(yīng)速度是電信號(hào)從FPGA的一個(gè)管腳傳播到另一個(gè)管腳的傳播速度,當(dāng)然這指的是異步邏輯,同時(shí)電信號(hào)也要在芯片內(nèi)進(jìn)行一些柵電容的充放電動(dòng)作,但這些動(dòng)作都是非常非常快的。結(jié)合本設(shè)計(jì)的要求及綜合以上比較的情況,我們選擇了基于FPGA的樂(lè)曲演奏電路的方案。4設(shè)計(jì)過(guò)程4.1樂(lè)曲演奏的原理組成樂(lè)曲的每個(gè)音符的頻率值(音調(diào))及其持續(xù)的時(shí)間(音長(zhǎng))是樂(lè)曲能持續(xù)演奏所需的兩個(gè)基本數(shù)據(jù),因此只要控制輸出到揚(yáng)聲器的激勵(lì)信號(hào)的頻率高低和持續(xù)時(shí)間,就可以使揚(yáng)聲器發(fā)出連續(xù)的樂(lè)曲聲。首先來(lái)看怎樣控制音調(diào)的高低變化。4。2音調(diào)的控制頻率的高低決定了音調(diào)的高低。音樂(lè)的十二平均率規(guī)定:每?jī)蓚€(gè)八度音之間的頻率相差一倍.在兩個(gè)八度音之間,又可分為12個(gè)半音,每?jī)蓚€(gè)半音的頻率比為.另外,音名A的頻率為440HZ,音名B和C之間、E和F之間為半音,其余為全音。由此可以計(jì)算出簡(jiǎn)譜中從低音1到高音1之間每個(gè)音名對(duì)應(yīng)的頻率如表1所示。表1簡(jiǎn)譜中的音名與頻率的關(guān)系音名頻率/Hz音名頻率/Hz音名頻率/Hz低音1261。6中音1523。3高音11046。5低音2293.7中音2587.3高音21174。7低音3329。6中音3659.3高音31318。5低音4349。2中音4698。5高音41396。9低音5392中音5784高音51568低音6440中音6880高音61760低音7493。9中音7987.8高音71975。5所有不同頻率的信號(hào)都是從同一個(gè)基準(zhǔn)頻率分頻得到的。由于音階頻率多為非整數(shù),而分頻系數(shù)又不能為小數(shù),故必須將計(jì)算得到的分頻數(shù)四舍五入取整。若基準(zhǔn)頻率過(guò)低,則由于分頻比太小,四舍五入取整后的誤差較大.若基準(zhǔn)頻率過(guò)高,雖然誤差變小,但分頻數(shù)將變大。實(shí)際的設(shè)計(jì)中應(yīng)綜合考慮這兩個(gè)方面的因素,在盡量減小頻率誤差的前提下取合適的基準(zhǔn)頻率。本例中選取6MHz為基準(zhǔn)頻率。若無(wú)6MHz的時(shí)鐘頻率,則可以先分頻得到6MHz或換一個(gè)新的基準(zhǔn)頻率。實(shí)際上只要各個(gè)音名間的相對(duì)頻率關(guān)系不變,C作1與D作1演奏出的音樂(lè)聽(tīng)起來(lái)都不會(huì)“走調(diào)".表2各音階頻率對(duì)應(yīng)的分頻比及預(yù)置數(shù)音名分頻比預(yù)置數(shù)音名分頻比預(yù)置數(shù)低音576538730中音3455211831低音668189565中音5382712556中音1573610647中音6340912974中音2511111272高音1286713516這里需要演奏的是“歡樂(lè)頌”樂(lè)曲,該樂(lè)曲各音階頻率及相應(yīng)的分頻比如表2所示,為了減少輸出的偶次諧波分量,最后輸出到揚(yáng)聲器的波形應(yīng)為對(duì)稱(chēng)方波,因此在到達(dá)揚(yáng)聲器之前,有一個(gè)二分頻的分頻器。表2中的分頻比就是從6MHz頻率二分頻得到的3MHz頻率基礎(chǔ)上計(jì)算得出的。如果用正弦波代替對(duì)稱(chēng)方波來(lái)驅(qū)動(dòng)揚(yáng)聲器將會(huì)有更好的效果。從表2可以看出,最大的分頻系數(shù)7653,故采用14位二進(jìn)制計(jì)數(shù)器分頻可滿(mǎn)足需要。在表2中,除了給出了分頻比以外,還給出了對(duì)應(yīng)于各個(gè)音階頻率時(shí)計(jì)數(shù)器不同的預(yù)置數(shù).對(duì)于不同的分頻系數(shù),只要加載不同的預(yù)置數(shù)即可。采用加載預(yù)置數(shù)實(shí)現(xiàn)分頻的方法比采用反饋復(fù)零法節(jié)省資源,實(shí)現(xiàn)起來(lái)也容易一些。此外,對(duì)于樂(lè)曲中的休止符,只要將分頻系數(shù)設(shè)為0,即初始值為即可,此時(shí)揚(yáng)聲器將不會(huì)發(fā)聲。4.3音長(zhǎng)的控制音符的持續(xù)時(shí)間應(yīng)根據(jù)樂(lè)曲的速度及每個(gè)音符的節(jié)拍數(shù)來(lái)確定。設(shè)計(jì)中演奏的歡樂(lè)頌片段,最短的音符為四分音符,在我的設(shè)計(jì)中則只需要再提供一個(gè)4MHz的時(shí)鐘頻率即可產(chǎn)生四分音符的時(shí)長(zhǎng).圖三所示的樂(lè)曲演奏電路的原理框圖,其中,樂(lè)譜產(chǎn)生電路用來(lái)控制音樂(lè)的音調(diào)和音長(zhǎng)??刂埔粽{(diào)通過(guò)設(shè)置計(jì)數(shù)器的預(yù)置數(shù)來(lái)實(shí)現(xiàn),預(yù)置不同的數(shù)值就可以使計(jì)數(shù)器產(chǎn)生不同頻率的信號(hào),從而產(chǎn)生不同的音調(diào)??刂埔糸L(zhǎng)是通過(guò)控制計(jì)數(shù)器預(yù)置數(shù)的停留時(shí)間來(lái)實(shí)現(xiàn)的,預(yù)置數(shù)停留的時(shí)間越長(zhǎng),則該音符演奏的時(shí)間越長(zhǎng)。每個(gè)音符的演奏時(shí)間都是0。25us的整數(shù)倍,對(duì)于節(jié)拍較長(zhǎng)的音符,如二分音符,在記譜時(shí)將該音名連續(xù)記錄兩次即可.音名顯示電路用來(lái)顯示樂(lè)曲演奏時(shí)應(yīng)的音符.可以用三個(gè)數(shù)碼管分別顯示高、中、低音名,實(shí)現(xiàn)演奏的動(dòng)態(tài)顯示,十分直觀(guān).在本設(shè)計(jì)中,HIGH[3:0]、MID[3:0]、LOW[3:0]等信號(hào)分別用于顯示高音、中音和低音音符。為了使演奏能循環(huán)進(jìn)行,需另外設(shè)置一個(gè)時(shí)長(zhǎng)計(jì)數(shù)器,當(dāng)樂(lè)曲演奏完成時(shí),保證能自動(dòng)從頭開(kāi)始演奏。4.4程序代碼modulehuanlesong(clk_6MHz,clk_4MHz,speaker,high,mid,low);inputclk_6MHz,clk_4MHz;//clk_4MHz:用于控制音長(zhǎng)(節(jié)拍)的時(shí)鐘頻率;//clk_6MHz:用于產(chǎn)生各種音階頻率的基準(zhǔn)頻率;outputspeaker;//speaker:用于揚(yáng)聲器的輸出信號(hào),在此設(shè)計(jì)中為方波信號(hào)output[3:0]high,mid,low;//high,med,low:分別用于顯示高音、中音和低音音符,各驅(qū)動(dòng)一個(gè)數(shù)碼管來(lái)顯示regspeaker;reg[3:0]high,mid,low;reg[7:0]counter;reg[13:0]divider,origin;wirecarry;assigncarry=(divider==16383);always@(posedgeclk_6MHz)beginif(carry)divider〈=origin;//如果divider==16383則執(zhí)行這個(gè)elsedivider<=divider+1;//如果if語(yǔ)句不成立則執(zhí)行這個(gè)endalways@(posedgecarry)beginspeaker〈=~speaker;end//用非阻塞取反,避免引起自激always@(posedgeclk_4MHz)begincase({high,mid,low})’b000000000110:origin<=9565;低音6的分預(yù)置數(shù)’b000000000101:origin〈=8730;低音5的分預(yù)置數(shù)'b000001100000:origin<=12974;中音6的分預(yù)置數(shù)'b000001010000:origin〈=12556;中音5的分預(yù)置數(shù)'b000000110000:origin〈=11831;中音6的分預(yù)置數(shù)'b000000100000:origin<=11272;中音2的分預(yù)置數(shù)'b000000010000:origin<=10647;中音1的分預(yù)置數(shù)’b000100000000:origin〈=13516;高音1的分預(yù)置數(shù)'b000000000000:origin<=16383;揚(yáng)聲器將不會(huì)發(fā)聲時(shí)的endcaseendalways@(posedgeclk_4MHz)beginif(counter==71)counter〈=0;elsecounter<=counter+1;//計(jì)數(shù)器加1case(counter)0:{high,mid,low}<=’b000000110000;//中31:{high,mid,low}〈=’b000000110000;2:{high,mid,low}<='b000001000000;//中43:{high,mid,low}〈='b000001010000;//中54:{high,mid,low}<=’b000001010000;5:{high,mid,low}〈=’b000001000000;6:{high,mid,low}<='b000000110000;7:{high,mid,low}〈=’b000000100000;8:{high,mid,low}〈=’b000000010000;9:{high,mid,low}〈=’b000100010000;10:{high,mid,low}<='b00000100000;11:{high,mid,low}<=’b00000110000;12:{high,mid,low}〈=’b000000110000;13:{high,mid,low}<=’b000000110000;14:{high,mid,low}<='b000000110000;15:{high,mid,low}<='b000000100000;16:{high,mid,low}〈=’b000000100000;//中217:{high,mid,low}〈='b000000100000;18:{high,mid,low}<=’b000000100000;19:{high,mid,low}〈=’b000000110000;20:{high,mid,low}<='b000000110000;//中321:{high,mid,low}〈='b000001000000;22:{high,mid,low}<=’b000001010000;23:{high,mid,low}<='b000001010000;//中524:{high,mid,low}<='b000001000000;//低425:{high,mid,low}〈='b000000110000;//中326:{high,mid,low}〈='b000000100000;//中227:{high,mid,low}〈='b000000010000;28:{high,mid,low}〈='b000000010000;29:{high,mid,low}〈='b000000100000;30:{high,mid,low}<='b000000110000;31:{high,mid,low}〈='b000000100000;//中232:{high,mid,low}<=’b000000100000;33:{high,mid,low}<=’b000000100000;34:{high,mid,low}〈=’b000000010000;35:{high,mid,low}〈='b000000010000;//中136:{high,mid,low}<=’b000000010000;37:{high,mid,low}〈='b000000010000;38:{high,mid,low}〈='b000000100000;//中239:{high,mid,low}〈=’b000000110000;//中340:{high,mid,low}〈='b000001000000;//中441:{high,mid,low}〈='b000000110000;//中342:{high,mid,low}<='b000000010000;//中143:{high,mid,low}〈=’b000000010000;//中244:{high,mid,low}<='b000000110000;//中345:{high,mid,low}〈=’b000001000000;//中446:{high,mid,low}<=’b000000110000;//中347:{high,mid,low}<='b000000100000;//中248:{high,mid,low}〈='b000000010000;49:{high,mid,low}<='b000000100000;//中250:{high,mid,low}<='b000000000101;//低551:{high,mid,low}<='b000000110000;//中352:{high,mid,low}〈='b000000110000;//中353:{high,mid,low}〈=’b000000110000;//中354:{high,mid,low}〈=’b000001000000;//中455:{high,mid,low}<=’b000001010000;//中556:{high,mid,low}〈=’b000001010000;//中557:{high,mid,low}<=’b000001000000;//中458:{high,mid,low}〈='b000000110000;//中359:{high,mid,low}<='b000001000000;//中460:{high,mid,low}〈='b000000100000;//中261:{high,mid,low}<=’b000000010000;//中162:{high,mid,low}〈=’b000000010000;//中163:{high,mid,low}〈=’b000000100000;//中264:{high,mid,low}〈=’b000000110000;//中365:{high,mid,low}〈=’b000000100000;//中266:{high,mid,low}〈='b000000100000;//中267:{high,mid,low}<=’b000000100000;//中268:{high,mid,low}<=’b000000010000;//中169:{high,mid,low}〈=’b000000010000;//中170:{high,mid,low}<=’b000000010000;//中171:{high,mid,low}〈=’b000000010000;//中1endcaseendendmodule4.5樂(lè)譜模塊電路圖如下圖四頂層文件電路圖4.6仿真波形圖如下圖五仿真時(shí)序波形圖4。7模塊電路圖如下圖六頂層文件電路外圍連接圖5仿真波形圖分析在此次設(shè)計(jì)中我所設(shè)計(jì)的是用EDA技術(shù)來(lái)控制一段樂(lè)譜的演奏,如上的仿真波形,輸入有兩個(gè),用CLK_6MHZ來(lái)控制這首歌的音調(diào),CLK_4MHZ的時(shí)鐘頻率可產(chǎn)生四分音符的時(shí)長(zhǎng),音譜會(huì)出現(xiàn)在輸出波形的high,mid,low中,每個(gè)音符要0.25us的時(shí)間,我所設(shè)計(jì)的這段樂(lè)譜要18,15us才能演奏完,如上波形,此時(shí)歌譜中的第二個(gè)1為高音,歌譜中的4和歌譜中的5位低音,其余的為中音,在波形都明確的顯示了出來(lái)。6結(jié)束語(yǔ)在本次設(shè)計(jì)中,我基本完成了本系統(tǒng)設(shè)計(jì)的要求及功能。本設(shè)計(jì)的目的是要求實(shí)現(xiàn)樂(lè)曲演奏的音調(diào)和音長(zhǎng),并且在數(shù)碼管上顯示頻率,最終通過(guò)揚(yáng)聲器產(chǎn)生樂(lè)曲。在設(shè)計(jì)的開(kāi)始我對(duì)樂(lè)曲演奏的原理進(jìn)行了詳細(xì)的分析:對(duì)樂(lè)曲的每個(gè)音符的頻率值(音調(diào))及其持續(xù)的時(shí)間(音長(zhǎng))這兩個(gè)使樂(lè)曲能持續(xù)演奏所需的數(shù)據(jù)進(jìn)行了研究。也對(duì)Max+plusⅡ軟件的功能和使用方法進(jìn)行了多次練習(xí)和研究。通過(guò)本次設(shè)計(jì),在對(duì)EDA這門(mén)技術(shù)上有了更深刻的認(rèn)識(shí),也從實(shí)踐的例子中去感受到了EDA設(shè)計(jì)給我們帶來(lái)的進(jìn)步。不僅掌握了Max+plusⅡ軟件的使用,也鍛煉了自己的思維能力。本次設(shè)計(jì)在功能上只是完成了一些基本功能,對(duì)于電路的可靠性,穩(wěn)定性,準(zhǔn)確性等參數(shù)還未做過(guò)詳細(xì)的測(cè)試,樂(lè)曲的音調(diào)與音長(zhǎng)可能會(huì)稍微有點(diǎn)誤差。參考文獻(xiàn)【1】王金明,冷自強(qiáng).EDA技術(shù)與Verilog設(shè)計(jì)[M]。北京:科學(xué)出版社,2008.【2】江國(guó)強(qiáng)。EDA技術(shù)與應(yīng)用[M]。上海:電子工業(yè)出版社,2007。【3】翁偉鈿,張歆奕。Max+plusⅡ在數(shù)字電路中的應(yīng)用[M]。北京:科學(xué)出版社,2007。附錄本設(shè)計(jì)代碼如下:modulehuanlesong(clk_6MHz,clk_4MHz,speaker,high,mid,low);inputclk_6MHz,clk_4MHz;//clk_4MHz:用于控制音長(zhǎng)(節(jié)拍)的時(shí)鐘頻率;//clk_6MHz:用于產(chǎn)生各種音階頻率的基準(zhǔn)頻率;outputspeaker;//speaker:用于揚(yáng)聲器的輸出信號(hào),在此設(shè)計(jì)中為方波信號(hào)output[3:0]high,mid,low;//high,med,low:分別用于顯示高音、中音和低音音符,各驅(qū)動(dòng)一個(gè)數(shù)碼管來(lái)顯示regspeaker;reg[3:0]high,mid,low;reg[7:0]counter;reg[13:0]divider,origin;wirecarry;assigncarry=(divider==16383);always@(posedgeclk_6MHz)beginif(carry)divider〈=origin;//如果divider==16383則執(zhí)行這個(gè)elsedivider<=divider+1;//如果if語(yǔ)句不成立則執(zhí)行這個(gè)endalways@(posedgecarry)beginspeaker<=~speaker;end//用非阻塞取反,避免引起自激always@(posedgeclk_4MHz)begincase({high,mid,low})’b000000000110:origin〈=9565;低音6的分預(yù)置數(shù)’b000000000101:origin〈=8730;低音5的分預(yù)置數(shù)’b000001100000:origin〈=12974;中音6的分預(yù)置數(shù)’b000001010000:origin<=12556;中音5的分預(yù)置數(shù)’b000000110000:origin〈=11831;中音6的分預(yù)置數(shù)'b000000100000:origin<=11272;中音2的分預(yù)置數(shù)'b000000010000:origin<=10647;中音1的分預(yù)置數(shù)'b000100000000:origin<=13516;高音1的分預(yù)置數(shù)'b000000000000:origin<=16383;揚(yáng)聲器將不會(huì)發(fā)聲時(shí)的endcaseendalways@(posedgeclk_4MHz)beginif(counter==71)counter<=0;elsecounter<=counter+1;//計(jì)數(shù)器加1case(counter)0:{high,mid,low}<='b000000110000;//中31:{high,mid,low}<='b000000110000;2:{high,mid,low}<=’b000001000000;//中43:{high,mid,low}〈='b000001010000;//中54:{high,mid,low}<='b000001010000;5:{high,mid,low}<=’b000001000000;6:{high,mid,low}〈=’b000000110000;7:{high,mid,low}〈=’b000000100000;8:{high,mid,low}<=’b000000010000;9:{high,mid,low}<=’b000100010000;10:{high,mid,low}〈=’b00000100000;11:{high,mid,low}<=’b00000110000;12:{high,mid,low}〈='b000000110000;13:{high,mid,low}〈=’b000000110000;14:{high,mid,low}〈='b000000110000;15:{high,mid,low}<='b000000100000;16:{high,mid,low}〈=’b000000100000;//中217:{high,mid,low}<='b000000100000;18:{high,mid,low}<=’b000000100000;19:{high,mid,low}<='b000000110000;20:{high,mid,low}<='b000000110000;//中321:{high,mid,low}<=’b000001000000;22:{high,mid,low}〈='b000001010000;23:{high,mid,low}<=’b000001010000;//中524:{high,mid,low}〈='b000001000000;//低425:{high,mid,low}〈='b000000110000;//中326:{high,mid,low}〈=’b000000100000;//中227:{high,mid,low}〈='b000000010000;28:{high,mid,low}<='b000000010000;29:{high,mid,low}<='b000000100000;30:{high,mid,low}〈=’b000000110000;31:{high,mid,low}<='b000000100000;//中232:{high,mid,low}<=’b000000100000;33:{high,mid,low}<='b000000100000;34:{high,mid,low}<=’b000000010000;35:{high,mid,low}〈=’b000000010000;//中136:{high,mid,low}<='b000000010000;37:{high,mid,low}〈=’b000000010000;38:{high,mid,low}<=’b000000100000;//中239:{high,mid,low}<=’b000000110000;//中340:{high,mid,low}<='b000001000000;//中441:{high,mid,low}〈=’b000000110000;//中342:{high,mid,low}
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 生物技術(shù)藥物研發(fā)合同
- 私人訂制戶(hù)外探險(xiǎn)活動(dòng)服務(wù)協(xié)議
- 智能家居系統(tǒng)與節(jié)能照明合作協(xié)議
- 數(shù)據(jù)挖掘技術(shù)在企業(yè)決策支持系統(tǒng)中的應(yīng)用合作協(xié)議
- 精密電子元器件采購(gòu)合同
- 離婚標(biāo)準(zhǔn)協(xié)議書(shū)車(chē)輛分配
- 裝修公司合同保密協(xié)議
- 信用社借款展期合同協(xié)議書(shū)
- 教育培訓(xùn)合作項(xiàng)目實(shí)施協(xié)議
- 建筑施工臨時(shí)承包合同
- 民航客艙應(yīng)急設(shè)備
- 化工總控工培訓(xùn)
- 2025高考語(yǔ)文復(fù)習(xí)之60篇古詩(shī)文原文+翻譯+賞析+情景默寫(xiě)
- 成長(zhǎng)型思維課件
- 高中學(xué)生宿舍樓建設(shè)項(xiàng)目可行性研究報(bào)告
- 2024-2025學(xué)年物理人教版八年級(jí)上冊(cè)-6.4-密度的應(yīng)用-課件
- 山西電網(wǎng)新能源場(chǎng)站涉網(wǎng)試驗(yàn)流程使用說(shuō)明書(shū)
- 礦山應(yīng)急管理培訓(xùn)
- DB41T 2486-2023 叉車(chē)維護(hù)保養(yǎng)與自行檢查規(guī)范
- 1、DL-T5113.1-2019 水利水電工程單元工程質(zhì)量等級(jí)評(píng)定標(biāo)準(zhǔn)第一部分:土建工程用表
- 三相四線(xiàn)及三相三線(xiàn)錯(cuò)誤接線(xiàn)向量圖分析及更正
評(píng)論
0/150
提交評(píng)論