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

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

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

如何設(shè)計(jì)一個(gè)對按鍵信號進(jìn)行計(jì)數(shù)的計(jì)數(shù)器?

冬至子 ? 來源:大哈學(xué)習(xí)紀(jì)錄鋪 ? 作者:張大哈 ? 2023-10-10 14:27 ? 次閱讀

實(shí)驗(yàn)任務(wù): 本實(shí)驗(yàn)中要設(shè)計(jì)一個(gè)對按鍵信號(key_in)進(jìn)行計(jì)數(shù)的計(jì)數(shù)器。

實(shí)驗(yàn)原理 整個(gè)實(shí)驗(yàn)電路包含四個(gè)模塊:

① erzp模塊完成按鍵消抖功能,默認(rèn)抖動(dòng)時(shí)間為10MS;

② detect_module模塊用于檢測按鍵信號的下降沿,當(dāng)檢測到下降沿后,輸出一個(gè)時(shí)鐘周期的高電平。

③ get_state模塊:將按鍵信號轉(zhuǎn)換成狀態(tài)信號,當(dāng)按鍵按下后,狀態(tài)轉(zhuǎn)換0→1→0→1→……..。

④ cnt10模塊:完成對按鍵信號進(jìn)行計(jì)數(shù)。clk:系統(tǒng)時(shí)鐘,cnt_en:計(jì)數(shù)使能(1:計(jì)數(shù),0:暫停),cnt_single:計(jì)數(shù)信號,rst_n:復(fù)位信號,updown_state:加1計(jì)數(shù)或減1計(jì)數(shù)控制(1:加1計(jì)數(shù),0:減1計(jì)數(shù))。data:計(jì)數(shù)結(jié)果輸出。

源代碼撰寫:

erzp****模塊:

默認(rèn)抖動(dòng)時(shí)間最多為10ms,框1與框2的功能就是,計(jì)數(shù)當(dāng)前電平若處于一直處于低電平就key_low一直自加1 ,一旦不是低電平了key_low就清0.高電平key_hign同理。當(dāng)key_low或key_hign當(dāng)前計(jì)數(shù)到了10ms,說明當(dāng)前已經(jīng)過了抖動(dòng)狀態(tài)。并且輸出當(dāng)前消抖后的對應(yīng)電平。

圖片

detect_module****模塊:

這里主要是利用了一個(gè)寄存器,讓上一個(gè)時(shí)鐘狀態(tài)的按鍵狀態(tài)和當(dāng)前的對比,不一樣說明有了邊緣變化。

圖片

get_state****模塊:

圖片

cnt10****模塊:

圖片

原理圖繪制頂層文件流程:

1.將以上四個(gè).v文件依次轉(zhuǎn)換為電路器件,生成BSF文件如右圖所示

圖片

圖片

2.建立一個(gè)頂層原理圖bdf(后建立的要設(shè)為頂層,與項(xiàng)目工程名稱一致。)

圖片

圖片

在原理圖中可以放置器件,可以看到剛剛生產(chǎn)的器件。并按邏輯進(jìn)行連接。并修改對應(yīng)端口名。完成之后,為了之后仿真,可以轉(zhuǎn)成.v文件。

圖片

圖片

圖片

生成如圖所示:以后也可將此項(xiàng)目作為整個(gè)調(diào)用的器件,生成BSF文件

圖片

圖片

圖片

RTL視圖:

圖片

測試代碼撰寫: 測試時(shí),需將原理圖移除,將轉(zhuǎn)化的.V文件加進(jìn)來。

圖片

測試結(jié)果

圖片

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

    關(guān)注

    31

    文章

    5274

    瀏覽量

    119661
  • 計(jì)數(shù)器
    +關(guān)注

    關(guān)注

    32

    文章

    2248

    瀏覽量

    94185
  • CLK
    CLK
    +關(guān)注

    關(guān)注

    0

    文章

    126

    瀏覽量

    17089
  • 按鍵消抖
    +關(guān)注

    關(guān)注

    2

    文章

    27

    瀏覽量

    10430
