eda课程设计多功能数字钟文档格式.docx
- 文档编号:13814805
- 上传时间:2022-10-13
- 格式:DOCX
- 页数:16
- 大小:114.95KB
eda课程设计多功能数字钟文档格式.docx
《eda课程设计多功能数字钟文档格式.docx》由会员分享,可在线阅读,更多相关《eda课程设计多功能数字钟文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
l、能进行正常的时、分、秒计时功能,分别由6个数码显示24小时、60分钟的计数器显示。
2、能利用实验系统上的按钮实现“校时”、“校分”功能;
(1)按下“SA”键时,计时器迅速递增,并按24小时循环;
(2)按下“SB”键时,计时器迅速递增,并按59分钟循环,并向“时”进位;
(3)按下“SC”键时,秒清零;
抖动的,必须对其消抖处理。
3、能利用扬声器做整点报时:
(1)当计时到达59’50”时开始报时,频率可为500Hz;
计满23小时后回零;
计满59分钟后回零。
(2)到达59’59”时为最后一声整点报时,整点报时的频率可定为lKHz。
4定时闹钟功能
5、用层次化设计方法设计该电路,用硬件描述语言编写各个功能模块。
6、报时功能。
报时功能用功能仿真的仿真验证,可通过观察有关波形确认电路设计是否正确。
三、时间进度安排
1周:
(1)完成设计准备,确定实施方案;
(2)完成电路文件的输入和编译;
(4)完成功能仿真。
2周:
(1)完成文件至器件的下载,并进行硬件验证;
(2)撰写设计说明书。
四、主要参考文献
(1)谭会生、瞿遂春,《EDA技术综合应用实例与分析》,西安电子科技大学出版社,2004
(2)曹昕燕、周凤臣等,《EDA技术实验与课程设计》,清华大学出版社,2006
指导教师签字:
2010年9月5日
引言:
人类社会已进入到高度发达的信息化社会。
信息化社会的发展离不开电子信息产品开发技术、产品品质的提高和进步。
实现这种进步的主要原因就是电子设计技术和电子制造技术的发展,其核心就是电子设计自动化(EDA)技术,EDA技术的发展和推广应用又极大地推动了电子信息产业的发展。
为保证电子系统设计的速度和质量,适应“第一时间推出产品”的设计要求,EDA技术正逐渐成为不可缺少的一项先进技术和重要工具。
目前,在国内电子技术教学和产业界的技术推广中已形成“EDA热”,完全可以说,掌握EDA技术是电子信息类专业学生、工程技术人员所必备的基本能力和技能。
实验原理:
用层次化设计的方法以VHDL语言编程实现以下功能:
【1】具有“时”、“分”、“秒”计时功能;
时为24进制,分和秒都为60进制。
【2】具有消抖功能:
手工按下键盘到是否这个过程大概50ms左右,在按下开始到弹簧片稳,定接触这段时间为5-10ms,从释放到弹片完全分开也是5-10ms,在达到稳定接触和完全分开的微观过程中,电平是时高时低的,因此如果在首次检测到键盘按下时延时10ms再检测就不会检测到抖动的毛刺电平了。
64Hz的信号周期为,正适合做消抖信号。
【3】具有校时和清零功能,能够用4Hz脉冲对“小时”和“分”进行调整,并可进行秒清零;
【4】具有整点报时功能。
在59分51秒、53秒、55秒、57秒发出低音512Hz信号,在59分59秒发出一次高音1024Hz信号,音响持续1秒钟,在1024Hz音响结束时刻为整点。
【5】具有一键设定闹铃及正常计时与闹铃时间的显示转换。
闹时时间为一分钟。
程序流程:
秒计数器模块设计:
模块图如图1。
六十进制带进位计数器,可清零,clk输入信号为1Hz脉冲,当q0计满9后q1增加1,当q0满9且q1记满5,q1、q0同时归零,co输出为高电平。
q1为十位q0为个位。
图1
程序如下:
libraryieee;
usesecondIS
port(clk,clr:
instd_logic;
co:
outstd_logic;
cq0:
outstd_logic_vector(3downto0);
cq1:
outstd_logic_vector(3downto0));
ENDsecond;
ARCHITECTUREbehaveofsecondis
SIGNALd:
std_logic_vector(3downto0);
SIGNALg:
BEGIN
process(clk,clr,d,g)
BEGIN
if(clr='
1'
)then
d<
="
0000"
;
g<
elsif(clk'
EVENTandclk='
)then
if(d=9andg=5)then
co<
='
else
0'
endif;
if(d=9)then
d<
if(g=5)then
g<
else
=g+1;
=d+1;
endprocess;
cq0<
=d;
cq1<
=g;
endbehave;
仿真结果如下图2:
图2
分计数器同上。
注:
不同之处为分的clk输入信号为秒的进位信号。
useminuteIS
ENDminute;
ARCHITECTUREbehaveofminuteis
时计数器:
模块图如图3。
24进制无进位计数器,当计数信号计到23后再检测到计数信号时会自动归零。
带清零,clk输入为分秒进位相与的结果。
q1为十位,q0为个位。
图3
usehourIS
port(clk3,rst3,m:
cq4:
cq5:
ENDhour;
ARCHITECTUREbehaveofhouris
process(clk3,rst3,m,d,g)
if(rst3='
elsif(clk3'
EVENTandclk3='
if(m='
if(d=9or(d=1andg=1))then
if(g=1)then
if(d=9or(d=3andg=2))then
if(g=2)then
endif;
endprocess;
cq4<
cq5<
当m=0时,实现模12计数,当m=1时实现模24计数,cout2作为clk3时钟信号,rst3是复位信号,cq4,cq5输出信号最后接在动态译管码芯片上。
得出实验要求的小时计时器:
仿真波形如下图4:
图4
分频器:
模块图如图5。
由四个分频器构成,输入信号in_clk为1024Hz脉冲信号。
把输入的1024Hz信号分频为四个脉冲信号,即1Hz的秒脉冲,4Hz的校时、校分脉冲,64Hz的消抖脉冲,以及512Hz的蜂鸣器低音输入。
图5
usedivis
port(in_clk:
clk_1,clk_4,clk_64,clk_512:
outstd_logic);
enddiv;
architectureoneofdivis
signalq512,a,b,c:
std_logic;
signalc1,c4,c64:
integerrange512downto0;
begin
process(in_clk)
ifin_clk'
eventandin_clk='
then
q512<
=notq512;
ifc64>
=7thenc64<
=0;
c<
=notc;
elsec64<
=c64+1;
ifc4>
=127thenc4<
b<
=notb;
elsec4<
=c4+1;
ifc1>
=511thenc1<
a<
=nota;
elsec1<
=c1+1;
clk_512<
=q512;
clk_1<
=a;
clk_4<
=b;
clk_64<
=c;
endone;
仿真波形如下图6:
图6
消抖:
模块图如图7。
分频出的用64Hz信号对sa校时信号、sb校分信号、sc秒清零信号、sd闹时设置信号进行防抖动处理。
是由四个两级d触发器构成的,分别对输入的sa、sb、sc、sd信号的相邻两个上升沿进行比较以确定按键的按下,从而达到消抖的目的。
图7
usexdis
port(clk_64,sa,sb,sc,sd:
hj,mj,sclr,sd
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- eda 课程设计 多功能 数字