概述
题目: 设计一个电路,利用74HC161+74HC4511,使显示数码管按1s的频率循环显示0-9 思路: - 仿真74HC161和74HC4511(仿真74HC161的步骤一样,只有代码不同) - 整合74HC161和74HC4511 工具:Libero SoC v11.9
以下为第一步中的仿真74HC161的代码
仿真步骤看EDA实验-仿真74HC4511_weixin_54140484的博客-CSDN博客,步骤一样,改文件名、设计代码和测试代码即可
- 设计代码:
- 代码
-
// HC161.v module HC161(CP,CEP,CET,MRN,PEN,Dn,Qn,TC); input CP,CEP,CET; output [3:0]Qn; input MRN; input PEN; input [3:0]Dn; output reg TC; reg [3:0]qaux; always @(posedge CP) begin if(!MRN) qaux<=4'b0000; else if(!PEN) qaux<=Dn; else if(CEP&CET) qaux<=qaux+1; else qaux<=qaux; end always @(posedge CP) begin if(qaux==4'b1010) TC=1'b1; else TC=1'b0; end assign Qn=qaux; endmodule
-
- 代码
-
测试代码
-
代码
-
//test161 `timescale 1ns/1ns module test161; reg CP,CEP,CET,MRN,PEN; reg[3:0]Dn; wire [3:0]Qn; wire TC; initial begin CP=0; end parameter DELY=20; always #(DELY/2)CP=~CP; initial begin CEP=0; repeat(20) #20 CEP=1; end initial begin CET=0; repeat(20) #20 CET=1; end initial begin MRN=0; repeat(20) #20 MRN=1; end initial begin PEN=0; repeat(20) #20 PEN=1; end initial begin Dn=0; repeat(20) #20 Dn=$random; end HC161 u161(.CP(CP),.CEP(CEP),.CET(CET),.MRN(MRN),.PEN(PEN),.Dn(Dn),.Qn(Qn),.TC(TC)); endmodule
-
-
最后
以上就是爱笑云朵为你收集整理的libero soc 仿真74HC161的全部内容,希望文章能够帮你解决libero soc 仿真74HC161所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复