搭建网站的架构,什么颜色做网站好看,做爰视频网站,下载的html模板怎么用目录 1.移位实现LED流水灯
1.1创建工程及源文件代码
1.1.1源代码
1.1.2仿真代码 1.1.3仿真
1.2实验结果
1.2.1总结
2.循环移位实现LED流水灯
3.38译码器实现LED流水灯
3.1原理
3.2源程序 1.移位实现LED流水灯
1.1创建工程及源文件代码
1.1.1源代码
利用计数器计数到…目录 1.移位实现LED流水灯
1.1创建工程及源文件代码
1.1.1源代码
1.1.2仿真代码 1.1.3仿真
1.2实验结果
1.2.1总结
2.循环移位实现LED流水灯
3.38译码器实现LED流水灯
3.1原理
3.2源程序 1.移位实现LED流水灯
1.1创建工程及源文件代码
1.1.1源代码
利用计数器计数到500ms让LED的8位每次左移一位。当复位后/移动至最左边时让LED灯归位。犯的错误1.countercounter1d1写成了等号导致仿真波形偶数的led灯无高电平就是一个瞬间的脉冲还有其他几处。
module run_led(clk,reset,led);input clk;input reset;output reg [7:0]led;reg [24:0]counter;always(posedge clk or negedge reset)if(!reset)counter0;else if(counter 25_000_000-1)counter0;elsecountercounter1d1;always(posedge clk or negedge reset)if(!reset)led8b0000_0001;else if(counter 25_000_000-1)beginif(led8b1000_0000 | led8b0000_0000)led8b0000_0001;elseledled1;endelseledled;endmodule
1.1.2仿真代码
时钟也是每10ns翻转一次复位信号刚开始为低电平延时201ns后变高再延时4s包装8个led灯的翻转。
timescale 1ns / 1nsmodule run_led_tb();
reg clk;
reg reset;
wire [7:0]led;
run_led run_led(.clk(clk),.reset(reset),.led(led)
);initial clk0;
always #10 clk~clk;initial begin
reset0;
#201;
reset1;
#2000_000_000;
#2000_000_000;
$stop;
end;endmodule 1.1.3仿真
与预期一致然后选择好引脚烧录程序到开发板。 1.2实验结果
8个LED灯循环闪烁与仿真波形一致。 1.2.1总结
修改源代码后保存后还要重新生成bit文件才行不然烧录的还是之前的程序。
2.循环移位实现LED流水灯
即将LED的前6位与第7位拼接起来即可每次循环转一次。实验现象与之前一致。 beginled{led[6:0],led[7]};end
3.38译码器实现LED流水灯
3.1原理
将之前写的38译码器模块直接调用使用一个计数器循环计数0~7将对应的值直接对应到输出。 3.2源程序
添加新的源文件将1部分的代码复制调用之前的38模块添加现有源文件需要勾选第二个copy框意思是复制38译码器到这个工程来否则就是在原来的工程上进行修改。 1.3位的计数器计满后不用管自动溢出清0。
2.关于LED的驱动问题led是由下一层38译码器驱动run_led2作为上层led只是起到一根导线的作用从下层穿透到上层最终作为端口引出。任何一个模块在被例化的时候连接到其输出端口的信号都应该是wire型。 module run_led2(clk,reset,led);input clk;input reset;output wire [7:0]led;reg [24:0]counter;always(posedge clk or negedge reset)if(!reset)counter0;else if(counter 25_000_000-1)counter0;elsecountercounter1d1;reg [2:0]counter2;always(posedge clk or negedge reset)if(!reset)counter20;else if(counter 25_000_000-1)counter2counter21d1; decoder_3_8 decoder_3_8(.A2(counter2[2]),.A1(counter2[1]),.A0(counter2[0]),.Y0(led[0]),.Y1(led[1]),.Y2(led[2]),.Y3(led[3]),.Y4(led[4]),.Y5(led[5]),.Y6(led[6]),.Y7(led[7])
); endmodule
实验现象与之前一样。