[课程设计]EDA课程设计.docx自动打铃系统设计
学生姓名:姚海军
学 号: **********
专业班级:电子-1班
报告提交日期:
湖南理工学院物电学院
摘要:本课程设计完成了自动打铃系统的设计,自动打铃系统是一种 用数字显示秒、分、时的计时装置,由于十足集成电路技术的发展, 使数字钟走时准确、多功能化且性能稳定等优点。在本次设计中,系 统开发平台为Cyclone II EP2C8Q208C8 ,硬件描述语言是Verilog HDLo依据Verilog HDL语言设计由计时,闹铃,数码管显示,按键 等模块组成的多功能自动打铃系统的设计。采用第三方仿真软件 (Modelsim)进行仿真。根据输入,观察输出及仿真。设计方案和设计 平台完成了程序编写和程序调试,通过运行程序及时序波形的仿真有 效验证了设计的正确性,初步实现了设计目标。
关键字:自动打铃系统 EP2C8Q208C8 Verilog HDL Modelsim
一、设计题目
设计一个多功能自动打铃系统
二、 设计要求
基本计时和显示功能(24小时制显示),包括:
24小时制显示、动态扫描显示、显示格式:88-88-88
能设置当前时间(含时、分)
能实现基本打铃功能,规定:
上午06:00起床铃,打铃5s
设置三个按键对时钟进行调整,并且驱动buzzer为打铃声
三、 设计方案说明
本次设计主要采用Verilog HDL硬件描述性语言、分模块法设计 的自动打铃系统。由于这次用的开发板提供的是50M晶振。首先要 对时钟进行分频,当计时到2FA_F07F时完成Is分频,通过计时到 60s产生分钟进位信号,再通过60分钟产生时钟进位信号。最后通过 6个寄存器对时分秒进行锁存最终输出到8个数码管上完成显示。当 显示时钟和默认闹钟时钟相等时,驱动打铃模块。通过 key_mode,key_tum,key_change查看闹钟,时钟显示,调整时钟。
四、 系统总体框图和各部分功能
系统框图如下:
本次系统设计采用的FPGA芯片是Alter公司生产的Cyclone II EP2C8Q208C8o该芯片是208个管脚,138个10,并且具有两个内 部PLL,而且内嵌乘法器,8K的逻辑门,资源相当丰富。完成这次 自动打铃系统的设计总共消耗250个LE单元,22个10 □, 131个 寄存器。经过综合后,本系统最高能实现145M的运行速度。通过 Quartus II软件观察到内部的RTL图如下
日 I 」 . I J Z
分频器的作用是对50Mhz的系统时钟信号进行分频,得到频
率为Ihz的信号,即为1S的计时信号。
按键部分
按键key_mode--0为显示计时,1为闹钟显示,2为调整时间。
按键key_tum一0为调整小时,1为调整分钟。
按键key_change一每按一次加1
计时部分
通过 sec_L,sec_H,min_L,min_H,hour_L,hour_H 6 个寄存器对时分
秒进行锁存然后送入数码管显示
闹钟模块
当设定的闹钟时间和数码管上显示的时间相等时驱动闹钟,完成 打铃,持续时间5s。
数码管显示模块
显示模块是由8个位选8个段选构成的显示模块,利用人眼的余 晖效果完成动态扫描,显示时间。
五、各部分仿真结果
考虑到实际仿真的效果,利用内部的Quartus II软件进行仿真效 果不是很理想,所以在此我们借助第三方功能强大的仿真软件 Modelsimo用Modelsim进行仿真必须要自己编写测试文件,通过自 己编写的测试文件可以得到各种自己需要的波形。测试文件如下:
module clock_tb;
reg sysclk, rst_b;
reg key_mode,key_tum,key_change;
wire buzzer;
wire [7:0] led_sel,led_data;
clock I_clock(
.sysclk (sysclk),.rst_b (rst_b), .key_mode (key_mode),
.key_change (key_change),.key_tum (key_turn),.buzzer
(buzzer) ,.led_sel (led_sel),.led_data (led_data));
initial
begin
sysclk = rbl;
rst_b = IbO; 〃复位信号
#30
rst_b = rbl;
end
always #10 sysclk = -sysclk; 〃输入的系统时钟,20ns的周期 endmodule
仿真波形如下:
当计时到Is时数码管的最低位发生
[课程设计]EDA课程设计 来自淘豆网m.daumloan.com转载请标明出处.