【紫光同创国产FPGA教程】——【PGL22G第三章】数码管静态显示实验例程

本原创教程由深圳市小眼睛科技有限公司创作,版权归本公司所有,如需转载,需授权并注明出处
适用于板卡型号:

紫光同创PGL22G开发平台(盘古22K)

一:盘古22K开发板(紫光同创PGL22G开发平台)简介

盘古22K开发板是基于紫光同创Logos系列PGL22G芯片设计的一款FPGA开发板,全面实现国产化方案,板载资源丰富,高容量、高带宽,外围接口丰富,不仅适用于高校教学,还可以用于实验项目、项目开发,一板多用,满足多方位的开发需求。

二:实验目的

四位八段数码管同时循环显示数字 0~9。
三:实验原理
数码管是一种半导体发光器件,其基本单元是发光二极管。能显示 4 个数码管叫四位数码管。数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极 COM 接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极 COM 接到地线 GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。

【紫光同创国产FPGA教程】——【PGL22G第三章】数码管静态显示实验例程_第1张图片

4 位共阴数码管内部管脚连接图如下:

【紫光同创国产FPGA教程】——【PGL22G第三章】数码管静态显示实验例程_第2张图片

段选:段选由 8 根 led 灯组成,分别为 a,b,c,d,e,f,g,dp;
由段选信号控制某段数码管点亮;
位选:位选由 4 组 8 个段选 LED 组成,分别为 seg1,seg2,seg3,seg4;
由选通信号控制第几块数码管点亮;
例:如果我们只点亮第一位的 A:需要将 11 脚配置高电平,其他段选(1-5,7,10,11)
配置低电平;将 12 脚配置低电平,其他位选脚配置(6,8,9)高电平;
点亮数码管原理:
输入相应的电平点亮一根根小火柴 a-b-c-d-e-f-g-dp。如果数码管是共阴极,给高电平1 即可相应点亮,反之如果是共阳极,给低电平 0 即可相应点亮。MES22GP 板的数码管为共阳极数码管,所以才有如下配置显示出 0~9:

【紫光同创国产FPGA教程】——【PGL22G第三章】数码管静态显示实验例程_第3张图片

实现框架如下:
1、顶层实现数码管显示切换;
2、需要设计一个 1 秒钟的计时器;

【紫光同创国产FPGA教程】——【PGL22G第三章】数码管静态显示实验例程_第4张图片

产生 1Hz 的时钟
通过一个 1s 的计数器产生一个 1hz 的时钟:计数的前 0.5s 为低电平,后 0.5s 为高电平。
顶层模块实现数码管切换
由于是数码管静态显示,故只需要将四位八段数码管的四个位选信号全部置高,即可使得四个数码管全亮,然后在 1hz 的时钟下产生一个 0~9 的计数器,将这个计数器的值作为数码管显示的值,即可循环显示数字 0~9。
四: 实验源码设计
顶层文件源码

【紫光同创国产FPGA教程】——【PGL22G第三章】数码管静态显示实验例程_第5张图片

【紫光同创国产FPGA教程】——【PGL22G第三章】数码管静态显示实验例程_第6张图片

 生成 1hz 时钟模块

【紫光同创国产FPGA教程】——【PGL22G第三章】数码管静态显示实验例程_第7张图片

 五:实验现象

下载程序后,四位八段数码管同时循环显示数字 0~9。

【紫光同创国产FPGA教程】——【PGL22G第三章】数码管静态显示实验例程_第8张图片

你可能感兴趣的:(fpga开发,fpga)