www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 工業(yè)控制 > 電路設(shè)計項目集錦
[導(dǎo)讀]多年來,在超過100個Hackster項目中,我們研究了一些非常深入和復(fù)雜的解決方案,從機器人到視覺處理,創(chuàng)建自己的硬件,當然還有涵蓋數(shù)學等概念的項目,以及fpga中的濾波。

多年來,在超過100個Hackster項目中,我們研究了一些非常深入和復(fù)雜的解決方案,從機器人到視覺處理,創(chuàng)建自己的硬件,當然還有涵蓋數(shù)學等概念的項目,以及fpga中的濾波。

在這個項目中,我想回顧一下基礎(chǔ)知識,看看我們?nèi)绾闻c不同類型的開關(guān)、按鈕、led和顯示器進行交互,這樣我們就可以了解更多,當我們在其他應(yīng)用中使用它們時,我們可以最好地解決它們。

所以在這個項目中,我們將使用Basys 3開發(fā)板以及一些Pmods來提供額外的接口。

對于這個項目,我們將使用

?Pmod ENC -正交編碼器

?按鈕

?發(fā)光二極管

我們的目標是教授以下內(nèi)容

?如何消除一個開關(guān)的彈跳

?如何閱讀正交編碼器

?如何驅(qū)動led有不同的強度使用脈寬調(diào)制

讓我們開始吧,當然,這些技術(shù)和代碼將能夠在任何具有類似開關(guān),顯示器和led的FPGA板上使用。

消除彈跳

Basys 3有兩種開關(guān),一個按鈕和滑塊,當開關(guān)被翻轉(zhuǎn)、滑動或按下時,我們正在斷開或建立電氣連接。開關(guān)不做一個干凈的即時連接,而是在穩(wěn)定之前,他們先斷斷續(xù)續(xù)地接觸。這種斷斷續(xù)續(xù)的初始接觸導(dǎo)致被稱為開關(guān)彈跳。

開關(guān)彈跳如下圖所示,在開關(guān)打開或斷開之后有許多過渡。反彈可能是全振幅或部分振幅反彈。

當我們想要在應(yīng)用程序中對開關(guān)進行采樣時,我們需要考慮可能發(fā)生的任何開關(guān)反彈。如果不這樣做,就意味著我們可能會多次注冊操作,這將是困難的。

在真實的硬件世界中,開關(guān)反彈可能如下所示,這是Basys 3上的一個按鈕開關(guān)的示波器捕獲。

通常一個開關(guān)可能會反彈幾毫秒,所以我們需要在FPGA中考慮到這一點。

值得慶幸的是,在使用fpga中的開關(guān)時,我們可以使用幾種技術(shù)來消除它們的反彈。所有這些都包括使用同步設(shè)計,因此我們需要做的第一件事是將開關(guān)輸入同步到正確的時鐘域。

如果你不熟悉為什么我們需要同步到時鐘域。這是因為所有寄存器都有一個設(shè)置和保持時鐘邊緣的時間,它更新寄存器。

如果輸入在此窗口內(nèi)發(fā)生變化,則寄存器的輸出將變?yōu)閬喎€(wěn)態(tài)。這意味著在1和0之間的狀態(tài),它會隨機恢復(fù)到1或0但它與輸入電平?jīng)]有關(guān)系。

因此,我們至少使用一個兩級寄存器來同步進入FPGA的信號,該信號未與時鐘同步。這允許第一個寄存器進入亞穩(wěn)態(tài)并在下一個時鐘和更新第二個寄存器之前恢復(fù)。這確保了同步器下游的寄存器不會冒著看到亞穩(wěn)態(tài)值和在設(shè)計中傳播問題的風險。

因此,我們需要使用這樣的同步器來同步輸入的開關(guān)信號。

一旦我們同步了信號,我們就需要消除信號的反彈,因為反彈仍然會通過同步器,它們只是與時鐘同步。

我們可以使用一個簡單的同步器和計數(shù)器來消除開關(guān)輸入的反彈

為了測試這段代碼,我們可以創(chuàng)建一個針對Basys 3板的Vivado項目,創(chuàng)建一個新的VHDL文件并模擬它。

我們將看到如下波形,其中輸入開關(guān)改變狀態(tài),它使用兩個寄存器同步,然后在輸入輸出之前等待10毫秒。

