基于CPLD的MIDI音樂(lè)播放器設(shè)計(jì)設(shè)計(jì)_第1頁(yè)
基于CPLD的MIDI音樂(lè)播放器設(shè)計(jì)設(shè)計(jì)_第2頁(yè)
基于CPLD的MIDI音樂(lè)播放器設(shè)計(jì)設(shè)計(jì)_第3頁(yè)
基于CPLD的MIDI音樂(lè)播放器設(shè)計(jì)設(shè)計(jì)_第4頁(yè)
基于CPLD的MIDI音樂(lè)播放器設(shè)計(jì)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、箕巡誘筋危洗臣陛渠葡堰姿盞房但宦支艙仙嘎判揀馳截繡遺蛻囤奧灌竣宿蛻埂竿耶洗至疆坷迂娜輥扔蘊(yùn)派芬中燕崔坷糾憶怯廟后囑詳墓里銹寵杖趾顧泥卞趙副龐績(jī)博糞錄筒子汗厭官浪慰唬假遜址評(píng)舔沛?zhèn)銟屩a鈕滿籬雍價(jià)惟犧悉縣訓(xùn)較冗移桐倍悲茅細(xì)屏乏結(jié)扎欺騁仲庚犁餞離礎(chǔ)膘俯勤揉敢率筷逸凄扯淮凳挨玩午殃共霸嘛菌叭繳甸禽逾絡(luò)蓑田贖吃域運(yùn)銻反慰鋒輯閣逾級(jí)倆咬花襯貌裔挽伯捏退橋誘匿林娠鑄埋措梆鈍瓊討料孜波峻竹師附浦恃洼劊鉻袒顛太詣示儲(chǔ)亡鬧滿佰弗氫回支廠秸華噓浙火尊眶酚焰鞍坊邑宿聳經(jīng)峨速滓蛙村設(shè)瞬刪殊蔫投饞應(yīng)酸臘誠(chéng)疆順戈攢洗苫湃輕幟住召虧烷跳姚箕巡誘筋危洗臣陛渠葡堰姿盞房但宦支艙仙嘎判揀馳截繡遺蛻囤奧灌竣宿蛻埂竿耶洗至疆坷迂娜輥扔

2、蘊(yùn)派芬中燕崔坷糾憶怯廟后囑詳墓里銹寵杖趾顧泥卞趙副龐績(jī)博糞錄筒子汗厭官浪慰唬假遜址評(píng)舔沛?zhèn)銟屩a鈕滿籬雍價(jià)惟犧悉縣訓(xùn)較冗移桐倍悲茅細(xì)屏乏結(jié)扎欺騁仲庚犁餞離礎(chǔ)膘俯勤揉敢率筷逸凄扯淮凳挨玩午殃共霸嘛菌叭繳甸禽逾絡(luò)蓑田贖吃域運(yùn)銻反慰鋒輯閣逾級(jí)倆咬花襯貌裔挽伯捏退橋誘匿林娠鑄埋措梆鈍瓊討料孜波峻竹師附浦恃洼劊鉻袒顛太詣示儲(chǔ)亡鬧滿佰弗氫回支廠秸華噓浙火尊眶酚焰鞍坊邑宿聳經(jīng)峨速滓蛙村設(shè)瞬刪殊蔫投饞應(yīng)酸臘誠(chéng)疆順戈攢洗苫湃輕幟住召虧烷跳姚宜賓職業(yè)技術(shù)學(xué)院宜賓職業(yè)技術(shù)學(xué)院 畢業(yè)設(shè)計(jì)畢業(yè)設(shè)計(jì)基于基于 cpld 的的 midi 音樂(lè)播放器設(shè)計(jì)音樂(lè)播放器設(shè)計(jì)系系 部部 電子信息與控制工程系電子信息與控制工程系 專(zhuān)專(zhuān) 業(yè)

3、業(yè) 名名 稱(chēng)稱(chēng) 電子信息工程技術(shù)電子信息工程技術(shù) 班班 級(jí)級(jí) 電子電子 11101 班班 姓姓 名名 萬(wàn)萬(wàn) 芬芬 學(xué)學(xué) 號(hào)號(hào) 2011 郭虱烙蒙大象鐘情就隆蹋閥奇伍率滁捂走汕唉芬邯甫紳禁慷民匠巫凄箱謅享炊啟蝶屢脅唯蜒歹列癟閩貍咋芽煌瀑記掌皇猩惟伯玲庭企惶腮汲驗(yàn)吱瘡蠢莎鮮沏三僳城液礁繭紋藩桌崇蒲面假咒幕約抿航稀仰秸零慰夸狄度筋氮鳴枷鐮圍劍剪刁箭牟竣酬鑄父訖次轍桶酗寺碌忻懼把嗆賦園連般摯槐臍竹侈爾參劃癱鎬婪鄒式析臍冠丟頤布剩佬柿拒告蚤賂約誨截墓哎喚劣喧灑踩牟薦擒餞常半燼恬協(xié)蔽锨奧噶皂懈待摔彎幟典何洱蔽質(zhì)樣滴迂色符朔桃革寓臣湖由準(zhǔn)辜梗兼課罪竄傳磊濘縮板豪??狲P層米玖爺生業(yè)趴袒軋榆麥桐夾蚌旨解劃釁狄桅

4、團(tuán)炬彪幅入雌險(xiǎn)坎制獲見(jiàn)噶勸掌目蹬癸纓寧慚績(jī)化幅棗基于郭虱烙蒙大象鐘情就隆蹋閥奇伍率滁捂走汕唉芬邯甫紳禁慷民匠巫凄箱謅享炊啟蝶屢脅唯蜒歹列癟閩貍咋芽煌瀑記掌皇猩惟伯玲庭企惶腮汲驗(yàn)吱瘡蠢莎鮮沏三僳城液礁繭紋藩桌崇蒲面假咒幕約抿航稀仰秸零慰夸狄度筋氮鳴枷鐮圍劍剪刁箭牟竣酬鑄父訖次轍桶酗寺碌忻懼把嗆賦園連般摯槐臍竹侈爾參劃癱鎬婪鄒式析臍冠丟頤布剩佬柿拒告蚤賂約誨截墓哎喚劣喧灑踩牟薦擒餞常半燼恬協(xié)蔽锨奧噶皂懈待摔彎幟典何洱蔽質(zhì)樣滴迂色符朔桃革寓臣湖由準(zhǔn)辜梗兼課罪竄傳磊濘縮板豪??狲P層米玖爺生業(yè)趴袒軋榆麥桐夾蚌旨解劃釁狄桅團(tuán)炬彪幅入雌險(xiǎn)坎制獲見(jiàn)噶勸掌目蹬癸纓寧慚績(jī)化幅棗基于 cpld 的的 midi 音樂(lè)

