99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

詳解基于FPGA的數(shù)字電路對(duì)流水燈的實(shí)驗(yàn)

電子森林 ? 來(lái)源:?jiǎn)袅▎袅?/span> ? 作者:硬禾學(xué)堂 ? 2021-03-19 16:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

繼年前介紹的時(shí)序邏輯電路之時(shí)鐘分頻后,今天我們來(lái)介紹第7講:流水燈。

流水燈,有時(shí)候也叫跑馬燈,是一個(gè)簡(jiǎn)單、有趣又經(jīng)典的實(shí)驗(yàn),基本所有單片機(jī)的玩家們?cè)诔跗趯W(xué)習(xí)的階段都做過(guò)。本次我們也來(lái)介紹一下如何通過(guò)小腳丫FPGA實(shí)現(xiàn)一個(gè)流水燈。

流水燈就是讓一連串的燈在一定時(shí)間內(nèi)先后點(diǎn)亮并循環(huán)往復(fù),所以其中的關(guān)鍵要領(lǐng)就在于控制每?jī)蓚€(gè)相鄰LED亮滅的時(shí)間差,以及所有LED燈完成一組亮滅動(dòng)作后的循環(huán)。很久都沒(méi)有用過(guò)小腳丫的朋友可以再回顧一下,這上面有8個(gè)LED燈,且低電平點(diǎn)亮。

實(shí)現(xiàn)流水燈的方法絕不止一種,在這里我們采用模塊化的設(shè)計(jì)思路,因?yàn)槟K化設(shè)計(jì)對(duì)于之后構(gòu)建大型電路系統(tǒng)非常有幫助,并且我們還可以借機(jī)溫習(xí)一下以前學(xué)過(guò)的內(nèi)容。

現(xiàn)在我們的目標(biāo)是每過(guò)1秒后點(diǎn)亮下一個(gè)LED燈并且熄滅當(dāng)前燈,且在第8個(gè)燈熄滅之后循環(huán)整個(gè)流程,該如何設(shè)計(jì)整個(gè)模塊?我們先上圖后解釋。

毫無(wú)疑問(wèn),第一步需要做的就是通過(guò)分頻來(lái)生成一個(gè)周期為1秒的時(shí)鐘信號(hào),不了解時(shí)鐘分頻童鞋可以讀一下本系列的第6篇內(nèi)容。

有了一個(gè)1秒鐘嘀嗒一次的時(shí)鐘后,我們還要考慮到循環(huán)問(wèn)題,因?yàn)樵诘?個(gè)LED燈熄滅之后還需要再返回到第1個(gè)。那么這個(gè)時(shí)候我們就需要一個(gè)計(jì)數(shù)器,它的作用就是數(shù)羊,一只,兩只…。..數(shù)到第八只后重頭再來(lái)。數(shù)8只羊需要一個(gè)3位寬的變量(23=8)。

最后,由于我們是要依次點(diǎn)亮,也就是說(shuō)8位的輸出中每次只有1位是低電平,其余均為高電平(小腳丫LED燈為低電平點(diǎn)亮)。這個(gè)特性正好對(duì)應(yīng)了我們之前學(xué)過(guò)的3-8譯碼器。

現(xiàn)在我們?cè)賮?lái)捋一遍。首先,通過(guò)分頻在小腳丫上生成一個(gè)周期為1秒的慢速時(shí)鐘信號(hào),這個(gè)時(shí)鐘信號(hào)傳送到計(jì)數(shù)器之中;這個(gè)計(jì)數(shù)器是3位寬的,因此最多可以計(jì)八次慢速時(shí)鐘的嘀嗒,并且計(jì)數(shù)每增加1時(shí),都對(duì)應(yīng)著3-8譯碼器的下一種輸出,也就對(duì)應(yīng)著流水燈的下一個(gè)狀態(tài)。

現(xiàn)在我們上代碼:

module runningled (clk,led); input clk,rst; output[7:0] led; reg [2:0] cnt ; //定義了一個(gè)3位的計(jì)數(shù)器,輸出可以作為3-8譯碼器的輸入 wire clk1hz; //定義一個(gè)中間變量,表示分頻得到的時(shí)鐘,用作計(jì)數(shù)器的觸發(fā) //例化分頻模塊,產(chǎn)生一個(gè)1Hz時(shí)鐘信號(hào) divide #(.WIDTH(24),.N(12000000)) u2 ( //除數(shù)為12,000,000,因此頻率為1Hz .clk(clk), .rst_n(rst), .clkout(clk1hz) ); //生成計(jì)數(shù)器,上沿觸發(fā)并循環(huán)計(jì)數(shù) always@(posedge clk1hz) cnt 《=《 span=“”》 cnt +1; // 達(dá)到位寬上限后可自動(dòng)溢出清零 //例化3-8譯碼器模塊 decode38 u1 ( .X(cnt), //例化的輸入端口連接到cnt,輸出端口連接到led .D(led) );endmodule

