欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3847|回復: 2
收起左側

VHDL實現16位計數器(帶源程序)

[復制鏈接]
ID:1030457 發表于 2022-5-30 21:00 | 顯示全部樓層 |閱讀模式
計數器簡介:
        計數器是數字系統中用得較多的基本邏輯器件。它不僅能記錄輸入時鐘脈沖的個數,還可以實現分頻、定時、產生節拍脈沖和脈沖序列等。例如,計算機中的時序發生器、分頻器、指令計數器等都要使用計數器。 計數器的種類很多。按時鐘脈沖輸入方式的不同,可分為同步計數器和異步計數器;按進位體制的不同,可分為二進制計數器和非二進制計數器;按計數過程中數字增減趨勢的不同,可分為加計數器、減計數器和可逆計數器。
       以下是VHDL代碼和仿真:
51hei1.png 51hei.png

  1. library ieee;
  2. use ieee.std_logic_1164.all;
  3. use ieee.std_logic_arith.all;
  4. use ieee.std_logic_unsigned.all;
  5. --------------------------------------------------------------------
  6. entity exp3 is
  7. port( clk,ret,en : in std_logic; --定義時鐘、異步復位、同步使能信號
  8. cq : out std_logic_vector(3 downto 0); --計數結果
  9. cout : out std_logic --進位信號
  10. );
  11. end exp3;
  12. --------------------------------------------------------------------
  13. architecture behave of exp3 is
  14. begin
  15. process(clk,ret,en)
  16. variable cqi : std_logic_vector(3 downto 0);
  17. begin
  18. if ret='0' then cqi:=(others =>'0');-- 計數器異步復位
  19. elsif clk'event and clk='1' then--檢測時鐘上升沿
  20. if en='1' then--檢測是否允許計數(同步使能)
  21. if cqi<15 then cqi:=cqi+1;
  22. else cqi:=(others =>'0');
  23. end if;
  24. end if;
  25. end if;
  26. if cqi>9 then cout<='1';--輸出進位信號
  27. else cout<='0';
  28. end if;
  29. cq<=cqi;--計數值向端口輸出
  30. end process;
  31. end behave;
復制代碼
51hei.png
代碼下載: 16位計數器.7z (188.25 KB, 下載次數: 10)

評分

參與人數 1黑幣 +40 收起 理由
admin + 40 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:228452 發表于 2022-7-29 22:57 | 顯示全部樓層
Do you have code for 32 bit counter...
Something like HCTL-2032-SC
(32 bit counter with digital filter but obsolete chip)

    Thank you   
回復

使用道具 舉報

ID:228452 發表于 2025-11-10 03:25 | 顯示全部樓層
given listing is 4 bit counter (out std_logic_vector(3 downto 0);) not 16 bit counter ...
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表