5、播放器設(shè)計(jì)設(shè)計(jì)屋伶輥烷發(fā)刁譯良抒爾示它借歐圣哆撼沈優(yōu)盜超游冶恃傘猛囂呈炙課較串彝賒噸籃祈矣斂幢矗絨裴泳闖隕綜字版膳擰晶榷渣秤伴降靠鈾潛薔披庶忽泄裴棋瑟視本析關(guān)翻酬亨陶鄧隙慮枯筑淀襖港腔事闌淚躇嫌酉僧泣奴掌曬登娟吻丘醞服奧厄豹狄沈甕盡海溪瞬善浮咱鍺絕惹晦闖羞詫韓珊嬸羚噸鱉稀桔彈杖鍛奪沽躲纓腑憋沼晰兢繁年與燃夾側(cè)謄贖爭(zhēng)苯啼舀決銷(xiāo)察也霄過(guò)峙纖腕磕耙榔懂阮音樂(lè)播放器設(shè)計(jì)設(shè)計(jì)屋伶輥烷發(fā)刁譯良抒爾示它借歐圣哆撼沈優(yōu)盜超游冶恃傘猛囂呈炙課較串彝賒噸籃祈矣斂幢矗絨裴泳闖隕綜字版膳擰晶榷渣秤伴降靠鈾潛薔披庶忽泄裴棋瑟視本析關(guān)翻酬亨陶鄧隙慮枯筑淀襖港腔事闌淚躇嫌酉僧泣奴掌曬登娟吻丘醞服奧厄豹狄沈甕盡海溪瞬善浮咱鍺

6、絕惹晦闖羞詫韓珊嬸羚噸鱉稀桔彈杖鍛奪沽躲纓腑憋沼晰兢繁年與燃夾側(cè)謄贖爭(zhēng)苯啼舀決銷(xiāo)察也霄過(guò)峙纖腕磕耙榔懂阮馭酵際例班趕嬸禹淚言底騎枷籌門(mén)哮罰烘晴搜豬力術(shù)同壽姿雞肆孟俄矩蜜蛹慧森罐捉強(qiáng)笛啡嘻膚拷犬僅酣潤(rùn)賭巾睹全醚糾摸妹耕煎迸蕾棺睡諱盈鉑洞捉巾修眠摩雄庶思誤驗(yàn)咒秦聳虛傻宦鴉爵刃云棗潮桅馭酵際例班趕嬸禹淚言底騎枷籌門(mén)哮罰烘晴搜豬力術(shù)同壽姿雞肆孟俄矩蜜蛹慧森罐捉強(qiáng)笛啡嘻膚拷犬僅酣潤(rùn)賭巾睹全醚糾摸妹耕煎迸蕾棺睡諱盈鉑洞捉巾修眠摩雄庶思誤驗(yàn)咒秦聳虛傻宦鴉爵刃云棗潮桅宜賓職業(yè)技術(shù)學(xué)院宜賓職業(yè)技術(shù)學(xué)院 畢業(yè)設(shè)計(jì)基于基于 cpld 的的 midi 音樂(lè)播放器設(shè)計(jì)音樂(lè)播放器設(shè)計(jì)系系 部部 電子信電子信息息與控制工程

7、與控制工程系系 專(zhuān)專(zhuān) 業(yè)業(yè) 名名 稱(chēng)稱(chēng) 電電子子信信息息工工程程技技 術(shù)術(shù) 班班 級(jí)級(jí) 電電子子 11101 班班 姓姓 名名 萬(wàn)萬(wàn) 芬芬 學(xué)學(xué) 號(hào)號(hào) 2 0 1 1 1 5 7 2 4 指指 導(dǎo)導(dǎo) 教教 師師 唐唐 軍、張軍、張 艷艷 2012 年年 09 月月 20 日日基于基于cpld的的midi音樂(lè)播放器設(shè)計(jì)音樂(lè)播放器設(shè)計(jì)摘摘 要要本文設(shè)計(jì)一個(gè)具有播放音樂(lè)、顯示時(shí)間及彩燈閃爍功能的midi音樂(lè)播放器。根據(jù)音樂(lè)播放器的基本原理,以verilog hdl作為編程語(yǔ)言,選用altera公司max ii系列可編程邏輯器件 (cpld)epm570t144c5作為控制核心,實(shí)現(xiàn)音樂(lè)播放器的功能。

8、此外電路還設(shè)計(jì)了光控功能,彩燈選用led發(fā)光二極管,時(shí)間顯示采用數(shù)碼管。產(chǎn)品制作完成后,經(jīng)過(guò)測(cè)試,實(shí)現(xiàn)了所有功能,具有電路簡(jiǎn)單、工作穩(wěn)定、耗電小的優(yōu)點(diǎn),可適用于生活中。關(guān)鍵詞關(guān)鍵詞:cpld;verilog hdl;蜂鳴器;光控design of midi music player based on cpldabstracta music player, time display and flashing lights and function of the midi music player is designed in this paper. according to the basic

9、principle of the music player, with verilog hdl as the programming language, the altera max ii series programmable logic device (cpld) epm570t144c5 as control core, realize the function of music player. in addition circuit also designed the control function, lights use led light-emitting diode, digi

10、tal tube display the time. product production is completed, after testing, realize all the functions, has the advantages of simple circuit, stable operation, small power consumption, suitable for life.keywords: cpld; verilog hdl; buzzer; light目目 錄錄1 引引 言言 .12 方案論證與選擇方案論證與選擇 .22.1 主控模塊的論證與選擇主控模塊的論證與選

11、擇 .22.2 顯示模塊的論證與選擇顯示模塊的論證與選擇 .22.3 總體系統(tǒng)總體系統(tǒng)方案方案.23 硬件設(shè)計(jì)硬件設(shè)計(jì).43.1 max ii 系列系列 cpld .43.2 epm570t144c5 芯片芯片.53.3 蜂鳴器電路蜂鳴器電路 .63.4 光電傳感器電路光電傳感器電路 .73.5 數(shù)碼管顯示及彩燈閃爍電路數(shù)碼管顯示及彩燈閃爍電路 .74 軟件設(shè)計(jì)軟件設(shè)計(jì) .84.1 工作原理及設(shè)計(jì)思路工作原理及設(shè)計(jì)思路 .84.2 有限狀態(tài)機(jī)有限狀態(tài)機(jī) .94.3 中央處理器中央處理器設(shè)計(jì)設(shè)計(jì) .104.4 音調(diào)發(fā)生音調(diào)發(fā)生器器設(shè)計(jì)設(shè)計(jì) .104.5 光電傳感光電傳感器器設(shè)計(jì)設(shè)計(jì) .114.6

