<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 基于FPGA的乒乓球游戲的設計與實(shí)現

基于FPGA的乒乓球游戲的設計與實(shí)現

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

代碼分析:

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

在中斷服務(wù)函數中,通過(guò)設置標志位變量flag辨別是否為雙擊命令。在確定擊球方式后生成cmd的四種狀態(tài)。cmd為全局變量,在main()函數中實(shí)現狀態(tài)的選擇。

3.4小球運動(dòng)程序

41.jpg

程序分析:

該段程序是主函數main()的關(guān)鍵部分,其中數組xlabel[50]是小球在X軸方向的運動(dòng)軌跡,軌跡方程是xlabel=i×5。數組ylabel[50]和ylabel2[50]是小球在Y方向的兩個(gè)軌跡,軌跡方程分別為ylabel=-0.007i2+1.792i和ylabel2=-0.013i2+3.328i,其中i是小球運動(dòng)的變量,在for循環(huán)函數中勻速增加或減小。當出現break時(shí)小球運動(dòng)方向改變。當i=0或者i=49時(shí),說(shuō)明小球觸壁卻沒(méi)能遭到有效擊球,判定一方得分,通過(guò)UART發(fā)送指令在單片機上顯示比分。delay()函數用來(lái)控制小球的運動(dòng)速度。

4實(shí)驗結果

將程序燒寫(xiě)到芯片內部,在NiosII開(kāi)發(fā)環(huán)境下運行RunasNiosⅡHardware。把低通濾波器的兩個(gè)輸出通道分別接到雙蹤示波器的輸入端。觀(guān)察到示波器上顯示出小球沿著(zhù)拋物線(xiàn)軌跡來(lái)回運動(dòng),并可以通過(guò)按鍵實(shí)現擊球命令改變小球運動(dòng)。

5結束語(yǔ)

本實(shí)驗可以進(jìn)行適當改進(jìn)。比如小球軌跡可以選用三個(gè)或三個(gè)以上更加豐富的軌道碼表,這樣小球的運動(dòng)軌跡將更加多樣。還可以設立對游戲難度的設置,改變對小球的運動(dòng)速度,這個(gè)想法可以在中斷服務(wù)函數通過(guò)對delay()函數進(jìn)行實(shí)參的變換而實(shí)現。


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: FPGA

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>