<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于SOPC的乒乓球游戲設(shè)計(jì)

          基于SOPC的乒乓球游戲設(shè)計(jì)

          作者: 時(shí)間:2012-02-07 來源:網(wǎng)絡(luò) 收藏

          3.2 直流信號生成方法
          生成直流信號的方法很多。在此論述幾種常見方法。
          第一種是通過D/A芯片。市場上D/A芯片較多,如DAC0832,DAC0809等。這種方法原理簡單,只需給定恒定的數(shù)字值便可以輕松控制輸出直流波形的電壓值。出于成本考慮,我們轉(zhuǎn)而另一種方法。
          第二種方法是低通濾波法。例如當(dāng)方波占空比為100%時(shí)可當(dāng)作是直流高電平信號。而占空比為0表示零電平。將一定占空比的直流信號經(jīng)過低通濾波器,經(jīng)過計(jì)算可知占空比對于輸出信號的電平高低成線性關(guān)系。所以我們可以利用這點(diǎn)來完成電平控制。
          3.3 擊球控制
          運(yùn)用單片機(jī)與FPGA實(shí)驗(yàn)板之間的通訊完成擊球命令的傳遞。常見的通訊方法:串口通訊和并口通訊。
          并口通訊雖然使用簡單,但是速度較慢,占用管腳較多,實(shí)現(xiàn)功能受到位數(shù)限制,可以完成的指令較少。于是利用串口通訊。在Quartus軟件下運(yùn)行 Builder生成并為其添加UART功能。設(shè)置波特率為9600。利用的txd和rxd兩個(gè)端口與單片機(jī)的串口端相連接。于是便可以在程序中加入串口接收中斷并且在中斷服務(wù)函數(shù)中完成大量工作。以下編碼全部用C語言完成。

          本文引用地址:http://www.ex-cimer.com/article/172167.htm

          d.jpg


          SOPC內(nèi)部中斷服務(wù)函數(shù):
          e.jpg
          f.jpg
          代碼分析:
          首先簡單介紹Avalon總線。SOPC Builder自動生成的Avalon交換架構(gòu)是針對系統(tǒng)處理器和外設(shè)的專用互聯(lián)需求進(jìn)行優(yōu)化。Avalon總線可以連接許多外部設(shè)備,如定時(shí)器/計(jì)數(shù)器,外部三態(tài)橋接,外部SRAM接口,UART,LCD接口,用戶邏輯接口JTAG,UARTC,并行I/O等。代碼中,IOWR_ALTERA_AVALON_UART_STATUS()函數(shù)可以完成向串口發(fā)送數(shù)據(jù)的任務(wù),IOWR_ALTERA_AVALON_PIO_DATA()函數(shù)則可以給內(nèi)部工程發(fā)送并行數(shù)據(jù),控制占空比的值。



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();