現(xiàn)在我們已經(jīng)消除了一個開關(guān)輸入,我們可以看看如何使用一個更復(fù)雜的開關(guān),如旋轉(zhuǎn)編碼器。

旋轉(zhuǎn)編碼器

旋轉(zhuǎn)編碼器是一種快速切換不同選項的方法,一個常見的例子是使用它的旋轉(zhuǎn)來控制LED或顯示屏的亮度。

它通常也被稱為正交編碼器,因為兩個輸出a和B彼此位于90度,例如在正交中。

當開關(guān)按時鐘或反時鐘方向旋轉(zhuǎn)時,你會看到A和B的變化,當然你會得到反彈。

根據(jù)兩個輸出A或B中哪一個有第一條邊,我們可以確定旋轉(zhuǎn)的方向。

通常旋轉(zhuǎn)編碼器也有一個按鈕,可用于確認選擇等。

當我們旋轉(zhuǎn)旋轉(zhuǎn)編碼器,我們會得到小故障,可以看到下面,但這些是較短的持續(xù)時間,因為車輪旋轉(zhuǎn)。

注意,使用的編碼器通常是高的,因為它被拉起來。

為了讀取編碼器并確定旋轉(zhuǎn)方向,我們可以使用邊緣檢測。

下面的代碼示例允許我們根據(jù)表盤的旋轉(zhuǎn)方向增加或減少向量值。

我們可以將其添加到我們的Vivado項目中,并使用下面的測試臺模擬其行為

運行模擬,您可以看到計數(shù)隨著編碼器旋轉(zhuǎn)的變化而增加,然后減少。

通過切換設(shè)置的斜坡值模擬,我們可以看到計數(shù)增加,然后減少。

現(xiàn)在我們有兩個元素,我們需要我們的LED調(diào)光電路。下一個要素是創(chuàng)建驅(qū)動電路。

脈寬調(diào)制

脈寬調(diào)制是偉大的提供可變功率負載和重建模擬信號與簡單的后處理與R和C。

PWM信號有兩個關(guān)鍵元素

?周期-信號的重復(fù)周期

?占空比-多少周期的信號是高的

對于本應(yīng)用程序,我們將使用50Hz PWM周期,并使用旋轉(zhuǎn)編碼器使PWM周期可控。

PWM的代碼是

而試驗臺將設(shè)置幾個不同的PWM輸出

在我們的Vivado項目中運行這個程序顯示如下,我們可以看到脈沖寬度隨著輸入需求的改變而改變。

現(xiàn)在,我們準備將所有這些整合到Vivado設(shè)計中,并在硬件上進行測試。

整合設(shè)計

為了開始這個,我們將在Vivado創(chuàng)建一個新的框圖項目。在此基礎(chǔ)上,我們將添加剛剛創(chuàng)建的RTL課程代碼。

通過將IP核添加到框圖中,我們能夠創(chuàng)建頂層包裝器并綜合設(shè)計。

我已經(jīng)將旋轉(zhuǎn)編碼器連接到A和B輸入,旋轉(zhuǎn)編碼器還包括1毫秒的彈跳鎖定。我還稍微更改了代碼,每次旋轉(zhuǎn)增加/減少8,以停止需要256次調(diào)整。

我還增加了第二個LED連接到按鈕開關(guān)時,旋轉(zhuǎn)開關(guān)被推動。這是連接到消跳電路。

讓Vivado管理包裝器

一旦合成完成,我們就可以在XDC文件中分配IO

一旦比特流完成,我們就可以下載并在硬件上進行測試。

旋轉(zhuǎn)編碼器改變時,我們可以看到ILA上的LED值發(fā)生變化。

總結(jié)

雖然是一個簡單的項目,但我希望這個項目已經(jīng)提供了信息和有用的,特別是如果你剛剛開始你的FPGA之旅。在更復(fù)雜的解決方案中,與交換機接口和處理反彈可能會導(dǎo)致意外命令的問題。

本文編譯自hackster.io

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

在數(shù)字化浪潮席卷全球的今天,F(xiàn)PGA技術(shù)正成為驅(qū)動創(chuàng)新的核心引擎。2025年8月21日,深圳將迎來一場聚焦FPGA技術(shù)與產(chǎn)業(yè)應(yīng)用的盛會——2025安路科技FPGA技術(shù)沙龍。本次沙龍以“定制未來 共建生態(tài)”為主題,匯聚行業(yè)...

