包含按键输入并显示模块,输入为四位16进制信号,同步在led数码管显示,如果没有输入,则自动脉冲计数

module led(comscan,clr,k,kon,kc,o,comscanout);
input clr,kon;
input [3:0]k;
input [3:0]kc;
input comscan;
output  reg [7:0]o;
reg [31:0]counter;
reg [3:0]show;
reg [7:0]clk0;
reg [15:0]temp;
reg clk;
output reg [2:0]comscanout;

always @(posedge comscan)
    begin
        comscanout[2:0]=comscanout[2:0]+1'b1;
    end
    
    
always @ (posedge clk)
begin
    if (!clr)
        counter[31:0]=counter[31:0]+1'b1;
    else
    counter[31:0]=1'b0;
end    
always @(posedge comscan)
begin        
        case(comscanout[2:0])
            3'b000:begin
                if (!kon) show[3:0]=counter[3:0];
                else 
                if(kc[0]==1)
                begin
                show[3:0]<=k[3:0];
                temp[3:0]<=k[3:0];
                end
                else
                show[3:0]<=temp[3:0];
                end
                    
            3'b001:begin
            if (!kon)
            show[3:0]<=counter[7:4];
            else if (kc[1]==1)
            begin
            show[3:0]=k[3:0];
            temp[7:4]=k[3:0];
            end
            else
                show[3:0]=temp[7:4];
            end
                    
            3'b010:begin
            if (!kon)
            show[3:0]<=counter[11:8];
            else if (kc[2]==1)
            begin
            show[3:0]=k[3:0];
            temp[11:8]=k[3:0];
            end
            else
                show[3:0]=temp[11:8];
            end    
            
            3'b011:begin
            if (!kon)
            show[3:0]<=counter[15:12];
            else if (kc[3]==1)
            begin
            show[3:0]=k[3:0];
            temp[15:12]=k[3:0];
            end
            else
                show[3:0]=temp[15:12];
            end    
            3'b100:show[3:0]<=counter[19:16];
            3'b101:show[3:0]<=counter[23:20];
            3'b110:show[3:0]<=counter[27:24];
            3'b111:show[3:0]<=counter[31:28];        
    endcase

