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

呼吸灯【FPGA】

晶振50Mhz

1us 等于 计0~49

1ms等于  0~999us

1s等于  0~999ms

//led_outalways@(posedge FPGA_CLK_50M_b5 or negedge reset_e8) //【死循环】@敏感【触发条件:上升沿 clk】【运行副本】if(reset_e8==1'b0)begin        //50Mhz晶振,   49_999_999 是 1秒1次led_out <= 1'd0;end//  cnt_en低电平     灯亮条件【1ms和1s比较值】else if((cnt_en == 1'b0 ) && (cnt_1ms <= cnt_1s)   ||(cnt_en == 1'b1 ) && (cnt_1ms >= cnt_1s ))// s满,led_out <= 1'b1;else    led_out <= 1'b0;assign led1_d15 = led_out;

//======================================================
module sleep_led    // 模块名字,参数,方法体
#(parameter CNT_1US_MAX =  6'd49	,parameter CNT_1MS_MAX = 10'd999	,parameter CNT_1S_MAX  = 10'd999	)
(input  FPGA_CLK_50M_b5,input  reset_e8,input  key1_k18,input  key2_n17,input  key3_n18,input  key4_h17,
//output led1_d15,output led2_c15,output led3_a12,output led4_b12,output beep_h13   //【注】最后一个参数不加逗号
);
//【】以下是变量//reg		[5:0]  cnt_1us;// 50Mhz晶振, 0~49reg 	[9:0]  cnt_1ms;reg 	[9:0]  cnt_1s;reg 	[0:0]  cnt_en;reg 	[0:0]  led_out;//【】以下是方法体,FPGA的特性是程序都是并联运行。//assign {led1_d15,led2_c15,led3_a12,led4_b12} = {~key1_k18,~key2_n17,~key3_n18,~key4_h17};  //key1_k18  +key2_n17 + key3_n18 +key4_h17 ;//usalways@(posedge FPGA_CLK_50M_b5 or negedge reset_e8) //【死循环】@敏感【触发条件:上升沿 clk】【运行副本】if(reset_e8==1'b0)begin        //50Mhz晶振,   49_999_999 是 1秒1次cnt_1us <= 6'b0;// cnt_en <= 1'b0;endelse if(cnt_1us == CNT_1US_MAX)// 0~49cnt_1us <= 6'b0;else cnt_1us <= cnt_1us + 6'b1 ;//msalways@(posedge FPGA_CLK_50M_b5 or negedge reset_e8) //【死循环】@敏感【触发条件:上升沿 clk】【运行副本】if(reset_e8==1'b0)begin        //50Mhz晶振,   49_999_999 是 1秒1次cnt_1ms <= 10'd0;endelse if((cnt_1ms == CNT_1MS_MAX ) && (cnt_1us == CNT_1US_MAX))// ms满,cnt_1ms <= 10'd0;else if(cnt_1us == CNT_1US_MAX)cnt_1ms <= cnt_1ms + 10'd1 ;// ms加1//salways@(posedge FPGA_CLK_50M_b5 or negedge reset_e8) //【死循环】@敏感【触发条件:上升沿 clk】【运行副本】if(reset_e8==1'b0)begin        //50Mhz晶振,   49_999_999 是 1秒1次cnt_1s <= 10'd0;endelse if((cnt_1s == CNT_1S_MAX ) && (cnt_1ms == CNT_1MS_MAX) &&(cnt_1us == CNT_1US_MAX))// s满,cnt_1s <= 10'd0;else if((cnt_1ms == CNT_1MS_MAX)&&(cnt_1us == CNT_1US_MAX))cnt_1s <= cnt_1s + 10'd1 ;// s加1//======呼吸灯条件===================//cnt_enalways@(posedge FPGA_CLK_50M_b5 or negedge reset_e8) //【死循环】@敏感【触发条件:上升沿 clk】【运行副本】if(reset_e8==1'b0)begin        //50Mhz晶振,   49_999_999 是 1秒1次cnt_en <= 1'd0;endelse if((cnt_1s == CNT_1S_MAX ) && (cnt_1ms == CNT_1MS_MAX) &&(cnt_1us == CNT_1US_MAX))// s满,cnt_en <= ~cnt_en;else    cnt_en <=  cnt_en;//led_outalways@(posedge FPGA_CLK_50M_b5 or negedge reset_e8) //【死循环】@敏感【触发条件:上升沿 clk】【运行副本】if(reset_e8==1'b0)begin        //50Mhz晶振,   49_999_999 是 1秒1次led_out <= 1'd0;end//  cnt_en低电平     灯亮条件【1ms和1s比较值】else if((cnt_en == 1'b0 ) && (cnt_1ms <= cnt_1s)   ||(cnt_en == 1'b1 ) && (cnt_1ms >= cnt_1s ))// s满,led_out <= 1'b1;else    led_out <= 1'b0;assign led1_d15 = led_out;endmodule//

相关文章:

  • 学术期刊审稿的周期
  • java用adb传指定文件到mumu模拟器的指定路径
  • 分享88个工作总结PPT,总有一款适合您
  • 后端神器!代码写完直接调试!
  • Vue+elementui 纯前端实现Excel导入导出功能(区分表头标题)
  • 费解的开关
  • CentOS和Ubuntu命令行方式配置静态IP
  • 企业上ERP的节奏商讨
  • 新手必看的Facebook广告投放基础思路
  • 贝锐向日葵亮相阿里云“云栖大会”:独创专利算法赋能全新云桌面
  • J2EE项目部署与发布(Linux版本)->jdktomcat安装,MySQL安装,后端接口部署,linux单体项目前端部署
  • 【考研数学】概率论与数理统计 —— 第八章 | 假设检验
  • 链表的介绍
  • Restful风格与Wesocket之间的关联
  • IT技术发展背景下的就业趋势:哪个领域最受欢迎?
  • 【笔记】你不知道的JS读书笔记——Promise
  • android 一些 utils
  • C# 免费离线人脸识别 2.0 Demo
  • electron原来这么简单----打包你的react、VUE桌面应用程序
  • extract-text-webpack-plugin用法
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • js继承的实现方法
  • Laravel Telescope:优雅的应用调试工具
  • mongo索引构建
  • python 装饰器(一)
  • Python进阶细节
  • Redux系列x:源码分析
  • SegmentFault 2015 Top Rank
  • ubuntu 下nginx安装 并支持https协议
  • vuex 学习笔记 01
  • 从零开始的无人驾驶 1
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 工作手记之html2canvas使用概述
  • 记录一下第一次使用npm
  • 如何合理的规划jvm性能调优
  • 实战|智能家居行业移动应用性能分析
  • 一个6年java程序员的工作感悟,写给还在迷茫的你
  • 用 Swift 编写面向协议的视图
  • Linux权限管理(week1_day5)--技术流ken
  • 阿里云ACE认证之理解CDN技术
  • 翻译 | The Principles of OOD 面向对象设计原则
  • 如何在招聘中考核.NET架构师
  • ​七周四次课(5月9日)iptables filter表案例、iptables nat表应用
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (env: Windows,mp,1.06.2308310; lib: 3.2.4) uniapp微信小程序
  • (Ruby)Ubuntu12.04安装Rails环境
  • (附源码)spring boot建达集团公司平台 毕业设计 141538
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (免费分享)基于springboot,vue疗养中心管理系统
  • (南京观海微电子)——COF介绍
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • (转)关于pipe()的详细解析
  • .bat文件调用java类的main方法
  • .Net CF下精确的计时器