加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入

基于小脚丫FPGA开发板和Nokia5110液晶屏的数字时钟设计-标准版

2016/08/30
21
服务支持:
技术交流群

完成交易后在“购买成功”页面扫码入群,即可与技术大咖们分享疑惑和经验、收获成长和认同、领取优惠和红包等。

虚拟商品不可退

当前内容为数字版权作品,购买后不支持退换且无法转移使用。

加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论
放大
方块图(2)
  • 方案介绍
  • 相关文件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

1、设计要求

基于小脚丫FPGA开发板和Nokia5110液晶屏实现数字时钟的设计,要求:

  • 1)采用FPGA+按键+液晶屏实现数字时钟功能;
  • 2)时间显示格式:XX:XX:XX (时:分:秒),采用24小时制;
  • 3)增加按键控制,时分秒三位分别可调,处于调节状态的位闪烁区别;

2、硬件连接

FPGA的系统时钟来自于小脚丫FPGA开发板配置的24MHz时钟晶振,连接FPGA的C1引脚

本设计用到两个按键K1和K2,硬件设计如图1所示,两个按键分别连接到FPGA的A2和B7引脚。

图1、按键硬件设计

设计中需要驱动Nokia5110液晶屏作为显示,液晶屏与小脚丫FPGA开发板之间的连接关系如图2所示,对应的管脚如下。

液晶屏 RST CE DC DIN CLK VCC BL GND
FPGA N3 P2 N2 M1 K1 3.3V J1 GND

图2、液晶屏硬件连接

3、工作原理

  • 2)使用三个8bit的BCD码表示时钟、分钟、秒钟的值,其中高4bit表示值的十位,低4bit表示值的个位;
  • 3)正常运行时,每来一个sec_clk秒钟个位加1,个位满10清零同时十位加1,当秒钟满60清零同时分钟个位加1,依次进行...直到23:59:59的下一刻全部清零;
  • 4)按键K1,模式调节,设计共分4中模式(运行模式、时针调节、分针调节、秒针调节),按动K1依次切换模式;
  • 5)按键K2,时间调节,当数字时钟在时针调节、分针调节或秒针调节模式时,按动K2调节对应时间位;
  • 6)硬件连接图中,程序复位控制线控制程序复位,断开重连设计复位。

4、代码设计

为了实现所需要的功能,我们将整个设计划分不同的模块,如图3所示。

图3、数字时钟程序设计框架

4.1 clock_ctl模块

Clock_ctl模块主要实现数字时钟的模式控制,本设计共有4种模式(normalhour_setminute_setsecond_set)当K1按键按下(set_en为高电平)时依次跳转,如图4所示。

图4、数字时钟状态控制设计

4.2 clock_cnt模块

Clock_cnt模块主要实现时钟逻辑模块:

  • 1)当处于normal模式时,每来一个sec_clk秒钟个位加1,个位满10清零同时十位加1,当秒钟满60清零同时分钟个位加1,依次进行...直到23:59:59的下一刻全部清零。
  • 2)当处于second_set模式时,每次K2按键按下(up_en为高电平)时,秒钟个位加1,个位满10清零同时十位加1,当秒钟满60清零,分钟和时钟保持不变,如下:

5、系统运行

图5、系统运行

视频地址:

https://v.youku.com/v_show/id_XMTM5MDE4OTE2MA==.html?from=s1.8-1-1.2

6、资源报告

资源 数量 比例 说明
LUTs 718 56%
寄存器 179 11%
存储器 0 0%
IO管脚 12
时钟频率 25MHz

7、知识点

  • Ø时钟计数分频
  • Ø按键消抖处理
  • Ø串行/并行转换
  • ØNokia5110液晶屏驱动

8、参考文档

Lattice MachXO2数据手册Nokia5110液晶屏资料

9、相关文件

文件名称 功能
Digital_clock 顶层模块,将所有功能模块接口连接起来
Clock_div 实现分频,产生按键、显示和秒时钟
key_board 实现按键消抖
clock_ctl 实现数字时钟的模式控制
clock_cnt 时钟逻辑,产生时分秒的数值
LCD_nokia5110 驱动Nokia5110液晶屏的显示
  • stepfpga_board.pdf
    描述:小脚丫FPGA开发板原理图
  • Digital_clock.rar
    描述:小脚丫FPGA数字时钟逻辑代码

相关推荐

电子产业图谱