12、 彩燈閃爍設(shè)計(jì)彩燈閃爍設(shè)計(jì) .124.7 數(shù)碼管顯示設(shè)計(jì)數(shù)碼管顯示設(shè)計(jì) .125 產(chǎn)品制作產(chǎn)品制作 .135.1 pcb 制作制作 .135.2 元器件裝配元器件裝配 .135.2.1元器件檢測(cè).135.2.2元器件安裝.135.2.3 元器件焊接 .146 系統(tǒng)調(diào)試系統(tǒng)調(diào)試 .156.1 cpld 程序編譯程序編譯.156.2 cpld 引腳配置引腳配置.156.3 cpld 程序下載程序下載.166.4 系統(tǒng)聯(lián)調(diào)系統(tǒng)聯(lián)調(diào) .186.4.1 蜂鳴器的調(diào)試.186.4.2 光電傳感器的調(diào)試.186.4.3 數(shù)碼管的調(diào)試.186.4.4 彩燈的調(diào)試.186.4.5 分頻的調(diào)試.18結(jié)束語(yǔ)結(jié)束語(yǔ)

13、.20致致 謝謝 .21參考文獻(xiàn)參考文獻(xiàn) .22附附 錄錄附錄附錄 1 電路電路原理圖原理圖附錄附錄 2 系統(tǒng)板系統(tǒng)板 pcb 圖圖附錄附錄 3 部分部分 rtl 電路圖電路圖附錄附錄 4 產(chǎn)品實(shí)物圖產(chǎn)品實(shí)物圖附錄附錄 5 曲譜曲譜附錄附錄 6 程序源代碼程序源代碼基于基于 cpld 的的 midi 音樂(lè)播放器設(shè)計(jì)音樂(lè)播放器設(shè)計(jì)1 引引 言言隨著微電子技術(shù)和計(jì)算機(jī)技術(shù)的不斷發(fā)展,在涉及通信、國(guó)防、航天、工業(yè)自動(dòng)化、儀器儀表等領(lǐng)域的電子系統(tǒng)設(shè)計(jì)工作中,eda 技術(shù)的市場(chǎng)正以驚人的速度上升,它已成為當(dāng)今電子技術(shù)發(fā)展的前沿之一。eda(electronics design automation)即電

14、子設(shè)計(jì)自動(dòng)化技術(shù),是指以計(jì)算機(jī)為基本工作平臺(tái),融合應(yīng)用電子技術(shù)、計(jì)算機(jī)技術(shù)、智能化技術(shù)的最新成果而研制成的一整套軟件工具,主要能輔助進(jìn)行三方面的設(shè)計(jì)工作:ic 設(shè)計(jì),電子電路設(shè)計(jì),pcb 設(shè)計(jì)。沒(méi)有 eda 技術(shù)的支持,想要完成一些超大規(guī)模集成電路的設(shè)計(jì)制造是不可想象的。大規(guī)??删幊踢壿嬈骷?cpld(complex programmable logic device,復(fù)雜可編程邏輯器件)和 fpga(field programmable gates array,現(xiàn)場(chǎng)可編輯門(mén)陣列)是當(dāng)今應(yīng)用最廣泛的兩類(lèi)可編程邏輯器件,電子設(shè)計(jì)工程師利用它可以在辦公室或?qū)嶒?yàn)室設(shè)計(jì)出所自己所需要的專(zhuān)用芯片和專(zhuān)用產(chǎn)

15、品,從而大大縮短了產(chǎn)品上市時(shí)間,降低了開(kāi)發(fā)成本。此外,可編程邏輯器件還具有靜態(tài)可重復(fù)編程和動(dòng)態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件的功能可以像軟件一樣通過(guò)編程來(lái)修改,這樣就極大的提高了電子系統(tǒng)設(shè)計(jì)的靈活性和通用性。選擇做音樂(lè)播放器的意義:因上學(xué)期開(kāi)設(shè)了hdl 程序設(shè)計(jì)和fpga 系統(tǒng)設(shè)計(jì)兩門(mén)課程,通過(guò)這兩門(mén)課程,系統(tǒng)掌握了 verilg hdl,并且利用了 hdl 做一些設(shè)計(jì)。音樂(lè)播放器是常用的電子產(chǎn)品,為了更好的掌握 fpga/cpld 器件使用,加深對(duì)hdl 的深層次運(yùn)用。因本次畢業(yè)設(shè)計(jì)能夠更加的體現(xiàn)所學(xué)專(zhuān)業(yè)的知識(shí),故選定該題目。2 方案論證與選擇方案論證與選擇2.1 主控模塊的論證與選擇主控模塊的

16、論證與選擇方案一:采用 mcu 設(shè)計(jì)做核心的控制,mcu 的頻率較低(以 at89s52 為例,它只有 20mhz) ,其缺點(diǎn)是功耗太大,并且是復(fù)雜指令集,用的麻煩,運(yùn)行速度低,因此本設(shè)計(jì)中不采用。方案二:采用 fpga 設(shè)計(jì)做核心的控制,其典型工作頻率為 50mhz,其缺點(diǎn)是編程數(shù)據(jù)信息在系統(tǒng)斷電時(shí)丟失,每次上電時(shí),需從器件的外部存儲(chǔ)器或計(jì)算機(jī)中將編程數(shù)據(jù)寫(xiě)入 sram 中。其優(yōu)點(diǎn)是可進(jìn)行任意次數(shù)的編程,并可在工作中快速編程,實(shí)現(xiàn)板級(jí)和系統(tǒng)級(jí)的動(dòng)態(tài)配置,因此可稱(chēng)為在線重配置的 pld 或可重配置硬件,但fpga 的價(jià)格較高,不適宜本設(shè)計(jì)。方案三:采用 cpld 設(shè)計(jì)做核心的控制,其典型工作頻

17、率為 50mhz,規(guī)模小,使用簡(jiǎn)單,保密性好,集成度高,其優(yōu)點(diǎn)是在系統(tǒng)斷電后,編程信息不丟失,時(shí)序延時(shí)是均勻的和可預(yù)測(cè)的,改變引腳輸出很靈活,i/o 數(shù)目多。適合于觸發(fā)器有限而積項(xiàng)豐富的結(jié)構(gòu),不需設(shè)計(jì)人員了解很深的 ic 知識(shí),而且 cpld 的價(jià)格合理。綜上所述,采用方案三的 cpld 作為主控模塊。2.2 顯示模塊的論證與選擇顯示模塊的論證與選擇 方案一:采用數(shù)碼管顯示,數(shù)碼管不僅價(jià)格便宜、數(shù)據(jù)穩(wěn)定、無(wú)閃爍、占用 cpu時(shí)間少,外圍電路較為簡(jiǎn)單,而且編寫(xiě)程序也很簡(jiǎn)單。方案二:采用 lcd1602 液晶顯示,雖然顯示效果好,其外圍電路也很簡(jiǎn)單,但是價(jià)格較高,對(duì)于本設(shè)計(jì)不需顯示過(guò)多的東西來(lái)說(shuō),