begin
        if (clk0[7:0]==8'b1111_1111)
            begin
            clk=~clk;
            clk0[7:0]=8'b0000_0000;
            end
        else
        clk0[7:0]=clk0[7:0]+1'b1;
    end

end
always @(1)
    begin
        case(show[3:0])
            4'b0000:o[7:0]<=8'h3f;
            4'b0001:o[7:0]<=8'h06;
            4'b0010:o[7:0]<=8'h5b;
            4'b0011:o[7:0]<=8'h4f;
            4'b0100:o[7:0]<=8'h66;
            4'b0101:o[7:0]<=8'h6d;
            4'b0110:o[7:0]<=8'h7d;
            4'b0111:o[7:0]<=8'h07;
            4'b1000:o[7:0]<=8'h7f;
            4'b1001:o[7:0]<=8'h6f;
            4'b1010:o[7:0]<=8'h77;
            4'b1011:o[7:0]<=8'h7c;
            4'b1100:o[7:0]<=8'h39;
            4'b1101:o[7:0]<=8'h5e;
            4'b1110:o[7:0]<=8'h79;
            4'b1111:o[7:0]<=8'h71;
        endcase
    end

endmodule

tance 转载标明出处

七段LED数码管显示译码器设计相关推荐

  1. 西南交大计算机组成原理考试大纲,西南交大计算机组成原理实验二七段LED数码管显示译码器的设计.docx...

    //译码模块 module xianshi(input [3:0]xs,output reg [6:0]l); always @ (xs) begin case(xs) 4'b0000: l<= ...

  2. 6、七段数码管显示译码器设计与应用

    1.实验目的 掌握七数码管显示原理 掌握七段码显示译码设计 进一步熟悉 Xilinx ISE 环境及 SWORD 实验平台 2.实验内容 任务 1:原理图设计实现显示译码 MyMC14495 模块 任 ...

  3. 简易计算机led数码管单片机课设,单片机课程设计报告--简易计时器——LED?数码管显示接口技术应用.docx...

    文档介绍: 文华学院单片机原理及应用课程设计报告姓名: 学号: 学部(系): 专业年级: 指导老师: 201 6年12月5日目录一标题--------------------- 1 二设计内容,设计要 ...

  4. BCD-七段数码管显示译码器

    目的 1. 进一步掌握VHDL语言的基本结构及设计的输入方法. 2. 掌握BCD-七段显示译码器的设计思路: 内容 1. 使用拨码开关SW3.SW2.SW1.SW0作为四位二进制数据 D.C. B.A ...

  5. FPGA _Verilog HDL_十六进制7段码显示译码器设计实验

    一.题目 十六进制7段码显示译码器设计实验. 二.源代码 说明:本实验使用的是共阴数码管. //---------------------------------------------------- ...

  6. 8255A控制八位七段LED数码管

    微机实验六 文章目录 微机实验六 前言 八位七段LED数码管 驱动方式 静态显示 动态显示 实验所用七段数码管 相关参数 字形代码表 实验连线步骤: 汇编程序(.ASM) 程序初始化 数据段定义 代码 ...

  7. 【雕爷学编程】Arduino动手做(47)---七段LED数码管模块

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备 ...

  8. 基于单片机病房呼叫系统数码管显示房号设计-基于单片机工业生产现场的光照强度控制设计-基于单片机多功能智能台灯设计-基于单片机二维码LCD显示设计-基于单片机多功能时钟闹钟万年历控制系统设计【毕设分享】

    1641基于单片机病房呼叫系统数码管显示房号设计 设计思路:此设计实现的功能通过按键模拟房号,当按键按下时会将房号编号发送到数目管上进行显示,并通过声光进行提示.包含的电路有:数码管显示电路.按键电路 ...

  9. c51时钟数码管显示流程图_基于单片机89C51的数码管显示时钟设计.doc

    基于单片机89C51的数码管显示时钟设计 基于单片机的数字时钟 摘 要单片机在多功能数字钟中的应用已是非常普遍的,人们对数字钟的功能及工作顺序都非常熟悉.但是却很少知道它的内部结构以及工作原理.由单片 ...

最新文章

  1. 机器学习必知必会10大算法
  2. 串口同步异步c语言程序,同步串口spi的c语言编程
  3. php论坛有哪些_建网站的软件哪个好?建网站的软件有哪些?
  4. 收购Nervana,英特尔缘何看中AI市场
  5. 三维点云学习(4)5-DBSCNA python 复现-3-kd-tree radius NN 三方库 scipy 与 sklearn速度比较
  6. Go语言_array,slice,map
  7. Java虚拟机和Dalvik虚拟机的区别
  8. 又一款程序员摸鱼神器来了?上班也可以在VSCode看股票 基金实时数据
  9. 第二届跨校大学生双创训练营任务方案开源1——任务介绍
  10. win10如何升级win11
  11. PBR 六 材质参数
  12. 秦九韶算法以及大数取余应用
  13. 电脑版微信多开显示网络代理服务器,电脑版微信多开的方法_电脑维护
  14. 关于 AWS 架构师认证考试
  15. 【AUTOSAR】【CAN通信】CanTrcv
  16. flutter - 强制横屏/竖屏
  17. 使用POI和EasyExcel实现Excel导入和导出功能
  18. 公路多孔箱涵设计_新规范双孔箱涵结构设计
  19. 单片机开发教程4——多文件编程
  20. Android ViewPager Fragment 切换刷新数据,解决生命周期只走一次的问题

热门文章

  1. Maya Mel 数组相关代码笔记
  2. 2019CCPC网络赛部分题解
  3. 技术创业者如何突破创业瓶颈:需要有正确的金钱观
  4. [渝粤教育] 四川大学 简明大学化学·物质结构部分入门 参考 资料
  5. python中seed的相关代码
  6. 关于飞鱼U3D主程/高级的招聘
  7. 数据降维处理(PCALAD)
  8. 瑞克斯平台国际时事汇总
  9. 网游服务器搭建方案图解(以魔兽世界为例)
  10. 新手教程:建立网站的全套流程与详细解释