日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          關 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設計應用 > 基于FPGA的音樂流水燈控制系統(tǒng)的設計

          基于FPGA的音樂流水燈控制系統(tǒng)的設計

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


          按照樂譜,將音階對應的索引值連續(xù)地存儲到ROM中。例如,樂譜上一個4分音符的中音3,在ROM存儲器中對應的索引值是10,并且連續(xù)放置4次,而一個8分音符5也就是半拍的5,則是將對應索引值5在ROM中連續(xù)存放兩次。播放時在播放時鐘(8 Hz)的驅動下,索引值不斷地從ROM輸出。索引值送到音階分頻模塊中,轉換為計數初值輸出,再送到音階分頻產生模塊中,作為計數初值,產生音階頻率輸出驅動蜂鳴器。這樣,就能在蜂鳴器上發(fā)出要播放的樂曲了。確定了樂譜后,即ROM的存儲內容后,就可以定制ROM,將其初始化文件指定為.mif文件即可。
          2.2 流水燈控制模塊設計
          由于此設計是基于DE2.70開發(fā)板之上的,因此將對應的音階輸出,應用LED燈來顯示流水燈閃爍效果。根據音調“hight”的高低設置點亮燈的數量,當“hight”為低時播放低音信號,為高時播放中音信號。如果要用到高音信號可以將“hight”長度改為2bit。選取板上的oLEDR[6..0]前7盞燈與低音信號對應,oLEDR[13..7]與中音信號對應。在本設計中,為了看到明顯的流水燈變化,當發(fā)出中音時低音顯示燈全亮。
          2.3 LCD顯示模塊設計
          首先需要在SOPC Builder中構建SOPC系統(tǒng),按要求依次添加NioslI處理器,4 kB的片上RAM,LCD模塊,4位輸入口,給處理器分配復位向量地址和異常向量地址。
          LCD顯示模塊用來實現樂譜和強度的實時顯示,可以顯示16×2個字符,其軟件流程如圖2所示。


          其中LCD初始化包括對LCD的功能設置,顯示開關設置和模式設置。LCD定位到首行首列是通過對LCD寫定位指令,將顯示位置確定到第一行第一列。寫字符“jian pu”到第一行是通過寫數據指令將字符jian pu:和實時變化的樂譜顯示在液晶屏的第一行。低、中、高音分別用L、M、H表示并且加上對應的音階值進行顯示。LCD顯示換行是通過定位指令來實現的。顯示強度到第二行是用符號“>”的個數表示音調的高低,一個表示低音1,兩個表示低音2,依次類推。
          在對LCD模塊進行顯示控制時,用到了寫控制命令和寫數據命令。這些命令是針對具體配置的硬件電路而編寫的.h頭文件。LCD模塊的頭文件如下

          這樣編寫是為了和具體的硬件電路相對應,在LCD模塊的硬件描述語言中,液晶模塊RW和RS的地址分配如下:

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


          關鍵詞: 音頻

          評論


          相關推薦

          技術專區(qū)

          關閉