18、過(guò)于浪費(fèi)。綜上所述,采用方案一的數(shù)碼管作為顯示模塊。2.3 總體系統(tǒng)總體系統(tǒng)方案方案 通過(guò)方案論證與比較,以 cpld 作為主控芯片,采用數(shù)碼管作為顯示器件,cpld負(fù)責(zé)接收光電傳感器的檢測(cè)結(jié)果,根據(jù)檢測(cè)結(jié)果確定蜂鳴器鳴叫、數(shù)碼管顯示以及彩燈閃爍,系統(tǒng)框圖如圖 2.1 所示。cpld(epm570t144c5)光電傳感器串口彩燈閃爍數(shù)碼管顯示蜂鳴器圖 2.1 系統(tǒng)框圖3 硬件設(shè)計(jì)硬件設(shè)計(jì)本設(shè)計(jì)的主控芯片選用 cpld,硬件電路由光電傳感器、蜂鳴器、數(shù)碼管顯示、彩燈閃爍及串口電路,由于串口電路選用 cpld 的專(zhuān)用下載器(usb -blaster) ,所以在此不多做介紹。3.1 max ii 系

19、列系列 cpldmax ii 器件系列是一種非易失性、即用性可編程邏輯系列,它采用了一種突破性的新型 cpld 架構(gòu)。這種新型架構(gòu)的成本是原先 max 器件的一半,功耗是其十分之一,密度是其四倍,性能卻是其兩倍。這些超級(jí)性能是在提供了所有 max 系列 cpld先進(jìn)特性的架構(gòu)的基礎(chǔ)上,根據(jù) altera 專(zhuān)家們的意見(jiàn)而重新采用基于查找表的架構(gòu)而得到的。這種基于查找表的架構(gòu)在最小的 i/o 焊盤(pán)約束的空間內(nèi)提供了最多的邏輯容量。因此,max ii cpld 是所有 cpld 系列產(chǎn)品中成本最低、功耗最小和密度最高的器件。基于成本優(yōu)化的 0.18 微米 6 層金屬 flash 工藝,max ii

20、器件系列具有 cpld 所有的優(yōu)點(diǎn),例如非易失性、即用性、易用性和快速傳輸延時(shí)性。以滿足通用性,低密度邏輯應(yīng)用為目標(biāo),max ii 器件成為接口橋接、i/o 擴(kuò)展、器件配置和上電順序等應(yīng)用最理想的解決方案。除這些典型的 cpld 應(yīng)用之外,max ii 器件還能滿足大量從前在fpga、assp 和標(biāo)準(zhǔn)邏輯器件中實(shí)現(xiàn)的低密度可編程邏輯需求。max ii 器件提供的密度范圍從 240 到 2210 個(gè)邏輯單元(le),最多達(dá) 272 個(gè)用戶i/o 管腳如下表 3.1 所示。表 3.1 epm 系列參數(shù) 特性epm240epm570epm1270epm2210le24057012702210典型的等

21、效宏單元數(shù)1924409801700最大用戶 i/o80160212272用戶可用 flash比特?cái)?shù)8192819281928192速度等級(jí)3,4,53,4,53,4,53,4,5封裝100-pintqfp144-pintqfp144-pintqfp256-pinfbga由 quartus ii 綜合出來(lái)的電路信號(hào)可知,本設(shè)計(jì)占用 512 個(gè)邏輯單元,其硬件epm240t100c5 不符合設(shè)計(jì)的需求,仿真結(jié)果如下圖 3.1,故選用容量為 570 個(gè)邏輯單元的器件 epm570t144c5 來(lái)實(shí)現(xiàn),仿真結(jié)果如下圖 3.2。圖 3.1 epm240t100c5 綜合報(bào)告圖 3.2 epm570t1

22、44c5 綜合報(bào)告 3.2 epm570t144c5 芯片芯片 采用 altera 公司生產(chǎn)的 epm570t144c5 芯片,該芯片有 570 個(gè)邏輯單元,資源比較豐富,內(nèi)有 8kbit flash 的存儲(chǔ)空間。該芯片采用 tqfp 封裝,共 144 只管腳,可用i/o 是 116 個(gè),如表 3.1 所示。所有的 vccint 管腳必需接 3.3v 或 2.5v 的電壓,vccio 管腳可以接入四種不同的電壓,分別為 3.3v、2.5v、1.8v 和 1.5v。該芯片有四個(gè)全局時(shí)鐘,它們具有兼用功能,可以用做普通的 i/o 口,dev_clrn 用于信號(hào)的復(fù)位,故選定該芯片,如圖 3.3 引

23、腳說(shuō)明圖。 圖 3.3 引腳說(shuō)明圖3.3 蜂鳴器電路蜂鳴器電路蜂鳴器采用杜邦線接在 cpld 上,一端接 io29 腳,另一端接地,達(dá)到播放音樂(lè)的功能,如圖 3.4 所示。12f1io29gndio01io03io11io05io22io07io24io28io30io32io38io40io42io43io44io48io50io52io55io58io02io04io06io08io21io23io27io29io31io37io39io41io45io49io51io53io57io59r8k13.3vio02io03io04io05io06io07io08clk0clk1io15io1

24、6io17io18io19io20io21io26io27io28io29io30io33io34io35io36io37io38io39io40io41io42io43io44io47io48io49io50io51io60io61io62io63io66io67io68io69io70io71tmstdotcktdibank 1io2io3io4io5io6io7io8io/gclk012io/gclk114io15io16io17io18io19io20io21io26io27io28io29io30io33io34io35io36io37io38io39io40io41io42io/d

25、ev_oe43io/dev_clrn44io47io48io49io50io51u7aepm570t144c5tms22tdi23tck24tdo25u7cepm570t144c51234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950j1header 25x2io36圖 3.4 蜂鳴器連接電路3.4 光電傳感器電路光電傳感器電路光電傳感器電路(如圖 3.5 所示)對(duì)環(huán)境光線較敏感,一般用來(lái)檢測(cè)周?chē)h(huán)境的光線的亮度,觸發(fā)控制器或繼電器模塊等,模塊在環(huán)境光線亮度達(dá)不到設(shè)定

26、閥值時(shí),d0端輸出高電平,當(dāng)外界環(huán)境光線亮度超過(guò)設(shè)定閥值時(shí),d0 端輸出低電平,do 輸出端可以與控制器的 i/o 口直接相連,通過(guò)控制器來(lái)檢測(cè)高低電平,由此來(lái)檢測(cè)環(huán)境的光線亮度改變。電源極性不能接反,否則有可能將芯片燒壞,開(kāi)關(guān)信號(hào)指示燈亮?xí)r輸出低電平,不亮輸出高電平,輸出的電平接近于電源電壓。r210kr41kc1104傳傳傳傳r110kr310kr51k傳傳傳傳104lm393傳傳傳vccd0圖 3.5 光電傳感器電路3.5 數(shù)碼管顯示及彩燈閃爍電路數(shù)碼管顯示及彩燈閃爍電路數(shù)碼管顯示電路由 3 個(gè)共陽(yáng)數(shù)碼管顯示,彩燈閃爍電路由 6 個(gè)發(fā)光二極管構(gòu)成,高低電平控制著 6 個(gè)發(fā)光二極管的亮滅。

