秒表电路设计
根据秒表电路的功能需求, 考虑硬件电路原理, 可以将程序分为两个子模块: 秒表计数模块(watch_counter) 及数码管显示模块(seg_disp) 。 两个模块的连接关系如图 8-2 所示。其中 dec2seg、 keyshape 分别为两个功能相对独立的子模块, dec2seg 用于完成段码的编码,keyshape 用于完成按键消抖功能。

秒表计数模块(watch_counter) 用于产生 4 路 4 比特位宽的时钟计数信号, 分别表示十分之一秒(second_div)、 秒的个位(second_low)、 秒的十位(second_high)、 分的个位(minute)。
数码管显示模块(seg_disp) 用于显示 4 路 4 比特位宽的数据, 即将送入的 4 路信号分别以数字符号的形式显示在 4 个数码管上。
seg_disp 仅用于显示功能, 因此可以设计成通用的电路模块, 用户需要在某个数码管显示某个数字, 只需在对应的输入端接入相应的 4 比特信号即可。
数码管显示模块
动态扫描频率至少要高于人眼的频率24Hz,实际中通常采用1ms,也就是1000Hz。
为了更为明显地观察数码管动态扫描显示的机制,设置扫描的频率为1Hz。
本文详细介绍了使用FPGA设计秒表电路中的数码管显示部分,包括dec2seg编码模块和数码管扫描显示模块的原理与设计。通过秒表计数模块生成计时信号,并在数码管上动态显示。dec2seg模块负责段码编码,数码管扫描显示模块以1Hz的频率实现清晰的动态扫描效果,确保人眼无法察觉闪烁。
订阅专栏 解锁全文
2160

被折叠的 条评论
为什么被折叠?