關(guān)鍵字: FPGA 核心板 開發(fā)板

在現(xiàn)代電子系統(tǒng)中,現(xiàn)場可編程門陣列(FPGA)憑借其開發(fā)時間短、成本效益高以及靈活的現(xiàn)場重配置與升級等諸多優(yōu)點,被廣泛應(yīng)用于各種產(chǎn)品領(lǐng)域。從通信設(shè)備到工業(yè)控制,從汽車電子到航空航天,F(xiàn)PGA 的身影無處不在。為了充分發(fā)揮...

關(guān)鍵字: 可編程門陣列 FPGA 數(shù)字電源

2025年8月4日 – 提供超豐富半導(dǎo)體和電子元器件?的業(yè)界知名新品引入 (NPI) 代理商貿(mào)澤電子 (Mouser Electronics) 即日起開售Altera?的Agilex? 3 FPGA C系列開發(fā)套件。此開...

關(guān)鍵字: FPGA 邊緣計算 嵌入式應(yīng)用

探索電子世界可以是令人興奮的,無論你是剛剛開始你的旅程或已經(jīng)有經(jīng)驗的動手項目。找到合適的工具,使學習既簡單又吸引人,這對建立信心和技能至關(guān)重要。來自Elecfreaks的JacDac智能探索套件,專為micro:bit...

關(guān)鍵字: JacDac智能探索套件 磁傳感器 旋轉(zhuǎn)編碼器

內(nèi)窺鏡泛指經(jīng)自然腔道或人工孔道進入體內(nèi),并對體內(nèi)器官或結(jié)構(gòu)進行直接觀察和對疾病進行診斷的醫(yī)療設(shè)備,一般由光學鏡頭、冷光源、光導(dǎo)纖維、圖像傳感器以及機械裝置等構(gòu)成。文章介紹了一款基于兩片圖像傳感器和FPGA組成的微型3D內(nèi)...

關(guān)鍵字: 微創(chuàng) 3D內(nèi)窺鏡 OV6946 FPGA

運用單片機和FPGA芯片作為主控制器件 , 單片機接收從PC機上傳過來的顯示內(nèi)容和顯示控制命令 , 通過命令解釋和數(shù)據(jù)轉(zhuǎn)換 , 生成LED顯示屏所需要的數(shù)據(jù)信號和同步的控制信號— 數(shù)據(jù)、時鐘、行同步和面同步 。FPGA芯...

關(guān)鍵字: 單片機 FPGA LED顯示屏

執(zhí)行器的作用是控制機器人或機器的動作,根據(jù)指令完成所需動作;傳感器的作用是將所測得的物理量轉(zhuǎn)換為電信號,以便計算機或控制器進行處理和分析。

關(guān)鍵字: 傳感器 執(zhí)行器

在異構(gòu)計算系統(tǒng)中,ARM與FPGA的協(xié)同工作已成為高性能計算的關(guān)鍵架構(gòu)。本文基于FSPI(Fast Serial Peripheral Interface)四線模式,在150MHz時鐘頻率下實現(xiàn)10.5MB/s的可靠數(shù)據(jù)...

關(guān)鍵字: ARM FPGA FSPI

【2025年7月7日, 德國慕尼黑訊】全球功率系統(tǒng)和物聯(lián)網(wǎng)領(lǐng)域的半導(dǎo)體領(lǐng)導(dǎo)者英飛凌科技股份公司(FSE代碼:IFX / OTCQX代碼:IFNNY)最新推出了PSOCTM 4 HVMS產(chǎn)品系列,擴展其PSOC? 4 HV...

關(guān)鍵字: 智能傳感器 執(zhí)行器 微控制器

蘇州 2025年7月1日 /美通社/ -- 2025年第一季度,儒拉瑪特成功斬獲國內(nèi)制動系統(tǒng)龍頭企業(yè)的首個EMB(機械式線控制動)自動化項目。該項目涵蓋30余個工藝站,可兼容多個產(chǎn)品的生產(chǎn)。儒拉瑪特團隊通過模...

關(guān)鍵字: 制動系統(tǒng) 線控 執(zhí)行器 裝配線
關(guān)閉