在第四篇講譯碼器的文章里,我們介紹過(guò),如果需要調(diào)用/例化子模塊時(shí),需要將各子模塊與大模塊放入同一個(gè)工程文件下進(jìn)行編譯。最后我們?cè)賮?lái)對(duì)小腳丫進(jìn)行管腳配置并燒錄就可以了。

對(duì)應(yīng)變量小腳丫管腳FPGA管腳

clkClockJ5

led [0]LED1N15

led [1]LED2N14

led [2]LED3M14

led [3]LED4M12

led [4]LED5L12

led [5]LED6K12

led [6]LED7L11

led [7]LED8K11

如果大家成功地在小腳丫上實(shí)現(xiàn)了流水燈的程序,還可以自己玩一個(gè)有意思的實(shí)驗(yàn):比如,你可以通過(guò)修改程序來(lái)提高流水燈的刷新頻率,然后看看LED燈的刷新率為多少時(shí)你的肉眼無(wú)法分別。同時(shí)再打開(kāi)手機(jī)的攝像頭,也以同樣的方法試驗(yàn)一番。結(jié)合到你觀察的現(xiàn)象,可以自己琢磨并思考一下,說(shuō)不定能挖掘出更多的知識(shí)。

備注一些大伙都知道的常識(shí):我國(guó)交流電工頻為50Hz,電腦常用顯示器的刷新率有60,75和144赫茲。華為Mate30刷新頻率為90赫茲,蘋果6-12的刷新頻率為60赫茲。
編輯:lyn

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1645

    文章

    22049

    瀏覽量

    618374
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6067

    文章

    44991

    瀏覽量

    650401
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70731

原文標(biāo)題:基于FPGA的數(shù)字電路實(shí)驗(yàn)7:流水燈的實(shí)現(xiàn)