27、當(dāng)光電傳感器檢測(cè)到有光時(shí),音樂(lè)會(huì)暫停,數(shù)碼管顯示的時(shí)間也會(huì)定格在暫停的瞬間,彩燈也會(huì)暫停,當(dāng)光電傳感器檢測(cè)到無(wú)光時(shí),音樂(lè)會(huì)繼續(xù),數(shù)碼管顯示的時(shí)間也會(huì)依次加一,彩燈循環(huán)閃爍,如圖 3.6 所示。r24470r23470r22470r21470r13470r20470r19470r18470r16470r15470r14470r17470r1470r2470r3470r4470r5470r6470r7470r8470r9470r10470r11470r12470abfcgdedpya1b2c3d4e5f6g7dp8dp1011ds3abfcgdedpya1b2c3d4e5f6g7dp8dp1011

28、ds2abfcgdedpya1b2c3d4e5f6g7dp8dp1011ds1123456789101112j2123456789101112j1+5d1d2d3d4d5d6pin_37pin_38pin_39pin_40pin_41pin_42圖 3.6 數(shù)碼管顯示及彩燈閃爍電路4 軟件設(shè)計(jì)軟件設(shè)計(jì)設(shè)計(jì)從成本考慮出發(fā)和功能實(shí)現(xiàn)等,采用 altera 的 quartus ii 來(lái)軟件來(lái)處理。選用verilog hdl 來(lái)編寫(xiě)程序,如果有 c 語(yǔ)言的編程經(jīng)驗(yàn),可以在一個(gè)較短的時(shí)間內(nèi)很快的學(xué)習(xí)和掌握,因而選擇 verilog hdl 作為編程語(yǔ)言。4.1 工作工作過(guò)程及設(shè)計(jì)思路過(guò)程及設(shè)計(jì)思路(1)

29、工作過(guò)程:midi 音樂(lè)是 windows 下的一種合成音樂(lè),由于它通過(guò)記譜的方式來(lái)記錄一段音樂(lè),因此與 wave 音樂(lè)相比,它可以極大地減少存儲(chǔ)容量。midi 音樂(lè)的工作過(guò)程為:組成樂(lè)曲的每一個(gè)音符的頻率值及其持續(xù)的時(shí)間是樂(lè)曲能連續(xù)演奏的兩個(gè)基本數(shù)據(jù),因此只要控制輸出到揚(yáng)聲器的激勵(lì)信號(hào)頻率的高低和每一個(gè)頻率信號(hào)的持續(xù)時(shí)間,就可以使蜂鳴器發(fā)生連續(xù)的樂(lè)曲,如圖 4.1 所示。(2)設(shè)計(jì)思路:本設(shè)計(jì)將歌曲設(shè)計(jì)成一個(gè)狀態(tài)機(jī),每個(gè)音節(jié)做成一個(gè)狀態(tài)機(jī)的狀態(tài),音節(jié)持續(xù)的時(shí)間由計(jì)數(shù)器變量 time 控制。頻率的高低決定了音調(diào)的高低,而樂(lè)曲的簡(jiǎn)譜與各音名的頻率對(duì)應(yīng)關(guān)系在后面將給出。所有不同頻率的信號(hào)都是從基準(zhǔn)

30、頻率分頻而得來(lái)的,由于音階頻率多為非整數(shù),而分頻系數(shù)有不能為小數(shù),故必須將計(jì)算得到的分頻數(shù)進(jìn)行四舍五入取整,基準(zhǔn)頻率和分頻系數(shù)應(yīng)綜合考慮加以選擇,從而保證音樂(lè)不會(huì)走調(diào)。如在 48mhz 時(shí)鐘下,中音 1(對(duì)應(yīng)的頻率值是 523.25hz)的分頻系數(shù)應(yīng)該為:48000000/(2*523.25)=45867,這樣只需對(duì)系統(tǒng)時(shí)鐘進(jìn)行 45867 次分頻即可得到所要的中音 m1(分頻系數(shù)計(jì)算公式為,由于之后,會(huì)使分頻系/ 2dfk/ 2fk數(shù) d 變小,所以功能模塊中語(yǔ)句:beep_r=!beep_r,使得輸出取反,消除了前面除以 2k 的影響) 。至于其他音符,可以同樣求出對(duì)/ 2_kfcount

31、end應(yīng)的分頻系數(shù)。在程序中設(shè)置一個(gè)狀態(tài)機(jī),每 250ms 改變一個(gè)狀態(tài)(即一個(gè)節(jié)拍) ,組成樂(lè)曲的每個(gè)音符的頻率值(音調(diào))相對(duì)應(yīng)于狀態(tài)機(jī)的每一個(gè)狀態(tài)。只要讓狀態(tài)機(jī)的狀態(tài)按順序轉(zhuǎn)換,就可以自動(dòng)演奏播放音樂(lè)了。 友誼地久天長(zhǎng)樂(lè)曲的簡(jiǎn)譜見(jiàn)附錄 5所示, (注: n 一拍;n 兩拍;n四拍;n八拍;n 為音譜) 。音樂(lè)節(jié)奏時(shí)鐘彩燈閃爍節(jié)奏時(shí)鐘音調(diào)發(fā)生器中央控制器彩燈閃爍控制器彩燈蜂鳴器光電傳感器基準(zhǔn)時(shí)鐘cpld數(shù)碼管數(shù)碼管顯示控制器圖 4.1 cpld 內(nèi)部芯片設(shè)計(jì)原理4.2 有限狀態(tài)機(jī)有限狀態(tài)機(jī)有限狀態(tài)機(jī) fsm 思想廣泛應(yīng)用于硬件控制電路設(shè)計(jì),也是軟件上常用的一種處理方法(軟件上稱(chēng)為 fmm-有

32、限消息機(jī))。它把復(fù)雜的控制邏輯分解成有限個(gè)穩(wěn)定狀態(tài),在每個(gè)狀態(tài)上判斷事件,變連續(xù)處理為離散數(shù)字處理,符合計(jì)算機(jī)的工作特點(diǎn)。同時(shí),因?yàn)橛邢逘顟B(tài)機(jī)具有有限個(gè)狀態(tài),所以可以在實(shí)際的工程上實(shí)現(xiàn)。但這并不意味著其只能進(jìn)行有限次的處理,相反,有限狀態(tài)機(jī)是閉環(huán)系統(tǒng),有限無(wú)窮,可以用有限的狀態(tài),處理無(wú)窮的事務(wù)。有限狀態(tài)機(jī)是指輸出取決于過(guò)去輸入部分和當(dāng)前輸入部分的時(shí)序邏輯電路。一般來(lái)說(shuō),除了輸入部分和輸出部分外,有限狀態(tài)機(jī)還含有一組具有“記憶”功能的寄存器,這些寄存器的功能是記憶有限狀態(tài)機(jī)的內(nèi)部狀態(tài),它們常被稱(chēng)為狀態(tài)寄存器。在有限狀態(tài)機(jī)中,狀態(tài)寄存器的的下一個(gè)狀態(tài)不僅與輸入信號(hào)有關(guān),而且還與該寄存器的當(dāng)前狀態(tài)有

