差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
lcd显示控制 [2016/05/25 14:38]
admin [资源报告]
lcd显示控制 [2016/05/31 09:38] (当前版本)
admin
行 9: 行 9:
 本设计用到两个按键K1和K2,硬件设计如图1所示,两个按键分别连接到FPGA的A2和B7引脚。 本设计用到两个按键K1和K2,硬件设计如图1所示,两个按键分别连接到FPGA的A2和B7引脚。
 {{ :​fpga_5110lcd_key.png |按键硬件设计}} {{ :​fpga_5110lcd_key.png |按键硬件设计}}
 +<WRAP centeralign>​**小脚丫FPGA开发板的控制按键**</​WRAP>​
 设计中需要驱动Nokia5110液晶屏作为显示,液晶屏与小脚丫FPGA开发板之间的连接关系如图2所示,对应的管脚如下。 设计中需要驱动Nokia5110液晶屏作为显示,液晶屏与小脚丫FPGA开发板之间的连接关系如图2所示,对应的管脚如下。
  
行 16: 行 16:
  
 {{ :​fpga_5110lcd_con.png |液晶屏硬件连接}} {{ :​fpga_5110lcd_con.png |液晶屏硬件连接}}
 +<WRAP centeralign>​**小脚丫FPGA开发板和5110液晶屏的连接** </​WRAP>​
 ====工作原理==== ====工作原理====
   - 使用计数器做分频处理,得到周期为1秒的脉冲信号sec_clk;   - 使用计数器做分频处理,得到周期为1秒的脉冲信号sec_clk;
行 28: 行 28:
 为了实现所需要的功能,我们将整个设计划分不同的模块,如图3所示。 为了实现所需要的功能,我们将整个设计划分不同的模块,如图3所示。
 {{ :​fpga_5110lcd_blk.png |数字时钟程序设计框架}} {{ :​fpga_5110lcd_blk.png |数字时钟程序设计框架}}
 +<WRAP centeralign>​**数字时钟程序框架**</​WRAP>​
  
 4.1 clock_ctl模块 4.1 clock_ctl模块
 Clock_ctl模块主要实现数字时钟的模式控制,本设计共有4种模式(normal、hour_set、minute_set、second_set)当K1按键按下(set_en为高电平)时依次跳转,如图4所示。 Clock_ctl模块主要实现数字时钟的模式控制,本设计共有4种模式(normal、hour_set、minute_set、second_set)当K1按键按下(set_en为高电平)时依次跳转,如图4所示。
 {{ :​fpga_5110lcd_flow.png |数字时钟状态控制设计}} {{ :​fpga_5110lcd_flow.png |数字时钟状态控制设计}}
 +<WRAP centeralign>​**状态控制**</​WRAP>​
  
 {{ :​fpga_5110lcd_sta_code.png |数字时钟控制代码}} {{ :​fpga_5110lcd_sta_code.png |数字时钟控制代码}}
 +<WRAP centeralign>​**控制代码**</​WRAP>​
  
 4.2 clock_cnt模块 4.2 clock_cnt模块
行 40: 行 43:
 2)当处于second_set模式时,每次K2按键按下(up_en为高电平)时,秒钟个位加1,个位满10清零同时十位加1,当秒钟满60清零,分钟和时钟保持不变,如下: 2)当处于second_set模式时,每次K2按键按下(up_en为高电平)时,秒钟个位加1,个位满10清零同时十位加1,当秒钟满60清零,分钟和时钟保持不变,如下:
 {{ :​fpga_5110lcd_clk.png |数字时钟计数模块}} {{ :​fpga_5110lcd_clk.png |数字时钟计数模块}}
 +<WRAP centeralign>​**计数模块**</​WRAP>​
  
 5、系统运行 5、系统运行
 {{ :​fpga_5110lcd_pic.jpeg?​800 |系统运行状态}} {{ :​fpga_5110lcd_pic.jpeg?​800 |系统运行状态}}
 +<WRAP centeralign>​**系统实际运行**</​WRAP>​
  
 视频地址: 视频地址:
行 56: 行 61:
  
 ====知识点==== ====知识点====
-  - 时钟计数分频+  - 时钟计数,分频
   - 按键消抖处理   - 按键消抖处理
   - 串行/​并行转换   - 串行/​并行转换
行 62: 行 67:
  
 ====参考文档==== ====参考文档====
-Lattice MachXO2数据手册Nokia5110液晶屏资料+  * Lattice MachXO2数据手册 
 +  * Nokia5110液晶屏资料
  
 ====相关文件==== ====相关文件====
-文件名称 功能 +^文件名称  ​| ​功能| 
-Digital_clock 顶层模块,将所有功能模块接口连接起来 +^Digital_clock.v |顶层模块,将所有功能模块接口连接起来| 
-Clock_div 实现分频,产生按键、显示和秒时钟 +^Clock_div.v         |实现分频,产生按键、显示和秒时钟| 
-key_board 实现按键消抖 +^key_board.v         |实现按键消抖| 
-clock_ctl 实现数字时钟的模式控制 +^clock_ctl.v         |实现数字时钟的模式控制| 
-clock_cnt 时钟逻辑,产生时分秒的数值 +^clock_cnt.v         |时钟逻辑,产生时分秒的数值| 
-LCD_nokia5110 驱动Nokia5110液晶屏的显示+^LCD_nokia5110.v |驱动Nokia5110液晶屏的显示|