首页 【FPGA】实战之数码管静态显示

【FPGA】实战之数码管静态显示

举报
开通vip

【FPGA】实战之数码管静态显示【FPGA】实战之数码管静态显⽰⽂章⽬录⼀、数码管静态显⽰的原理数码管其实就是由8个led集成在⼀起的,我们这⾥是FPGA,是共阳极数码管,给低电平就是点亮,数码管显⽰有静态和动态显⽰。那啥叫静态显⽰,我们这⾥补充⼀个知识点,就是数码管的驱动⽅式有两种,⼀种是静态驱动,就是⼀个数码管的⽚选(哪个)和段选(显⽰哪个段)各⾃都接⼀个接⼝,所需的接⼝就是⽚选×段选的个数,所以需要的接⼝特别特别的多,这种就是数码管的静态显⽰,第⼆种就是动态驱动,动态驱动就是动态显⽰。⼆、设计思路单纯的显⽰⼀个数字也太简单了,只要给⾼电平就...

【FPGA】实战之数码管静态显示
【FPGA】实战之数码管静态显⽰⽂章⽬录⼀、数码管静态显⽰的原理数码管其实就是由8个led集成在⼀起的,我们这⾥是FPGA,是共阳极数码管,给低电平就是点亮,数码管显⽰有静态和动态显⽰。那啥叫静态显⽰,我们这⾥补充⼀个知识点,就是数码管的驱动⽅式有两种,⼀种是静态驱动,就是⼀个数码管的⽚选(哪个)和段选(显⽰哪个段)各⾃都接⼀个接⼝,所需的接⼝就是⽚选×段选的个数,所以需要的接⼝特别特别的多,这种就是数码管的静态显⽰,第⼆种就是动态驱动,动态驱动就是动态显⽰。⼆、设计思路单纯的显⽰⼀个数字也太简单了,只要给⾼电平就⾏了这⾥我们⽼师给我们1个⼩时的时间去完成⼀个数码管静态显⽰和其他模块的结合的任务,可以⼀起去思考下设计思路这⾥有三个模块,数码管模块,按键消抖模块,蜂鸣器模块,后两者就不⽤多说了,你可以去看我的其他博客数码管的显⽰没有问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 ,主要思考的是数码管后⾯靠什么去变化通过思考不难发现就是按键按下给⼀个寄存器值,按下⾃增,然后根据寄存器值去改变数码管的显⽰,蜂鸣器也不必多说,加个判断就⾏了。这只是新⼿⼊门⼩练习三、代码部分数码管静态显⽰模块seg.vmoduleseg(inputclk,inputrst_n,input[1:0]key_down,outputreg[3:0]num,outputreg[7:0]seg_dig,outputreg[5:0]seg_sel);localparamD0=8'b11000000,D1=8'b11001111,D2=8'b10100100,D3=8'b10110000,D4=8'b10011001,D5=8'b10010010,D6=8'b10000010,D7=8'b11111000,D8=8'b10000000,D9=8'b10011000;//参数定义reg[3:0]num;//按键控制数码管计数always@(posedgeclkornegedgerst_n)beginif(!rst_n)beginnum<=6;endelseif(key_down[0])beginnum<=num+1;endelseif(key_down[1])beginnum<=num-1;endelseif(num>9)beginnum<=6;endelseif(num<6)beginnum<=6;endelsebeginnum<=num;endend//通过num值来段选计算always@(*)beginif(!rst_n)beginseg_sel=6'b000_000;seg_dig=D6;endelsebegincase(num)6:seg_dig=D6;7:seg_dig=D7;8:seg_dig=D8;9:seg_dig=D9;default:seg_dig=D6;endcaseendend按键消抖模块key_filter.vmodulekey_filter#(parameterKEY_W=2,DELAY_TIME=1_000_000)(inputclk,inputrst_n,input[KEY_W-1:0]key_in,outputreg[KEY_W-1:0]key_down);//计数器reg[19:0]cnt;wireadd_cnt;wireend_cnt;//标志信号regfilter_flag;reg[KEY_W-1:0]key_r0;reg[KEY_W-1:0]key_r1;reg[KEY_W-1:0]key_r2;wiren_edge;wirep_edge;//对输⼊按键进⾏打拍,异步信号同步并检测边沿//打⼏拍就是延时⼏个周期always@(posedgeclkornegedgerst_n)beginif(!rst_n)beginkey_r0<=-1;//负数以补码的⽅式存放,对原码取反加1key_r1<=-1;key_r2<=-1;endelsebeginkey_r0<=key_in;key_r1<=key_r0;key_r2<=key_r1;endend//assignn_edge={!key_r1[1]&&key_r2[1],!key_r1[0]&&key_r2[0]};//第⼀种检测边沿//三⽬运算符assignn_edge=~key_r1&key_r2?1'b1:1'b0;//第⼆种检测边沿//assignp_edge={key_r1[1]&&!key_r2[1],key_r1[0]&&!key_r2[1]};assignp_edge=key_r1&~key_r2?1'b1:1'b0;//当检测到下降沿,filter_flag为1always@(posedgeclkornegedgerst_n)beginif(!rst_n)beginfilter_flag<=1'b0;end//检测到下降沿elseif(n_edge)beginfilter_flag<=1'b1;endelseif(end_cnt)beginfilter_flag<=1'b0;endelsebeginfilter_flag<=filter_flag;endend//当检测到filter_flga为1的时候开始计数always@(posedgeclkornegedgerst_n)beginif(!rst_n)begincnt<=0;endelseif(add_cnt)beginif(end_cnt||p_edge)begincnt<=0;endelsebegincnt<=cnt+1;endendelsebegincnt<=cnt;endendassignadd_cnt=filter_flag;assignend_cnt=add_cnt&&cnt==DELAY_TIME-1;//key_down取的值是最后当前周期的key_r2值,是个稳定的值always@(posedgeclkornegedgerst_n)beginif(!rst_n)beginkey_down<=0;endelseif(end_cnt)beginkey_down<=~key_r2;endelsebeginkey_down<=0;endendendmodule蜂鸣器模块beep.vmodulebeep(inputclk,inputrst_n,input[3:0]num,outputregbeep);always@(posedgeclkornegedgerst_n)beginif(!rst_n)beginbeep<=0;endelseif(num==9)beginbeep<=~beep;endelsebeginbeep<=beep;endendendmodule顶层模块top.vmoduletop(inputclk,inputrst_n,input[1:0]key_in,output[7:0]seg_dig,output[5:0]seg_seloutputbeep);parameterKEY_W=2;//中间信号wire[KEY_W-1:0]key_down;//wire[3:0]num;//按键消抖模块key_filter#(.KEY_W(KEY_W),.DELAY_TIME(1_000_000))u_key_filter(.clk(clk),.rst_n(rst_n),.key_in(key_in),.key_down(key_down));//数码管模块clock_topu_clock_top(/*input*/.clk(clk),/*input*/.rst_n(rst_n),/*input[1:0]*/.key_down(key_down),/*outputreg[7:0]*/.seg_dig(seg_dig),/*outputreg[3:0]*/.num(num),/*outputreg[5:0]*/.seg_sel(seg_sel));//蜂鸣器模块beepu_beep(/*input*/.clk(clk),/*input*/.rst_n(rst_n),/*input*/.num(num),/*output*/.beep(beep));endmodule四、 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf 静态显⽰有⼿就⾏,毕竟我也⾏。
本文档为【【FPGA】实战之数码管静态显示】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥6.6 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
精品文档
暂无简介~
格式:pdf
大小:480KB
软件:PDF阅读器
页数:6
分类:
上传时间:2023-10-16
浏览量:1