设为首页收藏本站淘宝杂货铺

从F到0 - From F to 0

 找回密码
 注册已关闭
搜索
查看: 89|回复: 0
收起左侧

Quartus Verilog HDL/FPGA 实现 74HC90/74LS90 具有下降沿触发的十进制计数器 分频器

[复制链接]
发表于 2023-12-27 12:58:45 | 显示全部楼层 |阅读模式
main.png
  1. module hc90(        //具有下降沿触发的十进制计数器 分频器 VCC:Pin5 GND:Pin10 未使用Pin:4,13
  2.         input CLKA,        //下降沿翻转Q[0] Pin14
  3.         input CLKB,        //下降沿计数Q[3:1] 范围:0~4 Pin1
  4.         //R01与R02为高电平则禁止CLKA使能计数,否则允许计数
  5.         input R01,        //R01使能控制端 Pin2
  6.         input R02,        //R02使能控制端 Pin3
  7.         //R91与R92为高电平则禁止CLKB使能计数,否则允许计数
  8.         input R91,        //R91使能控制端 Pin6
  9.         input R92,        //R92使能控制端 Pin7
  10.         output reg [3:0] Q        //[4位宽] 计数输出Q Pin11,8,9,12
  11. );

  12. initial Q = 4'b0;
  13. always @(negedge CLKA) begin
  14.         if(!(R01 & R02)) begin
  15.                 Q[0] <= !Q[0];
  16.         end
  17. end

  18. always @(negedge CLKB) begin
  19.         if(!(R91 & R92)) begin
  20.                 if(Q[3:1] >= 3'd4) begin
  21.                         Q[3:1] <= 3'd0;
  22.                 end else begin
  23.                         Q[3:1] <= Q[3:1] + 3'd1;
  24.                 end
  25.         end
  26. end
  27. endmodule


  28. module main(
  29.         input clk,                //50Mhz有源晶振输入 Pin17
  30.         output out                //5Mhz(10分频50%占空比)输出 Pin8
  31. );

  32. wire [3:0] Q;

  33. hc90 U1(
  34.         .CLKA(Q[3]),
  35.         .CLKB(clk),
  36.         .R01(1'b0),
  37.         .R02(1'b0),
  38.         .R91(1'b0),
  39.         .R92(1'b0),
  40.         .Q(Q)
  41. );

  42. assign out = Q[0];
  43. endmodule
复制代码

相关帖子

您需要登录后才可以回帖 登录 | 注册已关闭

本版积分规则

QQ|手机版|Archiver|从F到0 ( 蒙ICP备17002595号-1 )
蒙公网安备15010402000325号

腾讯云安全认证

GMT+8, 2024-4-27 14:32 , Processed in 1.605092 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表