当前位置: 首页 > news >正文

洛阳做网站汉狮网络网络营销品牌推广公司

洛阳做网站汉狮网络,网络营销品牌推广公司,怎样创建自己的网页,南京网站优化公司声明:案例和代码来自小梅哥课程,本人仅对知识点做做笔记,如有学习需要请支持官方正版。 文章目录 该系列目录设计目标设计思路RTL及Testbench代码RTL代码Testbench代码 仿真结果上板视频 该系列目录 Verilog线性序列机点灯案例(一)&#xff…

声明:案例和代码来自小梅哥课程,本人仅对知识点做做笔记,如有学习需要请支持官方正版。

文章目录

  • 该系列目录
  • 设计目标
  • 设计思路
  • RTL及Testbench代码
    • RTL代码
    • Testbench代码
  • 仿真结果
  • 上板视频

该系列目录

Verilog线性序列机点灯案例(一)(小梅哥课程)
Verilog线性序列机点灯案例(二)(小梅哥课程)

设计目标

使用8个拨码开关控制一个LED灯,每个拨码开关负责控制0.25秒的时间,开关为1时亮,开关为0时灭。
举例:
10101010就是亮0.25秒,灭0.25秒,如此循环
10111101就是亮0.25秒,灭0.25秒,亮1秒,灭0.25秒,亮0.25秒,如此循环

设计思路

counter0计数器每计数满0.25秒就向counter1计数器加1,
counter1计数器从0到7计数,
led灯根据当前counter1计数器的值,选中对应的拨码开关进行输出,用软件的写法就是
led = sw[counter1]

RTL及Testbench代码

RTL代码

module led_ctrl2(clk,rst_n,led_out,sw
);input clk;input rst_n;input [7:0] sw;output reg led_out;parameter MCNT = 12500_000 - 1;reg [26:0] counter0;//第一个always块负责counter0always@(posedge clk or negedge rst_n) beginif(!rst_n)counter0 <= 0 ;else if(counter0 == MCNT)counter0 <= 0;elsecounter0 <= counter0 + 1'd1;endreg [2:0] counter1;//第二个always块负责counter1always@(posedge clk or negedge rst_n) beginif(!rst_n)counter1 <= 0 ;else if(counter0 == MCNT) begincounter1 <= counter1 + 1'd1;endelsecounter1 <= counter1;end//第三个always块负责根据counter1决定led_out//每0.25秒切换一个拨码输出always@(posedge clk or negedge rst_n)if(!rst_n)led_out <= 0;else begincase(counter1)0:led_out <= sw[0];1:led_out <= sw[1];2:led_out <= sw[2];3:led_out <= sw[3];4:led_out <= sw[4];5:led_out <= sw[5];6:led_out <= sw[6];7:led_out <= sw[7];default:led_out <= led_out;endcaseend
endmodule

Testbench代码

`timescale 1ns / 1ns
module tb_led_ctrl2();reg clk;reg rst_n;wire led_out;reg [7:0] sw;initial clk = 1;always #10 clk = ~clk;led_ctrl2 led_ctrl2_inst0(.clk(clk),.rst_n(rst_n),.sw(sw),.led_out(led_out));defparam led_ctrl2.MCNT = 12500 - 1; initial beginrst_n = 0;sw = 8'b1010_1010;#201;rst_n = 1;#4_000_000;sw = 8'b0000_0001;#4_000_000;sw = 8'b1111_0001;#20_000_000;$stop;end
endmodule

仿真结果

总结这两张图可以看出来,counter1是在每次counter0计满12499时进1,即counter1每个值维持的时间是counter0等于0~12499,是0.25s,而led_out依赖于counter1,比counter1延迟一拍,所以led_out每个值维持时间也是0.25秒,时序正确。
图1
在这里插入图片描述

上板视频

Verilog线性序列机点灯案例(三)(小梅哥课程)

http://www.hengruixuexiao.com/news/45082.html

相关文章:

  • 网站开发需要哪些技术人员长春网站建设团队
  • 优秀版式设计seo怎么做?
  • 有域名了也备案了怎么做网站seo外包公司费用
  • 什么网站做招聘收录好软文
  • 网站建设改版广州seo推广服务
  • 做美篇发网站东莞网站推广哪里找
  • 全能网站建设教程营销型网站建设ppt
  • 网站首页效果图技成培训网
  • 域名被墙查询检测保定seo推广
  • 淄博网站建设 很乱分享推广
  • 做网站鼎盛网址生成短链接
  • 做网站前端难吗需要优化的地方
  • 微信小程序开发需要什么技术网站的优化公司
  • 手机主题如何自己制作网站百度app登录
  • 广州网站备案号免费宣传网站
  • 百度抓取不到网站杭州百度代理公司
  • 营销型网站建设公司提供网站建设网络推广 网站制作
  • tk免费域名注册搜索引擎优化技术都有哪些
  • vps主机访问网站查看今日头条
  • 网站建设 宁夏百度站长平台怎么用
  • wordpress ip更改seo专业培训
  • 做外贸相关的网站在线网页制作工具
  • 京东商城商务网站建设目的营销咨询公司经营范围
  • 电子商务网站建设费用seo网站分析
  • 学院网站建设项目的活动分解谷歌网站优化
  • 股票网站建设yandex搜索引擎入口
  • 泉州全网推广安卓aso优化
  • wordpress主题站水果营销软文
  • 一流的营销型网站建设发帖平台
  • 山西做网站怎么做线下推广的渠道和方法