文章出處:【微信號(hào):xiaojiaoyafpga,微信公眾號(hào):電子森林】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    數(shù)字電路—24、計(jì)數(shù)器

    數(shù)字電路中,能夠記憶輸入脈沖個(gè)數(shù)的電路稱為計(jì)數(shù)器
    發(fā)表于 03-26 15:13

    數(shù)字電路—23、寄存器

    數(shù)字電路中,用來(lái)存放二進(jìn)制數(shù)據(jù)或代碼的電路稱為寄存器。
    發(fā)表于 03-26 15:11

    數(shù)字電路設(shè)計(jì)中:前端與后端的差異解析

    本文介紹了數(shù)字電路設(shè)計(jì)中“前端”和“后端”的區(qū)別。 數(shù)字電路設(shè)計(jì)中“前端”和“后端”整個(gè)過(guò)程可類比蓋一棟大樓:前端好比建筑師在圖紙上進(jìn)行功能和布局的抽象設(shè)計(jì),后端則是工程隊(duì)把圖紙變成實(shí)體建筑的過(guò)程
    的頭像 發(fā)表于 02-12 10:09 ?556次閱讀

    數(shù)字電路有哪些特點(diǎn)和作用

    在電子技術(shù)領(lǐng)域,數(shù)字電路具有一系列鮮明的特點(diǎn),這些特點(diǎn)使其在眾多應(yīng)用場(chǎng)景中發(fā)揮關(guān)鍵作用,推動(dòng)著現(xiàn)代科技不斷向前發(fā)展。 信號(hào)的離散性是數(shù)字電路最為突出的特點(diǎn)之一。數(shù)字電路所處理的數(shù)字信號(hào)
    的頭像 發(fā)表于 02-04 17:17 ?925次閱讀

    數(shù)字電路與控制系統(tǒng)關(guān)系

    在現(xiàn)代技術(shù)領(lǐng)域,數(shù)字電路和控制系統(tǒng)是兩個(gè)不可或缺的組成部分。數(shù)字電路作為電子技術(shù)的基礎(chǔ),為控制系統(tǒng)提供了必要的硬件支持。而控制系統(tǒng)則是利用這些硬件來(lái)實(shí)現(xiàn)對(duì)各種機(jī)械設(shè)備或過(guò)程的精確控制。 數(shù)字電路
    的頭像 發(fā)表于 01-24 09:43 ?606次閱讀

    數(shù)字電路在嵌入式系統(tǒng)中的應(yīng)用

    隨著科技的迅猛發(fā)展,嵌入式系統(tǒng)已經(jīng)成為現(xiàn)代電子產(chǎn)品不可或缺的一部分。從簡(jiǎn)單的家用電器到復(fù)雜的工業(yè)控制系統(tǒng),嵌入式系統(tǒng)無(wú)處不在。數(shù)字電路作為嵌入式系統(tǒng)的核心組成部分,其設(shè)計(jì)和應(yīng)用直接影響著系統(tǒng)的性能
    的頭像 發(fā)表于 01-24 09:41 ?632次閱讀

    數(shù)字電路編程語(yǔ)言介紹

    數(shù)字電路編程語(yǔ)言是專門為描述和模擬數(shù)字電路而設(shè)計(jì)的編程語(yǔ)言。它們通常具有以下特點(diǎn): 硬件描述語(yǔ)言(HDL) :大多數(shù)數(shù)字電路編程語(yǔ)言都是硬件描述語(yǔ)言,如VHDL和Verilog。這些語(yǔ)言允許設(shè)計(jì)師以
    的頭像 發(fā)表于 01-24 09:39 ?777次閱讀

    數(shù)字電路與模擬電路的區(qū)別

    在電子工程領(lǐng)域,數(shù)字電路和模擬電路是兩種截然不同的技術(shù)。它們?cè)谔幚硇盘?hào)、設(shè)計(jì)方法、應(yīng)用領(lǐng)域以及性能特點(diǎn)上有著明顯的差異。 一、信號(hào)處理方式 1.1 模擬電路 模擬電路處理的是連續(xù)變化的
    的頭像 發(fā)表于 01-24 09:36 ?1340次閱讀

    模擬電路數(shù)字電路的區(qū)別

    在現(xiàn)代電子技術(shù)中,模擬電路數(shù)字電路是兩種截然不同的電路類型,它們各自有著獨(dú)特的特點(diǎn)和應(yīng)用場(chǎng)景。 一、信號(hào)處理方式 模擬電路: 模擬電路處理
    的頭像 發(fā)表于 01-24 09:22 ?1000次閱讀

    數(shù)字電路仿真實(shí)現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《數(shù)字電路仿真實(shí)現(xiàn).pdf》資料免費(fèi)下載
    發(fā)表于 01-21 09:24 ?2次下載
    <b class='flag-5'>數(shù)字電路</b>仿真實(shí)現(xiàn)

    低成本單片機(jī)方案——觸摸流水燈開(kāi)關(guān)控制

    方案觸摸流水燈控制方案Thedevelopmentofascheme隨著物聯(lián)網(wǎng)技術(shù)的不斷發(fā)展和智能家居的普及,觸摸流水燈控制方案作為一種新型的智能照明控制方式,逐漸成為市場(chǎng)的新寵。PART.1方案
    的頭像 發(fā)表于 12-26 16:37 ?816次閱讀
    低成本單片機(jī)方案——觸摸<b class='flag-5'>流水燈</b>開(kāi)關(guān)控制

    如何使用 Verilog 進(jìn)行數(shù)字電路設(shè)計(jì)

    使用Verilog進(jìn)行數(shù)字電路設(shè)計(jì)是一個(gè)復(fù)雜但有序的過(guò)程,它涉及從概念設(shè)計(jì)到實(shí)現(xiàn)、驗(yàn)證和優(yōu)化的多個(gè)階段。以下是一個(gè)基本的步驟指南,幫助你理解如何使用Verilog來(lái)設(shè)計(jì)數(shù)字電路: 1. 明確設(shè)計(jì)需求
    的頭像 發(fā)表于 12-17 09:47 ?1308次閱讀

    數(shù)字電路可以處理模擬信號(hào)嗎

    數(shù)字電路主要處理數(shù)字信號(hào),即離散的、二進(jìn)制的信號(hào)。然而,在某些情況下,數(shù)字電路也可以處理模擬信號(hào),即連續(xù)的、非二進(jìn)制的信號(hào)。 數(shù)字電路與模擬信號(hào) 數(shù)
    的頭像 發(fā)表于 08-11 11:08 ?1188次閱讀

    數(shù)字電路是對(duì)什么信號(hào)進(jìn)行傳輸?shù)?/a>

    數(shù)字電路是一種電子系統(tǒng),它使用數(shù)字信號(hào)進(jìn)行信息傳輸和處理。數(shù)字信號(hào)是由離散的電壓水平或電流水平表示的信號(hào),通常用二進(jìn)制代碼表示。與模擬電路
    的頭像 發(fā)表于 08-11 11:00 ?1484次閱讀

    探秘LED顯示屏背后的秘密:數(shù)字信號(hào)與數(shù)字電路的奇妙世界

    探秘LED顯示屏背后的秘密:數(shù)字信號(hào)與數(shù)字電路的奇妙世界
    的頭像 發(fā)表于 08-02 02:36 ?812次閱讀