收藏 人收藏

    評論

    相關(guān)推薦

    計(jì)數(shù)器的級連使用

    計(jì)數(shù)器的級連使用 個(gè)十進(jìn)制計(jì)數(shù)器只能顯示0~9十個(gè)數(shù),為了擴(kuò)大計(jì)數(shù)器范圍,常用多個(gè)十進(jìn)制
    發(fā)表于 11-22 12:53 ?3939次閱讀
    <b class='flag-5'>計(jì)數(shù)器</b>的級連使用

    環(huán)形計(jì)數(shù)器和扭環(huán)形計(jì)數(shù)器

    環(huán)形計(jì)數(shù)器和扭環(huán)形計(jì)數(shù)器 移位寄存也可以構(gòu)成計(jì)數(shù)器,稱為移位型計(jì)數(shù)器。它有兩種結(jié)構(gòu):環(huán)形計(jì)數(shù)器
    發(fā)表于 01-12 14:07 ?9566次閱讀

    計(jì)數(shù)器,計(jì)數(shù)器的工作原理是什么?

    計(jì)數(shù)器,計(jì)數(shù)器的工作原理是什么? 在數(shù)字系統(tǒng)中使用最多的時(shí)序電路是計(jì)數(shù)器。計(jì)數(shù)器不僅能用于對時(shí)鐘脈沖進(jìn)行
    發(fā)表于 03-08 13:50 ?6.1w次閱讀

    按鍵次數(shù)計(jì)數(shù)器

    慧凈HL-1 配套C實(shí)驗(yàn)例程100例【實(shí)驗(yàn)21】按鍵次數(shù)計(jì)數(shù)器),很好的C51學(xué)習(xí)資料程序。
    發(fā)表于 03-21 16:44 ?21次下載

    什么是計(jì)數(shù)器芯片?

    什么是計(jì)數(shù)器芯片? 般來說,計(jì)數(shù)器芯片就是用來實(shí)現(xiàn)計(jì)數(shù)這種最基礎(chǔ)運(yùn)算的邏輯電路,計(jì)數(shù)器在數(shù)字系統(tǒng)中主要是對脈沖的個(gè)數(shù)
    的頭像 發(fā)表于 07-13 14:09 ?1.4w次閱讀

    單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)技術(shù)——計(jì)數(shù)器

    計(jì)數(shù)器、實(shí)驗(yàn)?zāi)康亩?shí)驗(yàn)內(nèi)容三、實(shí)驗(yàn)步驟四、C代碼如下五、實(shí)驗(yàn)結(jié)果六、實(shí)驗(yàn)體會、實(shí)驗(yàn)?zāi)康恼莆諉纹瑱C(jī)定時(shí)計(jì)數(shù)器計(jì)數(shù)方式的使用及編程方法。二
    發(fā)表于 11-25 12:36 ?4次下載
    單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)技術(shù)——<b class='flag-5'>計(jì)數(shù)器</b>

    單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)技術(shù)——計(jì)數(shù)器

    計(jì)數(shù)器、實(shí)驗(yàn)?zāi)康亩?、?shí)驗(yàn)內(nèi)容三、實(shí)驗(yàn)步驟四、C代碼如下五、實(shí)驗(yàn)結(jié)果六、實(shí)驗(yàn)體會、實(shí)驗(yàn)?zāi)康恼莆諉纹瑱C(jī)定時(shí)計(jì)數(shù)器計(jì)數(shù)方式的使用及編程方法。二
    發(fā)表于 11-25 12:51 ?5次下載
    單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)技術(shù)——<b class='flag-5'>計(jì)數(shù)器</b>

    "stm32f0按鍵計(jì)數(shù)器程序_數(shù)字系統(tǒng)設(shè)計(jì), 8個(gè)經(jīng)典計(jì)數(shù)器電路方案合輯"

    計(jì)數(shù)器(Counter)由基本的計(jì)數(shù)單元和控制門所組成,是在數(shù)字系統(tǒng)中對脈沖的個(gè)數(shù)進(jìn)行計(jì)數(shù),以實(shí)現(xiàn)測量、計(jì)數(shù)和控制功能,且兼有分頻功能的儀器
    發(fā)表于 11-25 18:06 ?32次下載
    "stm32f0<b class='flag-5'>按鍵</b><b class='flag-5'>計(jì)數(shù)器</b>程序_數(shù)字系統(tǒng)設(shè)計(jì), 8<b class='flag-5'>個(gè)</b>經(jīng)典<b class='flag-5'>計(jì)數(shù)器</b>電路方案合輯"

    異步計(jì)數(shù)器的主要類型

    異步計(jì)數(shù)器是那些輸出不受時(shí)鐘信號影響的計(jì)數(shù)器。由于異步計(jì)數(shù)器中的觸發(fā)提供有不同的時(shí)鐘信號,因此
    的頭像 發(fā)表于 10-11 17:16 ?5390次閱讀
    異步<b class='flag-5'>計(jì)數(shù)器</b>的主要類型

    同步計(jì)數(shù)器和異步計(jì)數(shù)器是什么 同步計(jì)數(shù)器和異步計(jì)數(shù)器的主要區(qū)別?

    在數(shù)字電子產(chǎn)品中,計(jì)數(shù)器是由系列觸發(fā)組成的時(shí)序邏輯電路。顧名思義,計(jì)數(shù)器用于計(jì)算輸入在負(fù)或正邊沿轉(zhuǎn)換中出現(xiàn)的次數(shù)。根據(jù)觸發(fā)觸發(fā)的方式,
    的頭像 發(fā)表于 03-25 17:31 ?2.4w次閱讀
    同步<b class='flag-5'>計(jì)數(shù)器</b>和異步<b class='flag-5'>計(jì)數(shù)器</b>是什么 同步<b class='flag-5'>計(jì)數(shù)器</b>和異步<b class='flag-5'>計(jì)數(shù)器</b>的主要區(qū)別?

    同步計(jì)數(shù)器和異步計(jì)數(shù)器的區(qū)別主要在哪里

    、應(yīng)用等方面。 、工作原理 同步計(jì)數(shù)器:同步計(jì)數(shù)器的工作原理是,在時(shí)鐘信號的驅(qū)動(dòng)下,對輸入的二進(jìn)制數(shù)進(jìn)行加法或減法運(yùn)算,從而得到
    的頭像 發(fā)表于 12-13 14:54 ?8630次閱讀

    同步計(jì)數(shù)器和異步計(jì)數(shù)器各有什么特點(diǎn)

    : 同步計(jì)數(shù)器種同步機(jī)制,用于控制多個(gè)線程的順序執(zhí)行。它們使用共享的計(jì)數(shù)器,并在計(jì)數(shù)器達(dá)到特定值時(shí)觸發(fā)線程的執(zhí)行。下面是同步計(jì)數(shù)器的幾個(gè)
    的頭像 發(fā)表于 12-15 10:49 ?1695次閱讀

    計(jì)數(shù)器怎么用 計(jì)數(shù)器的作用有哪些

    計(jì)數(shù)器種被廣泛應(yīng)用于各個(gè)領(lǐng)域的實(shí)用工具,在我們的日常生活中隨處可見。無論是進(jìn)行時(shí)間統(tǒng)計(jì),協(xié)助工作任務(wù)的完成,還是用于科學(xué)研究和編程技術(shù),在各個(gè)領(lǐng)域都起到了重要的作用。本文將詳細(xì)介紹計(jì)數(shù)器
    的頭像 發(fā)表于 02-03 10:04 ?4722次閱讀

    同步計(jì)數(shù)器和異步計(jì)數(shù)器的區(qū)別

    在數(shù)字電子領(lǐng)域中,計(jì)數(shù)器種用于統(tǒng)計(jì)脈沖信號數(shù)量的重要設(shè)備。其中,同步計(jì)數(shù)器和異步計(jì)數(shù)器是兩種不同類型的
    的頭像 發(fā)表于 05-24 14:36 ?2936次閱讀

    計(jì)數(shù)器同步和異步怎么判斷

    計(jì)數(shù)器同步和異步是數(shù)字電路設(shè)計(jì)中的個(gè)重要概念,它們在很多應(yīng)用場景中都扮演著關(guān)鍵角色。 計(jì)數(shù)器概述
    的頭像 發(fā)表于 07-23 11:14 ?435次閱讀