資料介紹
描述
這是一個(gè)由 5 部分組成的博客,以下是鏈接:
第 2 部分:在 Spartan 6 FPGA 上使用 Xilinx ISE 的組合邏輯
第 3 部分:在 Cyclone-IV FPGA 上使用 Quartus Prime 的順序邏輯
第 4 部分:在 Artix-7 FPGA 上使用 Vivado 的組合邏輯與順序邏輯
第 5 部分:最終項(xiàng)目 - DE0 Nano 開發(fā)板上的 Pong 游戲
主意:
該項(xiàng)目旨在通過應(yīng)用本博客前面部分中學(xué)到的所有概念來構(gòu)建一個(gè)簡單的 Pong 游戲(單人游戲)。
乒乓球游戲的輸入(用戶控制)將通過旋轉(zhuǎn)編碼器,輸出可以在 VGA 監(jiān)視器中看到。
概念:
1. 旋轉(zhuǎn)編碼器:-
這是旋轉(zhuǎn)編碼器的內(nèi)部接線。黃色表示 VCC,灰色表示 GND。當(dāng)編碼器旋轉(zhuǎn)時(shí),兩個(gè)輸出在 1 和 0 之間切換。
根據(jù)脈沖的位置,我們可以確定方向,我們可以將脈沖數(shù)作為該方向的計(jì)數(shù)。
讓藍(lán)色波形為輸出 1,綠色為輸出 2。
那么我們?nèi)绾未_定方向呢?如果您非常仔細(xì)地觀察波形,您會(huì)注意到在輸出 1 的每個(gè)上升沿,如果輸出 2 為低電平,那么它是順時(shí)針方向的。
在輸出 1 的上升沿,如果輸出 2 為 HIGH,那么我們可以說它是逆時(shí)針的,但這種方法在現(xiàn)實(shí)生活中解碼信號并不可靠。
我們?nèi)绾谓獯a信號?
答案 - 正交解碼器。
正交解碼器的設(shè)計(jì):
測試設(shè)計(jì):
我們將使用 Terasic System Builder 為 Quartus Prime 構(gòu)建項(xiàng)目。
我們將使用 8 個(gè)板載 LED 作為計(jì)數(shù)器的輸出,使用 1 個(gè) RGB LED 作為旋轉(zhuǎn)編碼器的方向并檢查旋轉(zhuǎn)編碼器的開關(guān)。
您可以通過查看本博客系列的第 3 部分來熟悉 Quartus Prime 軟件。
驗(yàn)證碼:
QSF 文件和 SDC 文件:
。
好吧,這個(gè)術(shù)語對您來說應(yīng)該非常熟悉,因?yàn)槲覀兛赡苤辽偈褂眠^一次 VGA 監(jiān)視器,或者甚至現(xiàn)在可能正在使用它。
1987 年首次與 IBM PS/2 系列計(jì)算機(jī)一起推出,之后它被廣泛用于幾乎所有帶 DVI 的 PC,直到 2003 年 HDMI 出現(xiàn),之后由于更高的分辨率和更好的幀速率,它被廣泛采用,到了當(dāng)年2015 年有超過 40 億臺(tái)設(shè)備使用 HDMI。
讓我們看一下VGA Pinout:
VGA有5種主要信號,分別是紅、綠、藍(lán)、水平同步和垂直同步。
來自多倫多大學(xué)的有用信息:
“VGA監(jiān)視器可以被認(rèn)為是一個(gè)像素網(wǎng)格,其中每個(gè)像素是一個(gè)可以設(shè)置為特定顏色的圖片元素。有480行,每行由640個(gè)像素組成。(在本項(xiàng)目中使用)VGA接口串行工作,也就是說,每個(gè)像素的顏色信息一個(gè)接一個(gè)地發(fā)送,而不是一次發(fā)送。
顏色可以使用由每種基本顏色(紅、綠、藍(lán))的強(qiáng)度組成的三元組來表示。監(jiān)視器期望這些值是模擬的,因此使用了 DAC(數(shù)模轉(zhuǎn)換器)。
需要認(rèn)識(shí)到的一個(gè)重要事實(shí)是 VGA 顯示器沒有內(nèi)存,因此不會(huì)存儲(chǔ)寫入其中的像素信息。相反,必須將像素連續(xù)發(fā)送到顯示器以實(shí)現(xiàn)穩(wěn)定的圖像。VGA 適配器確實(shí)有內(nèi)存,將負(fù)責(zé)不斷地發(fā)送像素信息。”
讓我們看一下時(shí)序圖以了解有關(guān)該協(xié)議的更多信息:
測試VGA協(xié)議:
我將使用 Verilog 模塊為 VGA 生成水平同步和垂直同步
現(xiàn)在,一旦我們有了這個(gè)模塊,我們就可以在顯示器上繪制任何形狀。
所需時(shí)鐘為 25MHz,因此首先將板載 50MHz 除以 2 得到 25MHz。
hvsync_generator 模塊將在 VGA(頂部)模塊中實(shí)例化。數(shù)字 160、240 表示監(jiān)視器中的水平位置,480 是監(jiān)視器中可能的最大垂直距離。
R-1、G-1、B-1對應(yīng)白色,R-1、G-0、B-0對應(yīng)紅色,R-1、G-1、B-0對應(yīng)黃色,以此類推上。
約束文件和SDC文件:
測試 VGA 輸出:
現(xiàn)在我們已經(jīng)學(xué)習(xí)并測試了旋轉(zhuǎn)編碼器和 VGA 模塊,讓我們開始構(gòu)建乒乓球游戲。
3. 乒乓游戲的制作:
1.首先創(chuàng)建一個(gè)文件,用于生成水平同步和垂直同步信號并固定顯示區(qū)域
2.接下來添加乒乓球游戲的代碼,如以下步驟所述
聲明輸入和輸出,然后聲明分頻器,如博客系列的第 3部分所述
3. 接下來實(shí)例化水平同步和垂直同步信號的模塊,并編寫旋轉(zhuǎn)編碼器的代碼,如本博客前面所述。
然后我們根據(jù)計(jì)數(shù)器值移動(dòng)彈跳器,計(jì)數(shù)器值可以通過旋轉(zhuǎn)編碼器遞增或遞減
4. 在這一步中,讓我們編寫將在乒乓球比賽中使用的球的代碼:
5.根據(jù)滑動(dòng)開關(guān),選擇彈跳器是手動(dòng)還是自動(dòng)移動(dòng),根據(jù)球的位置,反轉(zhuǎn)球與任何物體碰撞的方向。
觀察碰撞和旋轉(zhuǎn)編碼器旋轉(zhuǎn)的方向,設(shè)置輸出到板載 LED
6.接下來編寫代碼,每次碰撞時(shí)更新球的位置并重置碰撞檢測器
7. 最后根據(jù)開關(guān)位置改變顏色,并將 RGB 信號分配給各自的輸出,并僅在顯示器的總區(qū)域內(nèi)顯示。
8.現(xiàn)在寫約束文件和SDC文件
約束文件:
SDC 文件:
綜合邏輯圖:
分析起來太復(fù)雜了,但它確實(shí)有效!
連接:
查看下面給出的約束和圖像,以了解有關(guān)如何連接模塊的更多信息。
VGA:
在 Pmod VGA 中,您會(huì)注意到它支持 12 位,但在這個(gè)項(xiàng)目中,我們只使用 3 位,紅色一位,綠色一位,藍(lán)色一位。
將 DE0 Nano 的 Red 引腳連接到 DAC 中權(quán)重最高的 Pmod 的 R3 其余位將在 Pmod 內(nèi)部接地。
以同樣的方式將綠色連接到 G3,將藍(lán)色連接到 B3。在 Pmod 中水平同步到 HS 和垂直同步到 VS。將 Pmod 的 VCC 和 GND 連接到 DE0 Nano 中的相應(yīng)引腳。
旋轉(zhuǎn)編碼器:
按照約束文件中的規(guī)定,將旋轉(zhuǎn)編碼器的數(shù)據(jù)引腳連接到 ROT_A 和旋轉(zhuǎn)編碼器的 Clk 引腳到 ROT_B 輸入。
將旋轉(zhuǎn)編碼器的 VCC 和 GND 連接到 DE0 Nano 中的相應(yīng)引腳。
你完成了!
對 FPGA 進(jìn)行編程并提供連接(請參閱引腳分配手冊),您將看到球和滑塊。確保啟用所需的開關(guān)以查看操作。
乒乓球游戲的最終輸出
參考:
1. https://how2electronics.com/construction-working-rotary-encoder/
2. https://reference.digilentinc.com/reference/pmod/pmodvga/reference-manual
3. https://reference.digilentinc.com/learn/programmable-logic/tutorials/vga-display-congroller/start
5. https://numato.com/kb/simple-vga-design-example-for-telesto/
- 如何進(jìn)行電源設(shè)計(jì)–第5部分
- 電源設(shè)計(jì)方法-第5部分
- 面包板到PCB第1部分-制作西蒙說游戲
- 用電信息采集系統(tǒng)型式規(guī)范第2部分 1次下載
- 用電信息采集系統(tǒng)型式規(guī)范第3部分 1次下載
- 用電信息采集系統(tǒng)技術(shù)規(guī)范第3部分 2次下載
- 用電信息采集系統(tǒng)檢驗(yàn)規(guī)范第4部分 0次下載
- 用電信息采集系統(tǒng)檢驗(yàn)規(guī)范第2部分 0次下載
- 用電信息采集系統(tǒng)檢驗(yàn)規(guī)范第3部分 0次下載
- 用電信息采集系統(tǒng)通信協(xié)議第3部分 3次下載
- 用電信息采集系統(tǒng)檢驗(yàn)規(guī)范第1部分 2次下載
- 用電信息采集系統(tǒng)通信協(xié)議第2部分 3次下載
- 電壓基準(zhǔn)如何影響ADC性能,第2部分 10次下載
- 基于FPGA的乒乓游戲機(jī)設(shè)計(jì)
- 基于FPGA的乒乓游戲機(jī)設(shè)計(jì)
- 雙極踏腳車(第二部分):微步和衰減模式 461次閱讀
- ADC數(shù)字下變頻器:抽取濾波器和ADC混疊,第2部分 1455次閱讀
- ADC眼中的虛擬評估,第2部分 624次閱讀
- 邊緣智能第1部分:邊緣節(jié)點(diǎn) 1046次閱讀
- 實(shí)時(shí)控制技術(shù)滿足實(shí)時(shí)工業(yè)通信發(fā)展的需求 —— 第2部分 993次閱讀
- JESD204C入門第2部分:新特性及其內(nèi)容 6242次閱讀
- DC/DC轉(zhuǎn)換器傳導(dǎo)EMI - 第2部分,噪聲傳播和濾波 3150次閱讀
- EDA實(shí)驗(yàn)之在FPGA上設(shè)計(jì)一個(gè)DDS模塊 2051次閱讀
- 電壓檢測器、監(jiān)控器和高級監(jiān)控各種功能介紹:第1部分 4859次閱讀
- Virtex5 FPGA在ISE + Planahead上部分可重構(gòu)功能的流程和技術(shù)要點(diǎn) 3687次閱讀
- 如何將MCU應(yīng)用到FPGA中:關(guān)于FPGA(1) 3800次閱讀
- 關(guān)于如何「訓(xùn)練」神經(jīng)網(wǎng)絡(luò)的一部分經(jīng)驗(yàn)與見解 7450次閱讀
- V5 FPGA配置回讀 9396次閱讀
- 無源元件并非真的“無源”:第1部分——電容 2433次閱讀
- 混合信號系統(tǒng)接地揭秘之第二部分 1663次閱讀
下載排行
本周
- 1使用單片機(jī)實(shí)現(xiàn)七人表決器的程序和仿真資料免費(fèi)下載
- 2.96 MB | 44次下載 | 免費(fèi)
- 2聯(lián)想E46L DAOLL6筆記本電腦圖紙
- 1.10 MB | 2次下載 | 5 積分
- 3MATLAB繪圖合集
- 27.12 MB | 2次下載 | 5 積分
- 4PR735,使用UCC28060的600W交錯(cuò)式PFC轉(zhuǎn)換器
- 540.03KB | 1次下載 | 免費(fèi)
- 5UCC38C42 30W同步降壓轉(zhuǎn)換器參考設(shè)計(jì)
- 428.07KB | 1次下載 | 免費(fèi)
- 6DV2004S1/ES1/HS1快速充電開發(fā)系統(tǒng)
- 2.08MB | 1次下載 | 免費(fèi)
- 7模態(tài)分解合集matlab代碼
- 3.03 MB | 1次下載 | 2 積分
- 8美的電磁爐維修手冊大全
- 1.56 MB | 1次下載 | 5 積分
本月
- 1使用單片機(jī)實(shí)現(xiàn)七人表決器的程序和仿真資料免費(fèi)下載
- 2.96 MB | 44次下載 | 免費(fèi)
- 2UC3842/3/4/5電源管理芯片中文手冊
- 1.75 MB | 15次下載 | 免費(fèi)
- 3DMT0660數(shù)字萬用表產(chǎn)品說明書
- 0.70 MB | 13次下載 | 免費(fèi)
- 4TPS54202H降壓轉(zhuǎn)換器評估模塊用戶指南
- 1.02MB | 8次下載 | 免費(fèi)
- 5STM32F101x8/STM32F101xB手冊
- 1.69 MB | 8次下載 | 1 積分
- 6HY12P65/HY12P66數(shù)字萬用表芯片規(guī)格書
- 0.69 MB | 6次下載 | 免費(fèi)
- 7華瑞昇CR216芯片數(shù)字萬用表規(guī)格書附原理圖及校正流程方法
- 0.74 MB | 6次下載 | 3 積分
- 8華瑞昇CR215芯片數(shù)字萬用表原理圖
- 0.21 MB | 5次下載 | 3 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935119次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420061次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191367次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73807次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65987次下載 | 10 積分
評論
查看更多