发 帖  
原厂入驻New

[经验] 【MYMINIEYE Runber蜂鸟开发版免费试用连载】FPGA数码管的使用

2020-8-6 17:10:10  1130 FPGA开发板 单片机
分享
0

前面出了点小意外,图片上传失败了,这里补一下
数码管我就不做太多的介绍了
分为共阴和共阳两种
开发板上的是共阴数码管



图片 1.png
图片 2.png
图片 3.png


对应的GPIO管脚
给四位位选设置为0则开启数码管



数码管的显示又分为动态显示和静态显示
静态显示即每个数码管显示相同的数字(如果要显示不同的数字需要占用很多io
动态显示即每个数码管可以显示不同的数字(通过快速逐位循环显示)



这里先编写一个静态显示的代码
一、首先创建文件,这里我就不重复,可以参考我前面发的帖子

文件其实主要有三部分

1.计时部分 每次计数0.5s将标志位置1并清空计数器

图片 5.png
2.数码管显示部分
(注意该数码管是共阴)
根据相应的数字显示
图片 6.png

3.数字的更新
根据收到的标志位对数字进行加1
图片 9.png



二、最后就是配置物理约束文件,对相应的io进行配置
可通过FloorPlanner配置生成cst文件,也可直接自己编写cst文件

图片 10.png



由于在实现代码时候,将代码分成多个Verilog文件时出现了一些问题,这里我将它们写在了一个.v文件中。
(官方代码看起来较复杂,部分代码参考正点原子例程并进行了修改)


三、具体实现
编译

图片 11.png

烧入代码

图片 12.png


实验展示
IMG20200806165257.jpg
每隔0.5s更新一次

这里附带一下代码

seg_static.zip (55.67 KB, 下载次数: 0)



等等,这里还有动态显示的代码
动态显示的代码较多我就不一一贴出来了
原理:其中一个数码管显示其他全关闭快速循环,看起来像同时显示4位,其实每次只显示了一位
这里我附带一下动态显示的代码
功能:从1计数到999

部分时钟频率(以及分频)未修改,不过功能实现

seg_dynamic.zip (83.1 KB, 下载次数: 0)

更多视频教程参考
http://t.elecfans.com/v/15312.html

评论

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
发经验
关闭

站长推荐 上一条 /8 下一条

快速回复 返回顶部 返回列表