《利用CPLD设计可调时数字钟.doc》由会员分享,可在线阅读,更多相关《利用CPLD设计可调时数字钟.doc(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-date利用CPLD设计可调时数字钟利用CPLD设计可调时数字钟装订线 数字电路课程设计 题目: 利用CPLD设计可调时数字钟 学 院 电子信息工程学院 专 业 学 号 姓 名 教 师 -基于CPLD数字时钟设计摘 要本次课程设计是用数字电路知识以及Maxplus软件进行的制作,首先理解电路原理图,然后进行了焊接,本次焊接增加自己的动手能力。然后对数字电路书又进行了复习,最后
2、应用Maxplus软件进行了编程。电路通过使用数字元件,来构成完成二十四小时的数字钟设计,并且将译码器和数据选择器配合使用来完成动态的显示输出。此外,外部控制开关用来控制电路,使得该电路可以完成保持、清零、快速校对时间等一系列的功能。本系统的难点在于EDA系统作图及最后系统优化的应用。尤其是小数点的显示控制,用一个或门,通过1Hz来控制第三个数码管的点显示,再通过一个与非门来控制第五个数码管的点显示,第五个数码管的点在整个脉冲阶段显示,而第三个数码管的点只有在低电平时显示,以达到结果是第五个数码显示管的点常亮,而第三个数码管的点以1Hz的频率闪烁。制作中经常遇到各种问题,如第一次用的七段译码器
3、显示六和九时,显示的不是很好,就重新自己做的译码器,让其显示的比较完美,而且也出现了制作的程序太大问题,最后不断的修改终于成功了。关键词:数字电路 Maxplus 七段译码器目 录一 总体设计方案11.1设计要求11.2 设计原理11.2.1 电源电路11.2.2振荡电路与分频电路11.2.3 显示电路2二 各模块说明42.1设计思路及步骤42.2总体框图42.3各模块说明52.3.1 BCD-7段译码显示电路52.3.2 时间计数器电路52.3.3 数据选择器电路92.3.4 译码器电路102.3.5 比较器电路102.3.6 按键消抖电路112.4数字钟电路总图12 三 课程总结133.1
4、遇到的问题及其解决办法133.2 收获与体会13 参考文献14一 总体设计方案1.1设计要求1、以数字形式显示时、分、秒的时间;2、要求手动校时、校分、校秒;3、调节时间时对应显示位以2Hz频率闪烁;4、时与分显示之间的小数点常亮;5、分与秒显示之间的小数点以1Hz频率闪烁;6、各单元模块设计即可采用原理图方式也可以用Verilog程序进行设计。1.2 设计原理1.2.1 电源电路 如图1.1示为实验所需的电源电路。 图 1.1 电源电路1.2.2振荡电路与分频电路晶体振荡器给数字钟提供一个频率稳定准确的32768Hz的方波信号,可保证数字钟的走时准确及稳定.分频电路采用T触发器对其分频,每经
5、过一个T触发器对其二分频,所以各点的分频倍数分别为:QD: 24 QE: 25 QF: 26 QG: 27 QH: 28 QI: 29 QJ: 210 QL: 212 QM: 213 QN: 214;此处采用的是32768Hz的晶振,故分频之后QF:512Hz、QI:64Hz、QN:2Hz。电路原理图如右图1.2所示。 图1.2 分频电路1.2.3 显示电路 计数器实现了对时间的累计以8421BCD码形式输出,选用显示译码电路将计数器的输出数码转换为数码显示器件所需要的输出逻辑和一定的电流.图 1.3 显示电路数码管是共阴数码显示管,当其控制端为“0”时,数码显示管显示。显示模块输入时钟频率为
6、512Hz,显示刷新频率约为85Hz。如图1.3示。1.2.4 CPLD电路原理图此原理图1.4的MODE和ADD分别控制校正位和其校正位进行加一校正。MODE共有七个状态分别对应六个数码管的校正和正常计数。图 1.4 实验原理图二 各模块说明2.1设计思路及步骤1 按原理图和元件插件图完成电路的焊接;2 拟定数字钟的组成框图,划分模块;3 对各单元模块电路进行设计与波形仿真;4 总体电路设计与仿真;5 程序下载与调试。计数器数据选择器译码器512显示位控制信号时间调节小数点控制按键消抖清零闪烁控制三进制计数六进制计数十进制计数2.2总体框图数字时钟总图图2.1 总体框图2.3各模块说明2.3
7、.1 BCD-7段译码显示电路图2.2 译码显示电路原理图工作原理:利用集成块7449实现译码功能,完成对应十进制信号在数码管上的显示。该电路仿真图如图所示:图2.3 译码显示电路仿真图2.3.2 时间计数器电路 利用7493连成一个六进制计数器,仿真正确后命名为cnt6。图2.4 六进制计数器电路原理图图2.5 六进制计数器仿真图 利用7493连成一个十进制计数器,仿真正确后命名为cnt10。图2.6 十进制计数器原理图图2.7 十进制计数器仿真图 利用7493连成一个三进制计数器,仿真正确后命名为cnt3。图2.8 三进制计数器原理图图2.9 三进制计数器仿真图 将三进制、六进制、十进制计
8、数器连接成计数器电路,如下图所示。图2.10 计数器电路原理图图2.11 计数器仿真图2.3.3 数据选择器电路参照数字电路设计讲义,连接数据选择器电路。图2.12 数据选择器电路图图2.13 数据选择器仿真图2.3.4 译码器电路参照数字电子技术基础中显示译码器真值表及逻辑表达式,连接译码器电路,以控制显示块显示09十个数字。图2.14 译码器电路原理图2.3.5 比较器电路图2.15 比较器电路原理图图2.16 比较器电路仿真图2.3.6 按键消抖电路64Hz消抖动模块时钟利用两个D触发器连成一个二位移位寄存器,用64Hz频率对key进行采样,依次寄存在二位移位寄存器中,若前后一致则结果为
9、这个值,若前后不一致则保持原结果。功能如下表所示:表 2-1第一D触发器第二D触发器结 果0000/11/0保持111图2.17 按键消抖电路原理图图2.18 按键消抖电路仿真图2.4数字钟电路总图 数码管显示控制电路工作原理:以512Hz的频率作为时钟脉冲,用六进制计数器为三八译码器提供六个不同状态,每个数码管的显示频率约为85Hz,观测到的结果为:数码管常亮。此电路的巧妙之处在于小数点的显示是用一个或门,通过1Hz频率来控制第三个数码管的小数点显示,再通过一个与非门来控制第五个数码管的小数点显示。第五个数码管的小数点在整个脉冲阶段显示,而第三个数码管的小数点只有在低电平时显示,故观察到结果
10、是第五个数码管常亮,而第三个数码管的小数点以1Hz的频率闪烁。图2.19 数字钟电路全图三 课程总结3.1遇到的问题及其解决办法焊接方面:1 元件安插和焊接的矛盾:若是把元件全部安插完毕再焊接,在焊接时管脚之间影响下烙铁,若是安插一个焊一个会影响效率。后来采用的方法是分步来,安插一部分焊接一部分。并且安插和焊接时先焊接较低的元件,然再焊较高元件;2 焊接时要注意元件与电路板的高度,管脚长度,避免虚焊和短路。我就是在焊接后试着接通电源,指示灯亮,过了几天接上电源却发现指示灯不亮了。后经查实是由于几处虚焊导致的。软件编程方面:1 学会maxplus2的基本使用方法,掌握了maxplus2的基本功能
11、及其在CPLD编程中原理及其发展应用。2 在对各个元件进行设计和摆放的时候,注意元件引脚之间的对应关系。3 通过对已知程序的改进,完成在初始状态下的自动计时功能。3.2 收获与体会通过利用CPLD设计可调时数字钟的数字电路课程设计课程,我又锻炼了动手能力,包括焊接技术,组装技术等。让我对焊接有了更为深入的了解。对于软件方面,我学会maxplus2的基本使用方法,掌握了maxplus2的基本功能及其在CPLD编程中原理及其发展应用。此外,我的心得体会总结如:1. 设计初期要考虑周到,否则后期改进很困难。应该在初期就多思考几个方案,进行比较论证,选择最合适的方案动手设计。总体设计在整个设计过程中非
12、常重要,应该花较多的时间在上面。2. 方案确定后,才开始设计。设计时,多使用已学的方法,如列真值表,化简逻辑表达式,要整体考虑,不可看一步,做一步。在整体设计都正确后,再寻求简化的方法。3. 在设计某些模块的时候无法把握住整体,这时可以先进行小部分功能的实现,在此基础上进行改进,虽然可能会多花一些时间,但这比空想要有效的多。4. 尽可能是电路连线有序,模块之间关系清楚,既利于自己修改,也利于与别人交流。如果电路乱的连自己都看不懂,那还如何改进和扩展。5. 很多难点的突破都来自于与同学的交流,交流使自己获得更多信息,开拓了思路,因此要重视与别人的交流。参考文献1数字电子技术基础简明教程(第二版) 余孟尝2数字钟制作 河北大学电子信息工程学院编