【友晶科技】基于FPGA的贪吃蛇游戏设计(二)——数码管驱动模块
在数字电路中,7段数码管是一个应用非常广泛的显示器件,它有7个可独立点亮的线段(LED灯), 用户可以通过控制点亮7个线段中某些线段来显示十六进制数0~F。目前有两种类型的7段数码管显示器件:共阴极数码管和共阳极数码管。共阴极数码管是7个LED的阴极端一起接地,每个阳极端单独连接到控制端(比如接到FPGA的GPIO pin)。共阴极数码管器件是高电平有效。共阳极数码管是7个LED的阳极端一起连接V
DE10-Standard/DE1-SoC/DE2-115
数码管介绍
在数字电路中,7段数码管是一个应用非常广泛的显示器件,它有7个可独立点亮的线段(LED灯), 用户可以通过控制点亮7个线段中某些线段来显示十六进制数0~F。
目前有两种类型的7段数码管显示器件:共阴极数码管和共阳极数码管。
共阴极数码管是7个LED的阴极端一起接地,每个阳极端单独连接到控制端(比如接到FPGA的GPIO pin)。共阴极数码管器件是高电平有效。
共阳极数码管是7个LED的阳极端一起连接VCC,每个阴极端单独接控制端(比如接到FPGA的GPIO pin)。 共阳极数码管器件是低电平有效。
给7段数码管每一段编号如下:
FPGA控制的时候一般按照6-5-4-3-2-1-0的顺序给值,比如想要显示数字0,拿共阳极数码管举例则5-4-3-2-1-0段点亮,6段熄灭,输出数据7’b1000_000即可。
DE10-Standard开发板的数码管
DE10-Standard开发板(或者是DE1-SOC、DE2-115)上面的数码管是共阳极数码管,所以是低电平点亮。
数码管驱动模块设计
共阳极数码管显示的各数字对应的输出到数码管的代码如下表:
显示数字 |
二进制码 |
输出到数码管 |
0 |
0000 |
1000000 |
1 |
0001 |
1111001 |
2 |
0010 |
0100100 |
3 |
0011 |
0110000 |
4 |
0100 |
0011001 |
5 |
0101 |
0010010 |
6 |
0110 |
0000010 |
7 |
0111 |
1111000 |
8 |
1000 |
0000000 |
9 |
1001 |
0011000 |
A |
1010 |
0001000 |
b |
1011 |
0000011 |
C |
1100 |
1000110 |
d |
1101 |
0100001 |
E |
1110 |
0000110 |
F |
1111 |
0001110 |
数码管显示控制模块seg_display.v的信号描述如下:
数码管显示控制模块seg_display.v的完整代码如下:
贪吃蛇系列连载文章:
1. 基于FPGA的贪吃蛇游戏设计(一)
2. 基于FPGA的贪吃蛇游戏设计(二)——数码管驱动模块
3. 基于FPGA的贪吃蛇游戏设计(三)——计分模块
4. 基于FPGA的贪吃蛇游戏设计(四)——VGA驱动模块色块显示
5. 基于FPGA的贪吃蛇游戏设计(五)——VGA驱动模块字符显示
6. 基于FPGA的贪吃蛇游戏设计(六)——VGA驱动模块图片显示
7. 基于FPGA的贪吃蛇游戏设计(七)——食物(苹果)的产生
8. 基于FPGA的贪吃蛇游戏设计(八)——状态机设计
9. 基于FPGA的贪吃蛇游戏设计(九)——蛇身控制
关注“友晶Terasic”公众号可获取源码下载地址。
移植到DE1-SOC、DE2-115时代码无需改变,只需修改引脚分配即可。
更多推荐
所有评论(0)