![faba17eca77b79f9f4e55214f876eb60.png](https://i-blog.csdnimg.cn/blog_migrate/5aef3d9f973735d1fbb45b281d4045b2.png)
目录
- 写在前面
- 正文
- 快速认识
- 实现方式一
- 实现方式二
- 写在最后
写在前面
FPGA基础知识极简教程(9)讲到了七段数码管的显示Verilog设计,我们都知道,要在数码管上显示的数字,使用BCD编码是具有优势的(或者是最正确的)。拿数字时钟来说,如果你的时钟是12点,难道你会让数码管显示C? 如果你愿意如此,那就给自己家里安装一个这样的时钟吧! 如果是23点呢?不用BCD编码的数字恐怕不能显示了吧。 采用BCD码的数字,十位用一个数码管显示,个位用一个数码管显示,例如23点,则2和3分别显示,这样才符合人类的思维。
尽管如此,存在这样一个问题,我们在设计计数器的时候,习惯于直接设计二进制计数器,这样的计数器计数结果是二进制的,我们需要将其转换成BCD码,这就是今天我们需要讨论的问题。
当然,值得讨论的是这种方式是不是多此一举呢?如果仅仅对于数字时钟来说,时需要BCD编码的模24计数器,分以及秒则需要BCD编码的模60计数器。 这都很容易实现,例如上篇博客就是直接实现的BCD编码的模60以及模24计数器。之后送