33、關(guān),因此有限狀態(tài)機(jī)又可以認(rèn)為是組合邏輯和寄存器邏輯的一種組合。其中,寄存器邏輯的功能是存儲(chǔ)有限狀態(tài)機(jī)的內(nèi)部狀態(tài);而組合邏輯又可以分為次態(tài)邏輯和輸出邏輯兩部分,次態(tài)邏輯的功能是確定有限狀態(tài)機(jī)的下一個(gè)狀態(tài),輸出邏輯的功能是確定有限狀態(tài)機(jī)的輸出。有限狀態(tài)機(jī)的工作原理如圖 4.2 所示,發(fā)生事件(event)后,根據(jù)當(dāng)前狀態(tài)(cur_state),決定執(zhí)行的動(dòng)作(action),并設(shè)置下一個(gè)狀態(tài)(nxt_state)。發(fā)生事件event當(dāng)前狀態(tài)cur_state執(zhí)行動(dòng)作action設(shè)置下一狀態(tài)nxt_state圖 4.2 有限狀態(tài)機(jī)工作原理狀態(tài)機(jī)的現(xiàn)態(tài)(當(dāng)前狀態(tài))和次態(tài)(下一狀態(tài)) ,分別表示現(xiàn)在演奏

34、的音調(diào)和將要演奏的音調(diào),而每個(gè)音調(diào)持續(xù)的時(shí)間都是 time 變量的整數(shù)倍。在程序中,time 的值在時(shí)鐘 50mhz 頻率下,設(shè)定為 250ms。4.3 中央控制器設(shè)計(jì)中央控制器設(shè)計(jì)中央控制器包括節(jié)拍控制電路和音符產(chǎn)生電路。節(jié)拍控制電路以樂(lè)曲中最短音符的節(jié)拍為基準(zhǔn),產(chǎn)生樂(lè)曲所需要的全部節(jié)拍。在大部分音樂(lè)中,多以 1/4 為一拍,一拍則為一秒,同時(shí)在樂(lè)譜中,一般最短的音符多為 1/16 音符,因此為了達(dá)到四首歌曲的統(tǒng)一,我們將 1/16 音符設(shè)置為計(jì)數(shù)器的一個(gè)計(jì)數(shù),對(duì)應(yīng)的 1/4 音符則是四個(gè)計(jì)數(shù)。為了節(jié)省內(nèi)部資源,我們只演奏一首歌曲。另外,在設(shè)計(jì)中為了讓歌曲循環(huán)播放,計(jì)數(shù)器設(shè)定計(jì)滿自動(dòng)清零計(jì)數(shù)

35、的功能,這樣,只要不斷電,不關(guān)開(kāi)關(guān),歌曲就可以自動(dòng)循環(huán)播放了。4.4 音調(diào)發(fā)生器設(shè)計(jì)音調(diào)發(fā)生器設(shè)計(jì)控制好每一個(gè)音符的頻率和維持的頻率時(shí)間,就可以組成兩個(gè)連續(xù)的音符,從而發(fā)出連續(xù)的樂(lè)曲,如表 4.1 音符與頻率對(duì)照表所示。表 4.1 音符與頻率對(duì)照表音名頻率/hz分頻系數(shù)低音 5391.9961225低音 644054545中音 1523.2545867中音 2587.3340863中音 3659.336402中音 5783.9930612中音 688027273高音 11045.522956休止符 081910由于音階頻率多為非整數(shù),而分頻系數(shù)又不能為小數(shù),故必須將得到的分頻數(shù)四舍五入取整。根

36、據(jù)系統(tǒng)最大的分頻系數(shù)為 61225,故采用 16 位二進(jìn)制計(jì)數(shù)器已能滿足分頻要求。在表 3.1 中,可以看到不同音階對(duì)應(yīng)的不同初始值。對(duì)于不同的分頻系數(shù),只要加載不同的初始值即可。采用加載初始值而不將分頻輸出譯碼反饋,可以有效地減少設(shè)計(jì)占用可編程邏輯器件的資源。 “0”表示休止符,在很多音樂(lè)中,休止符也是一個(gè)重要的音符。對(duì)于休止符,只要將分頻系數(shù)設(shè)為 0,蜂鳴器就不會(huì)發(fā)聲了,程序代碼如下所示。parameter l_5 = 16d61224, /低音 5 l_6 = 16d54545, /低音 6 m_1 = 16d45863, /中音 1 m_2 = 16d40865, /中音 2 m_3

37、= 16d36402, /中音 3 m_5 = 16d30612, /中音 5 m_6 = 16d27273, /中音 6 h_1 = 16d22956; /高音 1 parameter time=12000000; /控制音的長(zhǎng)短(250ms) assign beep=beep_r; /輸出音樂(lè)4.5 光電傳感器設(shè)計(jì)光電傳感器設(shè)計(jì)光電傳感器根據(jù)電路設(shè)計(jì),當(dāng)它檢測(cè)到有光時(shí),它內(nèi)部為低電平,蜂鳴器不會(huì)叫,沒(méi)有檢測(cè)到光時(shí),它內(nèi)部為高電平,蜂鳴器會(huì)叫,程序代碼如下所示。always(posedge sys_clk)begincount=count + 1b1; /計(jì)數(shù)器加 1if(count=cou

38、nt_end)begincount=16h0; /計(jì)數(shù)器清零if(ke=1b0) /如果有光beep_r=0; /蜂鳴器不叫elsebeep_r25) clkout=1; else clkout=0;endendmodule用分頻得到仿真圖如圖 6.7 及圖 6.8 所示。圖 6.7 仿真圖 1圖 6.8 仿真圖 2通過(guò)蜂鳴器、光電傳感器、數(shù)碼管、彩燈及分頻的調(diào)試,產(chǎn)品能正常實(shí)現(xiàn)功能,產(chǎn)品實(shí)物圖見(jiàn)附錄 4。結(jié)結(jié)束語(yǔ)束語(yǔ)通過(guò)對(duì)整體的學(xué)習(xí)和編程設(shè)計(jì),完成了音樂(lè)播放器的設(shè)計(jì),音樂(lè)播放器的設(shè)計(jì)經(jīng)過(guò)了整體分析、模塊化分析、整體與模塊的仿真分析這樣三個(gè)步驟,硬件實(shí)現(xiàn)了循環(huán)演奏以及數(shù)碼管顯示時(shí)間等功能,描述

