收藏 分销(赏)

数字电子线路基础:3-3基于FPGA的数码管显示控制与LED点阵控制.docx

上传人:二*** 文档编号:4515750 上传时间:2024-09-26 格式:DOCX 页数:7 大小:147KB
下载 相关 举报
数字电子线路基础:3-3基于FPGA的数码管显示控制与LED点阵控制.docx_第1页
第1页 / 共7页
亲,该文档总共7页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、3.3 基于FPGA的数码管显示控制与LED点阵控制1 实验目的(1)通过实验进一步学习Quartus II软件的使用方法。(2)通过实验学习数码管显示控制的基本原理。(3)通过实验学习LED点阵显示控制的基本原理。2 实验仪器设备(1)FPGA开发实验箱。(2)数字万用表。(3)电脑。3 预习(1)复习FPGA开发有关的流程。(2)复习Verilog HDL语言语法。(3)复习实验所用的相关原理。(4)按要求编写实验中要求的硬件描述语言程序。4 实验原理(1)数码管。数码管是多个LED灯的集合,显示译码器的输入是二进制数,输出是对应的十进制的字符,因此译码器的输出根据十进制数的字符显示效果来

2、定义,显示译码器有配合共阴极和共阳极的区分,必须根据实际选用。(2)数码管的动态显示。本实验为LED数码管动态显示控制实验。LED动态显示是将所有相同的段码线并接在一个I/O口上,共阴极端或共阳极端分别由相应的I/O口线控制(本实验箱为共阳极)。由于每一位的段选线都在一个I/O口上,所以每送一个段选码,所有的LED数码管都显示同一个字符,这种显示器是不能用的。解决此问题的方法是利用人的视觉滞留,从段选线I/O口上按位次分别送显示字符的段选码,在位选控制口也按相应的次序分别选通相应的显示位(共阴极送低电平,共阳极送高电平),选通位就显示相应字符,并保持几毫秒的延时,未选通位不显示字符(保持熄灭)

3、。这样,对各位显示就是一个循环过程。从计算机的工作来看,在一个瞬时只有一位显示字符,而其它位都是熄灭的,但因为人的视觉滞留,这种动态变化是觉察不到的。从效果上看,各位显示器能连续而稳定地显示不同的字符,这就是动态显示。(3)LED点阵。LED点阵显示字符的原理和数码管显示原理相似。数码管通过段选和位选来确定那个数码管亮,再通过各个数码管的不断循环点亮,实现动态显示。点阵的显示原理与之相近:点阵通过行选先确定哪一行可以被选通点亮,再通过列选确定所选行的哪几个led可以被点亮,最后在时钟电路的驱动下不断换行显示,从而实现点阵的动态显示。5 实验内容(1)数码管驱动显示。新建工程,调试程序,分配引脚

4、。将程序下载到实验箱,并调试成功。初始代码为数码管依次显示1到8修改实验代码,使数码管能够显示自己学号后8位。参考的器件引脚图参考电路图参考程序:module smg(clk,duan,wei);input clk;output 6:0duan;/数码管段选output 7:0wei;/数码管位选reg 6:0duan;reg 7:0wei;parameterseg0= 7h3f,/参数定义seg1= 7h06,seg2= 7h5b,seg3= 7h4f,seg4= 7h66,seg5= 7h6d,seg6= 7h7d,seg7= 7h07,seg8= 7h7f,seg9= 7h6f,sega

5、= 7h77,segb= 7h7c,segc= 7h39,segd= 7h5e,sege= 7h79,segf= 7h71;reg 2:0cnt;/三位计数器always(posedge clk) begin/时钟每上升一次,计数器加一cnt=cnt+1;endalways(posedge clk) begin/*时钟每上升一次,数码管亮一个,且每次亮的数码管和显示的数字都不同。当时钟频率快到一定程度时,由于人眼的视觉滞留便出现了多个数码管同时点亮的现象*/if(cnt=3b000)begin duan=seg1;wei=8b11111110;endelse if(cnt=3b001)begi

6、n duan=seg2;wei=8b11111101;endelse if(cnt=3b010)begin duan=seg3;wei=8b11111011;endelse if(cnt=3b011)begin duan=seg4;wei=8b11110111;endelse if(cnt=3b100)begin duan=seg5;wei=8b11101111;endelse if(cnt=3b101)begin duan=seg6;wei=8b11011111;endelse if(cnt=3b110)begin duan=seg7;wei=8b10111111;endelse if(cn

7、t=3b111)begin duan=seg8;wei=8b01111111;endelse ;endendmodule(2)LED点阵控制新建工程,调试程序,分配引脚;将程序下载到实验箱,并调试成功。点阵显示“光”字;修改参考程序,使点阵显示“电”字。参考的有关电路连接图本实验箱中,JX17和JX18的引脚对应H0H15(即为116行),JX19和JX20对应的引脚为L0L15(即116)列。同学们可以自己分配FPGA芯片引脚,建议分配在JP2、JP3、JP4、JP5。参考程序:module dianzhen(clk,hang,lie );input clk;/时钟output 15:0ha

8、ng;/16位行选,当为1时选通output 15:0lie;/16位列选,当为0时选通reg 15:0hang;/16位行寄存器reg 15:0lie;/16位列寄存器reg 3:0cnt;/4位计数器,可从116always(posedge clk)/时钟上升沿来临,计数器加一cnt=cnt+1;always(posedge clk)/计数器每变化一次,行相应变化一次,使行顺序往下移if(cnt=4b0000) begin/选通第一行,由于没有亮点,所以列选全部为1hang=16b0000000000000001;lie=16b1111111111111111;endelse if(cnt

9、=4b0001) beginhang=16b0000000000000010;lie=16b1111111111111111;endelse if(cnt=4b0010) beginhang=16b0000000000000100;/选通第三行,从左往右第八个led点亮,故第8位为0lie=16b1111111011111111;endelse if(cnt=4b0011) beginhang=16b0000000000001000;lie=16b1110111011101111;endelse if(cnt=4b0100) beginhang=16b0000000000010000;lie=

10、16b1111011011011111;endelse if(cnt=4b0101)beginhang=16b0000000000100000;lie=16b1111101010111111;endelse if(cnt=4b0110)beginhang=16b0000000001000000;lie=16b1100000000000111;endelse if(cnt=4b0111)beginhang=16b0000000010000000;lie=16b1111110101111111;endelse if(cnt=4b1000)beginhang=16b0000000100000000;

11、lie=16b1111110101111111;endelse if(cnt=4b1001)beginhang=16b0000001000000000;lie=16b1111110101111111;endelse if(cnt=4b1010)beginhang=16b0000010000000000;lie=16b1111110101111111;endelse if(cnt=4b1011)beginhang=16b0000100000000000;lie=16b1111101101110111;endelse if(cnt=4b1100)beginhang=16b0001000000000

12、000;lie=16b1110011100000111;endelse if(cnt=4b1101)beginhang=16b0010000000000000;lie=16b1111111111111111;endelse if(cnt=4b1110)beginhang=16b0100000000000000;lie=16b1111111111111111;endelse if(cnt=4b1111)beginhang=16b1000000000000000;lie=16b1111111111111111;endelse ;endmodule6.思考题(1)数码管显示电路控制的核心思路是什么?(2)LED点阵电路控制的核心思路是什么?(3)总结本次实验的心得。

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服