第一篇:电工电子课设-数字钟元器件清单
数字钟课程设计元器件清单单价(元/个)1、2、3、共阳极数码管:6个174LS247集成芯片:6块1 74LS90集成芯片:6块14、CD4060集成芯片:1块5、74LS00集成芯片:1块6、74LS74集成芯片:2块7、74LS20集成芯片:2块8、74LS08集成芯片:2块9、74LS04集成芯片:1块10、74LS32集成芯片:1块11、22pf电容:2个12、32768时钟晶体:1个13、1K电阻:1个
14、三极管:1个15、100Ω电阻:6个
17、蜂鸣器:1个
18、小饭盒:1个
19、面包板:1块1 1 1 11 111
第二篇:数字钟课设任务书
课程设计任务书
一、设计课题
数字钟
二、设计时间
2011年 6 月 20日至2011年 6 月 24日
三、设计内容及要求
1、设计要求
1)时间以24小时为一个周期; 2)能显示时、分、秒,24小时制;
3)有校时功能,可以分别对时及分进行单独校时,使其校正到标准时间; 4)计时过程具有报时功能,当时间到达整点前5秒进行蜂鸣报时; 5)为了保证计时的稳定及准确须由晶体振荡器提供表针时间基准信号。6)在完成上述设计内容的基础上,可以自行设计一些附加功能。注意:硬件资源的节约,否则器件内资源会枯竭。
2、工作任务与要求
1)搜集有关资料,进行方案设计,画出总体设计框图,说明抢答器由哪些相对独立的功能模块组成,标出各个模块之间互相联系,并以文字对原理作辅助说明。
2)进行电路参数分析、论证,以及电路可靠性分析。3)设计各个功能模块的电路图,加上原理说明。
4)在验证各个功能模块基础上,对整个电路的元器件和布线,进行合理布局,画出总体电路图。
3、设计报告正文内容要求
1)设计目的。2)设计指标。3)设计方案及论证。
4)画出设计的原理框图,并要求说明该框图的工作过程及每个模块的功能。5)画出各功能模块的电路图,加上原理说明(例如抢答门及控制电路,锁存器及译码显示原理等)。
6)画出总布局接线图(集成块按实际布局位置画,关键的连接应单独画出,集成块的引脚须按实际位置画,并注明名称。)
7)元器件清单。
胡静波
第三篇:数字电子技术课设(数字钟)
太原理工大学现代科技学院学院《数字电子技术》课程设计报告
数字电子技术课程设计报告
题
目:
多功能数字钟课程设计
学
年:2007
学
期:第二学期
专
业:自动化
班
级:0703
学
号:07100559 姓
名:刘磊
指导教师及职称:
魏巍
时
间:
2009年7月9日
太原理工大学现代科技学院
第 0
页 太原理工大学现代科技学院学院《数字电子技术》课程设计报告
数字电子技术课程设计报告
一、设计目的
数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。数字钟从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。
因此,我们此次设计与制做数字钟就是为了了解数字钟的原理,从而学会制作数字钟.而且通过数字钟的制作进一步的了解各种在制作中用到的中小规模集成电路的作用及实用方法.且由于数字钟包括组合逻辑电路和时叙电路.通过它可以进一步学习与掌握各种组合逻辑电路与时序电路的原理与使用方法.二、设计要求
(1)设计指标
① 时间以12小时为一个周期; ② 显示时、分、秒;
③ 具有校时功能,可以分别对时及分进行单独校时,使其校正到标准时间; ④ 计时过程具有报时功能,当时间到达整点前10秒进行蜂鸣报时; ⑤ 为了保证计时的稳定及准确须由晶体振荡器提供表针时间基准信号。(2)设计要求
① 画出电路原理图(或仿真电路图); ② 元器件及参数选择; ③ 电路仿真与调试;
④ PCB文件生成与打印输出。
(3)制作要求
自行装配和调试,并能发现问题和解决问题。
(4)编写设计报告
写出设计与制作的全过程,附上有关资料和图纸,有心得体会。
三、原理框图
1.数字钟的构成
数字钟实际上是一个对标准频率(1HZ)进行计数的计数电路。由于计数的起始时间不可能与标准时间(如北京时间)一致,故需要在电路上加一个校时电路,同时标准的1HZ时间信号必须做到准确稳定。通常使用石英晶体振荡器电路构成数字钟。
第 1
页 太原理工大学现代科技学院学院《数字电子技术》课程设计报告
译 码 显 示 电 路时计数器分计数器秒计数器振荡器校时电路报时电路多级分频器(a)数字钟组成框图
2.晶体振荡器电路
晶体振荡器电路给数字钟提供一个频率稳定准确的32768Hz的方波信号,可保证数字钟的走时准确及稳定。不管是指针式的电子钟还是数字显示的电子钟都使用了晶体振荡器电路。一般输出为方波的数字式晶体振荡器电路通常有两类,一类是用TTL门电路构成;另一类是通过CMOS非门构成的电路,本次设计采用了后一种。如图(b)所示,由CMOS非门U1与晶体、电容和电阻构成晶体振荡器电路,U2实现整形功能,将振荡器输出的近似于正弦波的波形转换为较理想的方波。输出反馈电阻R1为非门提供偏置,使电路工作于放大区域,即非门的功能近似于一个高增益的反相放大器。电容C1、C2与晶体构成一个谐振型网络,完成对振荡频率的控制功能,同时提供了一个180度相移,从而和非门构成一个正反馈网络,实现了振荡器的功能。由于晶体具有较高的频率稳定性及准确性,从而保证了输出频率的稳定和准确。
(b)CMOS 晶体振荡器(仿真电路)
3.时间记数电路
第 2
页 太原理工大学现代科技学院学院《数字电子技术》课程设计报告
一般采用10进制计数器如74HC290、74HC390等来实现时间计数单元的计数功能。本次设计中选择74HC390。由其内部逻辑框图可知,其为双2-5-10异步计数器,并每一计数器均有一个异步清零端(高电平有效)。
秒个位计数单元为10进制计数器,无需进制转换,只需将QA与CPB(下降沿有效)相连即可。CPA(下降没效)与1HZ秒输入信号相连,Q3可作为向上的进位信号与十位计数单元的CPA相连。
秒十位计数单元为6进制计数器,需要进制转换。将10进制计数器转换为6进制计数器的电路连接方法如图 2.4所示,其中Q2可作为向上的进位信号与分个位的计数单元的CPA相连。
十进制-六进制转换电路
分个位和分十位计数单元电路结构分别与秒个位和秒十位计数单元完全相同,只不过分个位计数单元的Q3作为向上的进位信号应与分十位计数单元的CPA相连,分十位计数单元的Q2作为向上的进位信号应与时个位计数单元的CPA相连。
时个位计数单元电路结构仍与秒或个位计数单元相同,但是要求,整个时计数单元应为12进制计数器,不是10的整数倍,因此需将个位和十位计数单元合并为一个整体才能进行12进制转换。利用1片74HC390实现12进制计数功能的电路如图(d)所示。
(d)十二进制电路
另外,图(d)所示电路中,尚余-2进制计数单元,正好可作为分频器2HZ输出信号转化为1HZ信号之用。
4.译码驱动及显示单元电路
选择CD4511作为显示译码电路;选择LED数码管作为显示单元电路。由CD4511把输进来的二进制信号翻译成十进制数字,再由数码管显示出来。这里的LED数码管是采用共阴的方法连接的。
计数器实现了对时间的累计并以8421BCD码的形式输送到CD4511芯片,再由4511芯片把BCD码转变为十进制数码送到数码管中显示出来。
第 3
页 太原理工大学现代科技学院学院《数字电子技术》课程设计报告
5.校时电路
数字钟应具有分校正和时校正功能,因此,应截断分个位和时个位的直接计数通路,并采用正常计时信号与校正信号可以随时切换的电路接入其中。即为用COMS与或非门实现的时或分校时电路,In1端与低位的进位信号相连;In2端与校正信号相连,校正信号可直接取自分频器产生的1HZ或2HZ(不可太高或太低)信号;输出端则与分或时个位计时输入端相连。当开关打向下时,因为校正信号和0相与的输出为0,而开关的另一端接高电平,正常输入信号可以顺利通过与或门,故校时电路处于正常计时状态;当开关打向上时,情况正好与上述相反,这时校时电路处于校时状态。
实际使用时,因为电路开关存在抖动问题,所以一般会接一个RS触发器构成开关消抖动电路,所以整个较时电路就如图(f)。
(f)带有消抖电路的校正电路
6.整点报时电路
电路应在整点前10秒钟内开始整点报时,即当时间在59分50秒到59分59秒期间时,报时电路报时控制信号。
当时间在59分50秒到59分59秒期间时,分十位、分个位和秒十位均保持不变,分别为5、9和5,因此可将分计数器十位的QC和QA、个位的QD和QA及秒计数器十位的QC和QA相与,从而产生报时控制信号。
报时电路可选74HC30来构成。74HC30为8输入与非门。
第 4
页 太原理工大学现代科技学院学院《数字电子技术》课程设计报告
说明:当时间在59分50秒到59分59秒期间时 分十位、分个 位和秒十位均保持不变,分别为5,9和5;因此,可以将分计数器十位的Qc和QA,个位的QD和QA及秒计数器十位的QC和QA相与,从而产生报时控制信号。IO1分计数器十位的Qc和QAIO2U11VCCIO35VVCCX182345V分计数器个位的QD和QAIO456114V_0.5WIO512秒计数器十位的QC和QAIO674HC30D数字钟设计-整点报时电路部分
四、元器件
1.四连面包板1块(编号A45)
2.镊子1把 3.剪刀1把
4.共阴八段数码管6个 5.网络线2米/人 6.CD4511集成块6块 7.CD4060集成块1块 8.74HC390集成块3块 9.74HC51集成块1块 10.74HC00集成块4块 11.74HC30集成块1块 12.10MΩ电阻5个 13.500Ω电阻14个 14.30p电容2个
15.32.768k时钟晶体1个 16.蜂鸣器10个(每班)1)芯片连接图
1)74HC00D
2)CD4511
第 5
页 太原理工大学现代科技学院学院《数字电子技术》课程设计报告
3)74HC390D
4)74HC51D
2.面包板的介绍
面包板一块总共由五部分组成,一竖四横,面包板本身就是一种免焊电板。面包板的样式是:
第 6
页 太原理工大学现代科技学院学院《数字电子技术》课程设计报告
面包板的注意事项:
1. 面包板旁一般附有香蕉插座,用来输入电压、信号及接地。2. 上图中连着的黑线表示插孔是相通的。
3. 拉线时,尽量将线紧贴面包板,把线成直角,避免交叉,也不要跨越元件。4. 面包板使用久后,有时插孔间连接铜线会发生脱落现象,此时要将此排插孔做记号。并不再使用。
五、各功能块电路图
数字钟从原理上讲是一种典型的数字电路,可以由许多中小规模集成电路组成,所以可以分成许多独立的电路。
(一)六进制电路
由74HC390、7400、数码管与4511组成,电路如图一。
U1A3123U2A12Com74HC00D74HC00DU5SEVEN_SEG_COM_KABCDEFGU3AV1 32Hz 5V141INA1INB21CLR31QA1QB1QC1QD5677126U413DADBDCDD5OAOBOCODOE1211109151474HC390D43~ELOF~BIOG~LTVCC5V4511BD将十进制计数器转换为六进制的连接方法
(二)十进制电路
由74HC390、7400、数码管与4511组成,电路如图二。
第 7
页 太原理工大学现代科技学院学院《数字电子技术》课程设计报告
U4A3126U4B4574HC00D74HC00DComU3SEVEN_SEG_COM_KU1AV1 60Hz 5V141INA1INB21CLR31QA1QB1QC1QD5677126U213DADBDCDD5OAOBOCODOE12111091514ABCDEFGVCC5V74HC390D43~ELOF~BIOG~LT4511BD十进制接法测试仿真电路
(三)六十进制电路
由两个数码管、两4511、一个74HC390与一个7400芯片组成,电路如图三。
(四)双六十进制电路
由2个六十进制连接而成,把分个位的输入信号与秒十位的Qc相连,使其产生进位,电路图如图四。
第 8
页 太原理工大学现代科技学院学院《数字电子技术》课程设计报告
ComComSEVEN_SEG_COM_KU1B6453U1A12U4SEVEN_SEG_COM_KU7U11BABCDEFG64513DADBDCDD5OAOBOCODOE~ELOF~BI~LTOG1211109151421CLR141INA1INB3U10A12ABCDEFG74HC00D74HC00DU3B15122INA2INB142CLR132QA2QB2QC2QD11109U2712674HC00D74HC00DU8A31QA1QB1QC1QD5677126U913DADBDCDD5OAOBOCODOE12111091514VCC5V74HC390D43U1C891011U1D12134511BD74HC390DComVCCU643~ELOF~BI~LTOG5VSEVEN_SEG_COM_K74HC00D74HC00DABCDEFG84511BDComU15C91011U16DSEVEN_SEG_COM_K1213U14U3A131INA1INB21CLR1QA1QB1QC1QD5677126U513DADBDCDD5OAOBOCODOE1211109151474HC00D74HC00DU12B15122INA2INB142CLR132QA2QB2QC2QD111097126U13DADBDCDD5OAOBOCODOEABCDEFG***14V1 100kHz 5V474HC390D43~ELOF~BI~LTOGVCC74HC390D5V43~ELOF~BI~LTOG4511BD4511BD
(五)时间计数电路
由1个十二进制电路、2个六十进制电路组成,因上面已有一个双六十电路,只要把它与十二进制电路相连即可,详细电路见图五。
ComComComComComComU1SEVEN_SEG_COM_KU2SEVEN_SEG_COM_KU4SEVEN_SEG_COM_KU3SEVEN_SEG_COM_KU5SEVEN_SEG_COM_KU6SEVEN_SEG_COM_KABCDEFGABCDEFGABCDEFGVCCVCCABCDEFGABCDEFGABCDEFG5V***45VVCCVCC***49***45V***3121110***01514145V9VCCOG995V99OAOBODOAOBODOAOBODOEOEOCOCOCOFOFOEOGOAOBODOAOBODOAOBODOEOEOCOCOCOFOFOEOGOG~LT~LT~EL~EL~BI~BI~ELDADCDDDADCDDDADC~LT~LT~LTDBDB~EL~EL~EL~BI~BIDADCDDDADCDDDADCDBDB3DBDD~BI5V73DBDD4511BD54511BD******12643U23CU25A74HC00D***8U21A74HC00D13111038U20C74HC00D3U19A74HC00D131110974HC00D9356356772QB1QD2QD2QD1QB1QC2QB2QC2QB2QC1QB1QA2QA2QA1QA1QC1QD2QA2QC2QD61QB2INA1CLR2CLR2CLR1INA1INB2INA2INB2INA2INB1INA1INA1INB74HC00D161CLR74HC390D6151INB74HC00D111CLRU26B74HC390D74HC390N1174HC390N74HC390DU20B1574HC00D1262INB74HC00D74HC00D***242V1 1000Hz 5V时,分,秒计时电路图
(六)校正电路
由74CH51D、74HC00D与电阻组成,校正电路有分校正和时校正两部分,电路如图六。
第 9
页
142CLRU13AU16B1QA1QC1QDU24DU22BU14AU17BU20DU15AU18B74HC390N43~BI~LT4511BDOGU7U8OFU10VCC4511BDOGU9U114511BDOFU124511BD1010921921254***254太原理工大学现代科技学院学院《数字电子技术》课程设计报告
IO1VCC正常输入信号5V校正信号R1IO2U2C9108小时校正电路J110Mohm74HC00D注意:分校时时,不会进位到小时。U11111213910U2DKey = A12R210MohmIO313U2A8123时计数器IO574HC00D1123674HC00D正常输入信号校正信号R3U3A10Mohm12U2B456分计数器IO6IO44574HC00D74HC51D3J274HC00DKey = B分钟校正电路分校正时锁定小时信号输入R410MohmU3B456图中采用基本RS触发器构成开关消抖动电路,其中与非门选用74HC00;对J1和J2,因为校正信号与0相与为0,而开关的另一端接高电平,正常输入信号可以顺利通过与或门,故校时电路处于正常计时状态,当开关打向上时,情况正好与上述相反,这时电路处于校时状态。74HC00D数字钟设计-校时电路部分
(七)晶体振荡电路
由晶体与2个30pF电容、1个4060、一个10兆的电阻组成,芯片3脚输出2Hz的方波信号,电路如图七。
(八)整点报时电路
由74HC30D和蜂鸣器组成,当时间在59:50到59:59时,蜂鸣报时,电路如图八。
第 10
页 太原理工大学现代科技学院学院《数字电子技术》课程设计报告
说明:当时间在59分50秒到59分59秒期间时 分十位、分个 位和秒十位均保持不变,分别为5,9和5;因此,可以将分计数器十位的Qc和QA,个位的QD和QA及秒计数器十位的QC和QA相与,从而产生报时控制信号。IO1分计数器十位的Qc和QAIO2U11VCCIO35VVCCX182345V分计数器个位的QD和QAIO456114V_0.5WIO512秒计数器十位的QC和QAIO674HC30D数字钟设计-整点报时电路部分
六、总接线元件布局简图
整个数字钟由时间计数电路、晶体振荡电路、校正电路、整点报时电路组成。
其中以校正电路代替时间计数电路中的时、分、秒之间的进位,当校时电路处于正常输入信号时,时间计数电路正常计时,但当分校正时,其不会产生向时进位,而分与时的校位是分开的,而校正电路也是一个独立的电路。
电路的信号输入由晶振电路产生,并输入各电路。简图如图九。
七、芯片连接总图
因仿真与实际元件上的差异,所以在原有的简图的基础上,又按实际布局画了这张按实际芯片布局的接线图,如图十。
八、总结
1. 实验过程中遇到的问题及解决方法
① 面包板测试
测试面包板各触点是否接通。
② 七段显示器与七段译码器的测量
第 11
页 太原理工大学现代科技学院学院《数字电子技术》课程设计报告
把显示器与CD4511相连,第一次接时,数码管完全没有显示数字,检查后发现是数码管未接地而造成的,接地后发现还是无法正确显示数字,用万用表检测后,发现是因芯片引脚有些接触不良而造成的,所以确认芯片是否接触良好是非常重要的一件事。
③ 时间计数电路的连接与测试
六进制、十进制都没有什么大的问题,只是芯片引脚的老问题,只要重新插过芯片就可以解决了。但在六十进制时,按图接线后发现,显示器上的数字总是100进制的,而不是六十进制,检测后发现无论是线路的连通还是芯片的接触都没有问题。最后,在重对连线时发现是线路接错引脚造成的,改过之后,显示就正常了。
④ 校正电路
因上面程因引脚接错而造成错误,所以校正电路是完全按照仿真图所连的,在测试时,开始进行时校时时,没有出现问题,但当进行到分校时时,发现计数电路的秒电路开始乱跳出错。因此,电路一定是有地方出错了,在反复对照后,发现是因为在接入校正电路时忘了把秒十位和分个位之间的连线拿掉而造成的,因此,在接线时一定要注意把不要的多余的线拿掉。
2. 设计体会
通过这次对数字钟的设计与制作,让我了解了设计电路的程序,也让我了解了关于数字钟的原理与设计理念,要设计一个电路总要先用仿真仿真成功之后才实际接线的。但是最后的成品却不一定与仿真时完全一样,因为,再实际接线中有着各种各样的条件制约着。而且,在仿真中无法成功的电路接法,在实际中因为芯片本身的特性而能够成功。所以,在设计时应考虑两者的差异,从中找出最适合的设计方法。通过这次学习,让我对各种电路都有了大概的了解,所以说,坐而言不如立而行,对于这些电路还是应该自己动手实际操作才会有深刻理解。
3. 对设计的建议
我希望老师在我们动手制作之前应先告诉我们一些关于所做电路的资料、原理,以及如何检测电路的方法,还有关于检测芯片的方法。这样会有助于我们进一步的进入状况,完成设计
参考文献:
《数字电路硬件设计实践》 贾秀美 主编 高等教育出版社 《电子线路设计、实验、测试》 谢自美主编 华中理工出版社。《数字电子技术基础》 阎 石 主编 高等教育出版社
第 12
页
第四篇:VHDL实现数字钟课设报告[推荐]
东北大学信息学院
课程设计报告
课程设计题目:用VHDL语言实现数字钟的设计
班 级:电子1001班 学 号:20102594 姓 名:刘云飞
指导老师:李世平、李宁
设计时间:2012年12月
东北大学信息学院
摘要
随着EDA技术的发展,EDA在通信、电子等领域占有十分重要的地位。本设计介绍了基于VHDL语言的数字钟的设计。数字钟的功能是对年、月、日、时、分、秒、星期,以及闹钟时、分的预置;在正常计数时的时、分与闹钟设定的时、分相同时,实现报时,同时以stop和pass键对闹钟进行停止及延迟响铃的控制;在整点的时候led灯闪烁一下。其中,用set脉冲的不同实现对预置,正常计时,闹钟的控制。Set为1~12分别控制显示年月日、预置年月日、时分秒、星期、显示时分秒、预置闹钟时分、显示闹钟预置的时分。预置时用up的高、低电平实现对各预置量的加、减控制。将1KHZ的时钟进行分频为1HZ,实现每次脉冲为1秒。经仿真和验证显示,此数字钟切实可行,可以实现显示时间和闹钟的功能。
关键词:VHDL语言,数字钟,预置
东北大学信息学院
目录
摘 要............................................................2
1、设计目的.........................................................4
2、设计内容和要求...................................................4
3、设计原理.........................................................4
3.1 数字钟功能介绍..........................................................................................................4 3.2 数字钟设计原理..........................................................................................................5
4、VHDL程序设计.....................................................6
4.1 整体设计思路................................................................................................................6 4.2 各模块设计方法............................................................................................................7 4.2.1 顶层模块...............................................................................................................7 4.2.2 其他模块...............................................................................................................8 4.2.3 程序包模块.........................................................................................................13
5、仿真与分析......................................................13
5.1 仿真结果....................................................................................................................13 5.2 仿真分析....................................................................................................................16
6、课程设计总结....................................................16
7、参考文献........................................................17
东北大学信息学院
1、设计目的
掌握利用可编程逻辑器件和EDA设计工具进行电子系统设计的方法。
2、设计内容和要求
用VHDL语言实现数字钟的设计,要求设计实现一个具有带预置数的数字钟,具有显示年月日时分秒的功能。用6个数码管显示时分秒,set按钮产生第一个脉冲时,显示切换年月日,第2个脉冲到来时可预置年份,第3个脉冲到来时可预置月份,依次第4、5、6、7个脉冲到来时分别可预置日期、时、分、秒,第 8个脉冲到来后预置结束,正常工作,显示的是时分秒。Up为高电平时,upclk有脉冲到达时,预置位加1。否则减1。
3、设计原理 3.1 数字钟功能介绍
数字钟具有计时、预置、报时的功能。以不同的set脉冲控制各个功能。
(1)在计时功能中,数字钟实现对年月日时分秒即星期的计时,并可以通过LED数码管分别显示年月日、或时分秒、或星期、或闹钟的时分。
(2)在预置功能中,可以通过UP键对各需要预置的量进行控制。UP=1时,进行“加”控制,UP=0时,进行“减”控制。
(3)在报时功能中,分为整点报时和设置时间报时。其中整点报时以ce作为使能输入端,在整点时灯进行一秒闪烁;设置时间报时以enable作为使能输入端,enable=1时设置时间报时功能启动,在闹钟预置时间与时钟当前时间相同时报时,若此时按下stop,闹钟立即停止并不再响铃,若按下pass,则闹钟立即停止,但三分钟后再响,如此循环5次后不再响铃,若什么都不按,闹钟响铃持续1分钟。
东北大学信息学院
3.2 数字钟设计原理
本设计功能有8个子模块:分频模块、时分秒模块、日模块、年月模块、闹钟预置模块、星期模块、响铃模块。通过元件例化由顶层文件timekeeper综合。
整体设计框图及外观图如(图 3-1)及(图3-2)
图3-1 数字钟设计整体框图
东北大学信息学院
图3-2 数字钟外观图
4、VHDL程序设计
4.1 整体设计思路
采用自上而下的方法进行整体设计。整个设计共分为8个模块,通过顶
层文件timekeeper元件例化将8个模块各个端口对应相连。在设计各个模块时所用到的其它运算方法等放于work库中,通过程序包及程序包体的方式对所使用函数进行定义。
主要使用的语句有:元件例化语句,过程语句,信号赋值语句,if语句,case语句(在状态机中)。
图(4-1)表示了个模块的连接及连接是所用到的触发器等。
东北大学信息学院
图4-1
整体结构图
4.2 各模块设计方法
4.2.1 顶层模块
顶层模块timekeeper是.对对所有模块的综合。
它包含的功能是:通过元件例化连接各模块;实现对闹钟控制位sp2的控制;实现闹钟的整点报时闪烁。
输入端:up
全局加减选择,控制预置时的加减
setpin 设定选择
东北大学信息学院
upclk 加减触发
f1000 时钟输入
输出端:a0~d1 八位数码管控制引脚的输出
z
整点报时输出 4.2.2 其他模块
1、时分秒模块
时分秒模块h_m_s是对时、分、秒正常计时(set=0 or 1 or 12)和预置时分秒(set=5 or 6 or 7)的实现。
分和秒由两个六十进制实现,时由24进制实现。当时间达到23时59分59秒时,时分秒全部归零,进位位ov由零变为1,通过管脚连接到date模块的时钟计数信号clk0,开启date模块。
2、日的模块
日的模块date实现日子进行正常计时(set=0 or 1 or 12)和预置(set=4)。
由于每月的天数与月份、年份有关,故需判断年月。(1)(2)(3)当1、3、5、7、8、10、12月时,每月31天,使用31进制。当4、6、9、11月时,每月30天,使用30进制。当2月时,分闰年和平年。闰年29天,平年28天。
闰年和平年的判断方法是:由于通过年月模块传输的年份为两位BCD码。若高位信号为“xxx0”且低位信号为“xx00”或高位信号为“xxx1”且低位信号为“xx10”,则可判定为闰年,否则为平年。
以上各月,当日期至月底时返回1,进位位ov变为1通过管脚连接年月模块的时钟计数信号clk0,开启年月模块。
3、年月模块
年月模块year_mon实现年月正常计时(set=0 or 1 or 12)和年、月的预置(set=2 or 3)。
月为12进制,当达到12时变回为1,同时使年份进1。由两位BCD码表示年份,故可以表示100年之年的所有年,为100进制。
东北大学信息学院
图4-2 year_mon和date模块的电路连接图
4、星期模块
星期模块week的功能是实现对星期的计时(set=0 or 1 or 12)和预置(set=8)。为七进制。
图4-3 week模块的RTL
5、闹钟模块
东北大学信息学院
闹钟模块alarm是对闹钟时和分的预置(set=10 or 11)。时为24进制,分为60进制。
图4-3 alarm模块的RTL
另外,在顶层模块timekeeper,当闹钟预置时间与计时时间相同时(仅时、分),闹钟响铃,当不对其进行任何操作时,响铃维持1分钟。响铃方式见4.2.7响铃模块。
6、响铃模块
响铃模块alarm是对闹钟响铃的控制。其中主要包含:
Enable:当enable=1时,闹钟可以工作。
Sp2 :当顶层模块闹钟时间与计时相等时,sp2=1,响铃开启。Stop :闹钟停止并不再响铃。
Pass :闹钟停止但三分钟后再响,循环5次。Sp :响铃输出。Sp=1时响铃,sp=0时不响。本模块主要使用的方法是状态机。相应状态转换图如下:
东北大学信息学院
图 4-4 响铃模块状态转换图
在状态t_pass时,使用计数的方法实现对3分钟,5次循环的计数。
图 4-5 计数的流程图
东北大学信息学院
图4-6 speak模块的RTL
7、分频模块
分频模块fenpin使输入为1KHZ时钟信号时,接入电路经分频后仍能按1HZ即1s计数。
图4-7 fenpin模块的RTL
8、显示模块
显示模块led即七段数码管的显示电路。
东北大学信息学院
图4-8 led模块的RTL 4.2.3 程序包模块
程序模块是对各模块所用到的函数的定义,通过程序包package定义时、日、月、年等的增减函数(procedure),并用程序包体package body具体说明函数的内容。通过use.work.pac.all语句调用程序包,使程序书写更加方便简洁。
5、仿真与分析
5.1 仿真结果
1、h_m_s模块
东北大学信息学院
表示当up=1时,时钟时(set=5)、分(set=6)、秒(set=7)从0开始加。
图 5-1
2、date模块
以下为对应月份截图。另外,当日期由最末变为1时,ov进1以控制year_mon模块。
(1)大月:每月31天。
图5-2-1(2)小月:每月30天。
图5-2-2(3)平年2月:每月28天。
东北大学信息学院
图5-2-3(3)闰年2月:每月29天。
图5-2-4
3、year_mon模块
图5-3
4、week模块
前半部分up=1,为加,1~7,后半部分up=0,为减,6~1
图5-4
5、alarm模块
下图反映对闹钟时(set=10)、分(set=11)的预置,up=1为加。
图 5-5
6、speak模块
(1)按下pass
由下图可见,当时间相同sp为高电平;按下pass后sp变为低电平,三分钟
东北大学信息学院
后sp又为高电平。
图5-6-1(2)按下stop
由下图可见,当时间相同时sp为高电平,按下stop后sp变为低电平。
图 5-6-2
5.2 仿真分析
各模块仿真均可实现,且波形显示可以实现预想的功能。
6、课程设计总结
通过这次的课程设计,我又一次系统的复习了VHDL语言,通过实践对VHDL语言和EDA技术有了更具现实性应用性的了解,并熟练了相关软件的使用方法。
此次课程设计的内容是数字钟,我学会了如何利用元件例化将各个模块结合起来,而不是一味的想起一个功能设计一个功能,而是有一个总体的自上而下的设计,建立基本的设计框图(如图 3-1),再进行具体的设计。
在程序调试的过程中,出现了很多的问题。我发现往往是一行出现了错误导致了接下来一系列错误的出现。
还有在仿真中出现错误的红线,并出现了‘U’字符,全都是未设置初值所致。而在设置初值时仍然出现了问题。最开始我想定义一个clr信号,当clr为高电平时各功能清零,但是在实际仿真时,由于常常要看在月末或类似23时59分59秒这样的时刻是否有进位信号进为高电平,从零开始显然让仿真变的十
东北大学信息学院
分麻烦,如果可以直接赋初值到接近进位的时刻就会让仿真变得简便。即使用信号赋初值的方法对信号进行赋初值,既解决错误又利于仿真。
在最后对顶层仿真时出现了很多的问题,最后发现都是未对应的问题。当然,我的设计还有很多不足的地方。比如有一处的竞争冒险产生的毛刺没有解决。最开始是将speak模块控制信号sp2的相关程序写在了alarm模块,仿真时发现在一处出现了毛刺,在对闹钟进行预置时分时的第一个时间都未足一个时钟周期(如图 5-5)。后来我想是否因为alarm模块有两个process进程,就将sp2的相关程序挪到了顶层模块,但是最后还是没有实现。咨询了一下同学们,他们都说这没有问题,不需要解决,所以就没有解决这个问题。
此次课程设计我学到了很多,但是我觉得应该放在刚刚考完EDA之后,那时候对只是记得比较清楚,不像在这次设计时很多知识都想不起来了。其他的对我帮助都很大。
7、参考文献 李景华,杜玉远等著.可编程逻辑器件与EDA技术.沈阳:东北大学出版社,2000 2 齐怀印等.高级逻辑器件与设计.北京:电子工业出版社,1996 3 可编程逻辑器件与数字系统设计[M].北京航天航空大学出版社,1999 4 刘真,毕才术.数字逻辑与计算机设计[M ]北京:高等教育出版社,2002 5 王小军.VHDL简明教程[M].北京:清华大学出版社,1997
第五篇:电子课设 心得体会
电子课设心得体会
本次课设的任务是完成一个电子钟,要求有计时,周显示与整点报时功能。整个电路系统大体由秒脉冲发生器,计数译码显示功能模块,整点报时蜂鸣器电路模块组成。
在设计过程中,主要的感受有几点:
第一,理论基础要扎实。电子钟的课设最基础的部分就是电子课上的计时器内容,在清楚计时器,触发器,逻辑电路等集成元器件和相关电路工作原理的前提下,才能对任务有一个清晰明确的了解和设想出解决方案。
第二,线路布局要有全局观念。在明确电子钟整体工作原理和组成部分以及它们的相互联系后,才能规划出合理,操作性强的布线布局。这一点我深有体会,当初布局时一味强调紧凑,想为后来的电路留出空间,结果造成了整体电路布线的疏密不均,大量导线集中在一块区域内,为日后的排查调试工作带来了巨大的工作量。
第三,要用模块化的思想来处理具体任务。所谓复杂,不过是简单的堆砌。整个系统的电路纷繁复杂,所以要用模块化的思想来拆分具体任务,之后再逐一解决。我将电路系统拆分为秒脉冲发生器,计数译码显示功能模块和整点报时蜂鸣器电路模块,化整为零,大大提高了设计效率。
在制作过程中,明显感觉到,知易行难。真正的工程远没有理想的设计模型那么简单。尤其是插线,极端需要细致耐心,剪线头时稍有疏忽,就容易造成接触不良,而对错面包板上的洞眼,更是令人欲哭无泪的差错。
在调试过程中,对排错的不易深有体会。经过不断摸索,总结出了一套流程。
一旦出现问题,第一,由现象分析问题的来源。第二,通过初步电位测试,缩小和确定故障的范围。第三,对照图纸,注意检查芯片各引脚的结线。第四,检查引脚的线头,芯片的引脚等是否存在接触问题。第五,改动后再次上电观察故障的表现情况有无变化。第六,当以上一切都不起作用时,向老师汇报电位测量结果,请教老师的经验,或者参照同学类似问题的结局方法。
通过这次课设的工程锻炼,我感到,行百里者半八十,面对浩大复杂的具体工程,一定要有信心,恒心,耐心和决心。打好基础,从小到大,由浅入深,从局部到整体,以弄清工作原理为第一要务,在这一基础上,小心谨慎,细致耐心地动手搭建。遇见问题要多观察,多思考,用逻辑分析和经验来分析解决问题。最后觉得,小小一个电子钟就有如此复杂的工作量,确实应该使用Proteus等电路电子设计仿真软件进行设计和仿真调试,这能极大地解放设计人员,减轻劳动量,提高工作效率和成品质量。
05101064
江一帆