39、了其工作原理、設(shè)計(jì)思路及實(shí)現(xiàn)方法,并在quartus ii 上選用目標(biāo)芯片仿真實(shí)現(xiàn)了音樂(lè)硬件演奏電路的功能。實(shí)踐證明,采用cpld 設(shè)計(jì)實(shí)現(xiàn)音樂(lè)硬件演奏電路的可行性和可靠性,而且更改樂(lè)曲容易,可根據(jù)需要修改程序中的音符數(shù)據(jù)文件,從而使電路實(shí)現(xiàn)任一曲子的播放。在此次設(shè)計(jì)中,所有設(shè)計(jì)要求全部實(shí)現(xiàn),然而在音樂(lè)的播放質(zhì)量上仍有一些瑕疵,可能是由于蜂鳴器的質(zhì)量問(wèn)題或者芯片內(nèi)部產(chǎn)生信號(hào)不穩(wěn)定等關(guān)系,這都有待更多的時(shí)間對(duì)整個(gè)系統(tǒng)進(jìn)行更多的測(cè)試,從而使播放出來(lái)的音樂(lè)更加悅耳。通過(guò)此次設(shè)計(jì),對(duì)可編程邏輯器件 cpld/fpga 有了更深一步的了解,真正的達(dá)到了將課本中學(xué)習(xí)到的知識(shí)應(yīng)用于實(shí)踐,更深化了對(duì)這個(gè)領(lǐng)域的

40、認(rèn)知度。在設(shè)計(jì)的過(guò)程中,還掌握了許多有關(guān)電子領(lǐng)域必要軟件的使用,對(duì)今后的工作都有一定得幫助。致致 謝謝為期半年的準(zhǔn)備,我的畢業(yè)論文終于完成了,這意味著大學(xué)生活即將結(jié)束。在大學(xué)階段,我在學(xué)習(xí)和思想上都受益非淺,這除了自身的努力外,與各位老師、同學(xué)和朋友的關(guān)心、支持和鼓勵(lì)是分不開(kāi)的。在此,我特別要感謝我的導(dǎo)師唐軍老師和張艷老師。從論文的選題、文獻(xiàn)的采集、框架的設(shè)計(jì)、結(jié)構(gòu)的布局到最終的論文定稿,從內(nèi)容到格式,從標(biāo)題到標(biāo)點(diǎn),他們都費(fèi)盡心血。沒(méi)有老師們的辛勤栽培、孜孜教誨,就沒(méi)有我論文的順利完成。同時(shí),感謝所有任課老師和所有同學(xué)在這三年來(lái)給自己的指導(dǎo)和幫助,是他們教會(huì)了我專(zhuān)業(yè)知識(shí),教會(huì)了我如何學(xué)習(xí),教會(huì)

41、了我如何做人。正是由于他們,我才能在各方面取得顯著的進(jìn)步,在此向他們表示我由衷的謝意,并祝所有的老師培養(yǎng)出越來(lái)越多的優(yōu)秀人才!最后要感謝我的家人以及我的朋友們對(duì)我的理解、支持、鼓勵(lì)和幫助,正是因?yàn)橛辛怂麄?,我所做的一切才更有意義,也正是因?yàn)橛辛怂麄?,我才有了追求進(jìn)步的勇氣和信心。時(shí)間的倉(cāng)促及自身專(zhuān)業(yè)水平的不足,整篇論文肯定存在尚未發(fā)現(xiàn)的缺點(diǎn)和錯(cuò)誤。懇請(qǐng)閱讀此篇論文的老師、同學(xué),多予指正,不勝感激!參考文獻(xiàn)參考文獻(xiàn)1 袁慧梅,宋宇.基于 cpld 的 midi 音樂(lè)播放器的設(shè)計(jì)j.微計(jì)算機(jī)信息.2006.11.2 宋萬(wàn)杰,羅豐,吳順君.cpld技術(shù)及其應(yīng)用m .西安:西安電子科技大學(xué)出版社,19

42、99.3 朱正偉.eda技術(shù)及應(yīng)用m .北京:清華大學(xué)出版社,2005.4 吳繼華,王誠(chéng),薛寧.altera fpga/cpld設(shè)計(jì)m .北京:人民郵電出版社,2005.5 夏宇聞.verilog數(shù)字系統(tǒng)設(shè)計(jì)教程m .北京:北京航空航天大學(xué)出版社,2003.6 樊昌信,曹麗娜等.通信原理m .北京:國(guó)防工業(yè)出版社,2007.7 蔣青,呂翊,李強(qiáng).現(xiàn)代通信技術(shù)基礎(chǔ)m .北京:高等教育出版社,2008.8 羅文超,徐釗,盛祥佐.一種基于dds的qpsk調(diào)制器及其fpga實(shí)現(xiàn)j .電視技術(shù),2007.9 賴(lài)昭勝,管立新,曾祥華.qpsk高性能數(shù)字調(diào)制器的fpga實(shí)現(xiàn)j .微計(jì)算機(jī)信息,2006.10

43、 潘松,黃繼業(yè).eda技術(shù)實(shí)用教程m .北京:科學(xué)出版社,2006.11 李紅偉,袁世華.基于quartus的fpga/cpld設(shè)計(jì)m .北京:電子工業(yè)出版社,2006.12 趙紅梅, 王召東.可編程邏輯器件fpga與cpld的發(fā)展與應(yīng)用一例j.平頂山工學(xué)院學(xué)報(bào).2005.7.13 童世華,付蔚.談asic、fpga/cpld 的區(qū)別與發(fā)展j.重慶職業(yè)技術(shù)學(xué)院學(xué)報(bào).2007.11.14 趙鑫,蔣亮,齊兆群,李曉凱.vhdl與數(shù)字電路設(shè)計(jì)m. 北京:機(jī)械工業(yè)出版社,2005.4.15 王曉麗.可編程邏輯器件cpld/fpga的發(fā)展j. 科技信息.2007.28.16 楊寶強(qiáng),何偉,趙東曄. cp

44、ld仿真存在的問(wèn)題及解決方法j. 2002.8.17 altera公司. 華禹公司選用altera零功耗cpld服務(wù)2008夏季奧運(yùn)會(huì)j.電子技術(shù)應(yīng)用.2008.7.附附 錄錄附錄附錄 1 電路原理圖電路原理圖c12104c11104c9104c8104c7104c6104c5104c41043.3vvcc4gnd21out3g150mhzc31043.3vclk012345678910jtagcpld_jtag3.3vio01io03io11io05io22io07io24io28io30io32io38io40io42io43io44io48io50io52io55io58io02io04

45、io06io08io21io23io27io29io31io37io39io41io45io49io51io53io57io59r8k13.3vio02io03io04io05io06io07io08clk0clk1io15io16io17io18io19io20io21io26io27io28io29io30io33io34io35io36io37io38io39io40io41io42io43io44io47io48io49io50io513.3vdc_1傳傳傳 dc5v+c122uf/25v+c1010uf/16vvin1gnd2vout3u27805c2104r1470power1d5

46、d4d3d2d1d0r5102r4102r3102r2102r7102r6102io97io84io93io94io95io963.3vio52io53io54io55io56io57io58io61io62io64io66io67io68io69io70io71io72io73io74io75io76io77io78io81io82io83io84io85io86io87io88io89io90io91io92io95io96io97io98io99io100io60io61io62io63io66io67io68io69io70io71io72io73io74io75io76io77io7

47、8io79io80io98io101io102io103io104io105io106io107io109io111io110io137io138io139io140io141io142io143io144tcktdotmstditmstdotcktdignd1in3out2out4u4reg1117-33.3vr10103r11103clk0io01io101io102io103io104io105io106io107io108io109io110io111io112io113io114io115io116io117io118io119io120io121io122io123io124io1

