📄 -
字号:
1、数字钟设计输入频率为32768Hz,为了节省epm7128s的资源,利用外部集成电路4060经14级分频,产生数字钟所需的各种频率,其中主要使用的有C1024Hz、C512Hz、C256Hz、C128Hz、C4Hz及C1Hz信号,其余的各频率也尽量引到EPM7128S引脚,以备调试过程中使用!
2、、设计clock_main.gdf主要由三部分构成i、时钟部分。ii、闹钟部分。iii、秒表部分。各部分均使用共同的数码管显示,时钟部分时、分、秒计数显示各由两个数码管组成,一个个位、一个十位。闹钟部分主要是用于显示设置闹钟的时间,时、分、秒计数显示各由两个数码管组成,一个个位、一个十位。秒表部分和前两部分略有不同,主要是秒表部分使用的是两位显示百分秒、两位显示秒,剩下两位显示分,考虑数码管的数量限制,在秒表部分就不设小时显示了。三部分功能的选择受SEL_FUNCTION按键的控制,每按键一次,功能发生变化,一次是对时(sel_corr-->闹时设置(sel_ring)-->秒表(sel_s_clock)-->正常显示时间!这几项功能均由输出信号控制led发光二极管显示!在修改时间或设置闹钟时,使用LOCATION_SEL按键,选择时、分或者秒,闹钟的开关受控于按键RING_ON_OFF,每按键一次,状态更改一次。当选择秒表功能时,受控于按键START_STOP,每按键一次开始计时,再按键一次,时间保留,再按键一次再次重新开始。。。
3、每个按键都做了20多ms的消抖处理!
4、输出部分考虑到EPM7128的资源及电路的简化,把七段译码复用到一起,通过轮流选通的方法,逐个点亮数码管,对C1024Hz进行6分频,控每个数码管的显示,刷新频率在170Hz左右,这样就可以看到一个稳定的显示!
5、另外在时钟部分添加了一个模仿电台整点报时的功能,在接近整天的10秒钟,会每隔一秒报时一次,共四次512Hz、一次1024Hz!
6、闹钟部分是在到达设定的时间后,输1024Hz的信号,间隔是1Hz。
7、时间的调整及闹时的调整都是通过一个UP按键实现的,考虑到资源限制,只设计了向上修改,每按键一次,加1!
所有功能只是在EPM7128钟做相应的设计,个别部分还需要在实际电路中做调试、修改!
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -