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