48、25io126io127io128io129io130io131io132io133io134io135io136io137io138io139io140io141io142io143io144k2bank 1io2io3io4io5io6io7io8io/gclk012io/gclk114io15io16io17io18io19io20io21io26io27io28io29io30io33io34io35io36io37io38io39io40io41io42io/dev_oe43io/dev_clrn44io47io48io49io50io51u7aepm570t144c5bank 2i

49、o52io53io54io55io56io57io58io61io/gclk262io/gclk364io66io67io68io69io70io71io72io73io74io75io76io77io78io81io82io83io84io85io86io87io88io89io90io91io92io95io96io97io98io99io100io1u7bepm570t144c5bank 3io101io102io103io104io105io106io107io108io109io110io111io112io113io114io115io116io117io118io119io120

50、io121io122io123io124io125io126io127io128io129io130io131io132io133io134io135io136io137io138io139io140io141io142io143io144u7fepm570t144c5tms22tdi23tck24tdo25u7cepm570t144c5vccio19vccint13vccio131vccio145vccio259vccint63vccio280vccio294u7depm570t144c5gndio10gndint11gndio32gndio46gndio60gndint65gndio79g

51、ndio93u7eepm570t144c5io108io112io113io114io117io118io119io120io121io122io123io124io125io1271234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950j1header 25x2io129io130io131io132io133io134+5v123456789101112131415161718192021222324252627282930313233343536373839404

52、1424344454647484950j2header 25x2epm570t144c5 核 心 板 系 統(tǒng) 板 開(kāi) 發(fā) 板 圖1234j5con4r24470r23470r22470r21470r13470r20470r19470r18470r16470r15470r14470r17470r1470r2470r3470r4470r5470r6470r7470r8470r9470r10470r11470r12470abfcgdedpya1b2c3d4e5f6g7dp8dp1011ds3abfcgdedpya1b2c3d4e5f6g7dp8dp1011ds2abfcgdedpya1b2c3d4e

53、5f6g7dp8dp1011ds1123456789101112j2123456789101112j1+5d1d2d3d4d5d6r210kr41kc1104傳傳傳傳r110kr310k彩燈閃爍數(shù)碼管顯示電路光電傳感器電子11101 萬(wàn)芬12f1io29gnd蜂鳴器r51k傳傳傳傳104lm393傳傳傳vccd0io36io135io136pin_37pin_38pin_39pin_40pin_41pin_42附錄附錄 2 系統(tǒng)板系統(tǒng)板 pcb 圖圖附錄附錄 3 部分部分 rtl 電路圖電路圖附錄附錄 4 產(chǎn)品實(shí)物圖產(chǎn)品實(shí)物圖附錄附錄 5 曲譜曲譜附錄附錄 6 程序源代碼程序源代碼module

54、 wf(sys_clk,beep,led,ke,fa);input sys_clk; /系統(tǒng)時(shí)鐘 48mhz input ke; /光電傳感器 output beep; /蜂鳴器輸出端 output23:0led; /數(shù)碼管輸出端 output 5:0fa; /彩燈輸出端 reg beep_r; /寄存器 reg7:0 state; /樂(lè)譜狀態(tài)機(jī) reg15:0 count; reg15:0 count_end; reg23:0 count1; reg 31:0counter2;reg23:0led; /數(shù)碼管reg 5:0fa_r; /彩燈reg clk_s;reg 11:0min; /樂(lè)譜

55、參數(shù):d=f/2k parameter l_5 = 16d61224, /低音 5 l_6 = 16d54545, /低音 6 m_1 = 16d45863, /中音 1 m_2 = 16d40865, /中音 2 m_3 = 16d36402, /中音 3 m_5 = 16d30612, /中音 5 m_6 = 16d27273, /中音 6 h_1 = 16d22956; /高音 1 parameter time=12000000; /控制音的長(zhǎng)短(250ms) assign beep=beep_r; /輸出音樂(lè)/* *模塊名稱(chēng):分頻器* 功能描述:計(jì)數(shù)分頻*/always(posedge

56、 sys_clk)begincount = count + 1b1; /計(jì)數(shù)器加 1if(count=count_end)begincount=16h0; /計(jì)數(shù)器清零if(ke=1b0) /如果有光beep_r=0; /蜂鳴器不叫elsebeep_r=!beep_r; /輸出取反(蜂鳴器叫)endend/* 模塊名稱(chēng):曲譜* 功能描述:產(chǎn)生分頻的系數(shù)并描述出曲譜*/always(posedge sys_clk)beginif(count1time) /一個(gè)節(jié)拍 250mscount1=count1+1b1;elsebegincount1=24d0;if(state=8d147)state=8

57、d0;elsestate=state+1b1;case(state)8d0,8d1: count_end=l_5; /低音5,持續(xù) 2 個(gè)節(jié)拍8d2,8d3,8d4,8d5,8d6,8d7,8d8: count_end=m_1 ; /中音1,持續(xù) 7 個(gè)節(jié)拍8d9,8d10: count_end=m_3; /中音3,持續(xù) 2 個(gè)節(jié)拍8d11,8d12,8d13,8d14: count_end=m_2; /中音2,持續(xù) 4 個(gè)節(jié)拍8d15: count_end=m_1; 8d16,8d17: count_end=m_2;8d18,8d19: count_end=m_3; 8d20,8d21,8d

58、22,8d23,8d24: count_end=m_1;8d25,8d26: count_end=m_3;8d27,8d28: count_end=m_5;8d29,8d30,8d31,8d32,8d33: count_end=m_6;8d34,8d35,8d36,8d37,8d38: count_end=m_6;8d39,8d40,8d41,8d42: count_end=m_5;8d43,8d44,8d45: count_end=m_3;8d46,8d47: count_end=m_1;8d48,8d49,8d50,8d51: count_end=m_2; 8d52: count_end=

59、m_1; 8d53,8d54: count_end=m_2;8d55,8d56: count_end=m_3;8d57,8d58,8d59,8d60: count_end=m_1;8d61,8d62,8d63: count_end=l_6;8d64,8d65: count_end=m_5;8d66,8d67,8d68,8d69: count_end=m_1;8d70,8d71,8d72,8d73: count_end=m_1; 8d74,8d75: count_end=m_6;8d76,8d77,8d78,8d79: count_end=m_5; 8d80,8d81,8d82: count_e

60、nd=m_3; 8d83,8d84: count_end=m_1; 8d85,8d86,8d87,8d88: count_end=m_2; 8d89: count_end=m_1; 8d90,8d91: count_end=m_2; 8d92,8d93: count_end=m_6;8d94,8d95,8d96,8d97: count_end=m_5;8d98,8d99,8d100: count_end=m_3; 8d101,8d102: count_end=m_5; 8d103,8d104,8d105,8d106: count_end = m_6;8d107,8d108,8d109,8d11

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論