
数电实验
Chalatu6
这个作者很懒,什么都没留下…
展开
-
数电实验Verilog-数字钟
数字钟数字钟是数电实验最后一个用verilog写的实验,稍微有些难度,现在再回来看之前写的代码还是有很多不足和问题,但在当时并没有注意到。计数模块1.60进制计数在计数模块中就考虑到修改时间时的计数修改,便于修改时间60进制需要考虑到进位,为了能保证同时进位,需要在计数58时就将下一个计数器的计数使能开启,计数59时计数使能关闭module count60(input clk,input jinwei,input changen,input reset,input [1:0]button,out原创 2021-04-30 16:25:38 · 5595 阅读 · 1 评论 -
数电实验Verilog-步进电机
步进电机步进电机的模拟使用nexys4板子上的led灯,状态图如下根据状态图写代码,可以使用状态机的方法在这里没有用状态机首先还是分频always@(posedge cp) begin if(innercp<27'd100000000) innercp<=innercp+1; else innercp<=0; end然后是状态变换always@(posedge incp) begin if(reset==1) abc&l原创 2021-04-30 16:09:38 · 1360 阅读 · 1 评论 -
数电实验Verilog-模16可逆流水灯
流水灯没什么好说的,需要将板子的内部时钟分频再进行流水故分为两个模块,第一个分频模块,第二个流水模块分频模块reg [26:0] inclk=0; wire inclklk;//内部分频 assign inclklk=inclk[26]; always @(posedge clk) begin if(inclk<27'd100000000) inclk <= inclk + 1; else inclk <=0; end流水模块always @(posedge原创 2021-04-30 16:00:28 · 1283 阅读 · 1 评论 -
数电实验Verilog-取反加一
很久之前,数电实验课要求使用Verilog编程并在nexys4的板子上实现相应的功能。现在把实验课用过的代码放到上面。用三种方法实现取反加一取反加一十分简单,每一种方法基本上都是一两句话能完成1.数据流建模module qfjy( input [3:0]a, output [3:0]b ); assign b=~a+1;endmodule2.门级电路module qfjy2(input [3:0]a,output [3:0]b); or(b[0],a[0]);原创 2021-04-30 15:49:29 · 4463 阅读 · 1 评论