資料介紹
描述
在這個(gè)項(xiàng)目中,SPI 接口代碼是用 Verilog 編寫的,用于連接來(lái)自 Pmod-ALS 的 8 位 ADC。8 位二進(jìn)制轉(zhuǎn)換為 BCD 并顯示在 7 段顯示器上。Verilog 代碼是在 Basys 3 板上的 Artix-7 FPGA 上合成的。
關(guān)于我.. 我已經(jīng)開(kāi)始學(xué)習(xí) Verilog,從硬件的角度思考是非常充實(shí)和令人興奮的。該項(xiàng)目需要更改和改進(jìn),我很高興知道您對(duì)此有何看法。
概述
該項(xiàng)目由三個(gè)模塊組成,如下所示。
- spi_interface
- 雙重涉獵
- 七段顯示
模塊組織:
模塊一:SPI接口
(模塊:spi_interface)
Pmod 環(huán)境光傳感器 (ALS) 具有一個(gè)帶有高速 SPI 接口的 8 位 ADC(來(lái)自 Texas Instruments 的 ADC081S021)。
由于在硬件上調(diào)試時(shí)序非常重要,因此我分配了 3 個(gè) I/O 用于監(jiān)控 Digilent Analog Discovery 上 Pmod ALS 的 CS、SCLK、SDO 線。
注意:即使在仿真中分析和調(diào)試時(shí)序(通過(guò)測(cè)試臺(tái)代碼),在邏輯分析儀上連接一些信號(hào)也變得非常有必要——在下圖中用藍(lán)色框表示。
架構(gòu):SPI接口
傳感器規(guī)范描述了以下時(shí)序圖,它是 verilog spi_interface 代碼的完整基礎(chǔ)。
這是通過(guò)兩個(gè) 8 位計(jì)數(shù)器和一個(gè) 8 位寄存器實(shí)現(xiàn)的。
reg [7:0] data_counter; // Free running counter till 20, to time CS
reg [7:0] clk_div; // Prescaler 100 MHz FPGA clock to 1.92 MHz SPI Clock
reg [7:0] r_RX_Byte = 8'b0000_0000; // MISO: Received 1 byte of data from PMOD_ALS
時(shí)鐘分頻器(clk_div):從主時(shí)鐘(Basys 3 板上的 100 MHz)導(dǎo)出 spi 時(shí)鐘(1.92 MHz)。
Pmod ALS 上的 ADC 將光強(qiáng)度的模擬值轉(zhuǎn)換為數(shù)字值,然后將其串行化以在 SPI 總線上傳輸。
前 3 位和后 4 位是零和 1 個(gè)三態(tài)位。中間的 8 位是數(shù)據(jù)。我們的 verilog 代碼在 spi 時(shí)鐘的幫助下同步捕獲這些數(shù)據(jù)。
數(shù)據(jù)計(jì)數(shù)器:data_counter 是一個(gè)自由運(yùn)行的計(jì)數(shù)器,由 spi 時(shí)鐘計(jì)時(shí)。它被調(diào)整為觸發(fā)數(shù)據(jù)讀取和控制從/到 Pmod-SDO 的芯片選擇。
一旦 data_counter 變?yōu)?20,它就會(huì)被重置為 0。在 16 時(shí),CS 按照時(shí)序圖的要求被拉高。
注意:CS 可以作為該模塊的輸入,以便頂層應(yīng)用程序可以命令 CS 引腳。
SDO數(shù)據(jù)讀取:按照時(shí)序圖圖 6 將 SDO 數(shù)據(jù)讀取到 8 位寄存器(MSB 在前)。
模塊 2:雙重涉獵
讀取的 8 位數(shù)據(jù)被轉(zhuǎn)換為三個(gè) 4 位 BCD 矢量,以便能夠在 7 段顯示器上的每個(gè)十進(jìn)制數(shù)字處驅(qū)動(dòng)每個(gè) LED。請(qǐng)?jiān)趆ttps://www.nandland.com/vhdl/modules/double-dabble.html閱讀 Russel 的這篇漂亮的文章
我使用了他的 double dabble 算法的 verilog 代碼并納入了這個(gè)項(xiàng)目。謝謝拉塞爾:)
模塊三:七段顯示
該模塊將 4 位 BCD 矢量轉(zhuǎn)換為驅(qū)動(dòng) Basys 3 板上四個(gè)七段顯示器的 LED。
有關(guān)七段顯示的詳細(xì)信息,請(qǐng)參閱 Basys 3 參考手冊(cè)。https://reference.digilentinc.com/programmable-logic/basys-3/reference-manual
模擬:
請(qǐng)?jiān)?GitHub 存儲(chǔ)庫(kù)中找到測(cè)試平臺(tái)代碼。
所有三個(gè)模塊都被實(shí)例化。
串行數(shù)據(jù)在 SDO 線上傳輸,用于仿真和驗(yàn)證。有待驗(yàn)證雙dabble算法和七段顯示器的陽(yáng)極/陰極控制是否能正常工作。
結(jié)果:
概括
與這個(gè)項(xiàng)目一起工作非常有趣。需要改進(jìn)以降低的頻率傳輸數(shù)據(jù)字節(jié)以及在七段顯示模塊中,以便數(shù)據(jù)字節(jié)的所有三位數(shù)字都清楚地顯示在顯示器上。我很高興聽(tīng)到您對(duì)這個(gè)項(xiàng)目的想法。
最重要的是特別感謝來(lái)自nandland.com的 Russel和來(lái)自Simply Embedded的 Greidi Ajalik 。我從你那里學(xué)到了很多東西,并感謝你所做的工作。
感謝您的閱讀!
- STM32CubeMX-HAL庫(kù)的SPI接口使用
- 基于Verilog的SPI接口設(shè)計(jì)
- 第9章:串行外設(shè)接口模塊(SPI)PPT下載 35次下載
- ST公司的M25Pxx SPI flash memory的verilog仿真模型
- 通過(guò)Verilog在SRAM讀寫程序源代碼 7次下載
- 基于Verilog的FPGA與USB 2.0高速接口設(shè)計(jì)資料下載
- 如何在FPGA中實(shí)現(xiàn)SPI4.2接口 13次下載
- 使用Verilog實(shí)現(xiàn)SPI串行總線接口的資料和源代碼免費(fèi)下載 9次下載
- SPI總線接口在OLED模塊中的應(yīng)用詳細(xì)說(shuō)明 7次下載
- STM32F4串行外設(shè)接口(SPI)的源代碼的詳細(xì)資料免費(fèi)下載 50次下載
- Verilog 入門的實(shí)例代碼 20次下載
- verilog_代碼 12次下載
- ENC28J60 spi 接口 以太網(wǎng) 網(wǎng)絡(luò)模塊 提供 代碼 22次下載
- verilog代碼規(guī)范 24次下載
- verilog_代碼資料 37次下載
- JK觸發(fā)器與T觸發(fā)器的Verilog代碼實(shí)現(xiàn)和RTL電路實(shí)現(xiàn) 3737次閱讀
- 分享一些優(yōu)秀的verilog代碼 高質(zhì)量verilog代碼的六要素 974次閱讀
- Verilog代碼封裝后門訪問(wèn) 757次閱讀
- SPI RTC與摩托羅拉DSP接口 1096次閱讀
- SPI接口如何幫助減少系統(tǒng)板設(shè)計(jì)中的數(shù)字GPIO數(shù)量 983次閱讀
- 什么樣的Verilog代碼風(fēng)格是好的風(fēng)格? 1351次閱讀
- SPI接口簡(jiǎn)介 如何減少系統(tǒng)電路板設(shè)計(jì)中的數(shù)字GPIO數(shù)量 2670次閱讀
- 高質(zhì)量Verilog代碼有什么特點(diǎn) 1884次閱讀
- 嵌入式硬件通信接口協(xié)議中的串行通信接口-SPI 1559次閱讀
- 蜂鳥(niǎo)FPGA開(kāi)發(fā)板及蜂鳥(niǎo)JTAG下載器講解說(shuō)明 1w次閱讀
- 基于FPGA的SPI Master Interface設(shè)計(jì) 1w次閱讀
- 沒(méi)有直接可用的Pmod驅(qū)動(dòng)怎么辦?教你一招 2267次閱讀
- 無(wú)驅(qū)動(dòng)問(wèn)題的Zynq搭配Pmod開(kāi)發(fā)解決方案 1830次閱讀
- 軟件模擬SPI接口的實(shí)現(xiàn)方法過(guò)程詳解 2.5w次閱讀
- Verilog代碼設(shè)計(jì)案例分析 4176次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開(kāi)發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多