四、设计心得
从5月23日拿到设计题目,我就想到了各个公共场合悬挂的电子时钟,可以显示年,月,日,星期,时,分,秒,很想知道它是怎么工作的,为我们的生活带来了这么大的方便。 于是赶紧看需要什么器件来完成这么复杂的功能,看到有DS1032,LCD显示器,还有
AT89C52于是就赶紧在网上搜有关DS1032的资料,没发现它有这么大本领,能自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度很高,提起了我很大的兴趣,赶紧看它与单片机的链接方法,以及如何进行初始化,它的引脚功能和使用时应该注意的问题,两个电源,一个主电源,一个备用电源,在SCLK的下降沿可以写入数据,DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,每个寄存器的读写都有自己的固定地址和取值范围。在初始化时,必须先设定其地址。
在看AT89C52时,结合我们学过的51单片机就很好理解了,功能几乎相近,而LED就是一个液晶显示器,用来显示DS1302的功能,这样一来就很好理解了。开始写程序,并用protus进行仿真,再加入程序,可是那个按键没有按理想中来,按键对显示的数据不起作用,赶紧就查原因,一个管脚接错了。
通过这次课程设计,对平时所学基础编程知识理解更加透彻,掌握了proteus的使用方法,从实际操作中认识到Proteus在仿真方面的巨大作用,它与keil的结合可以检测所编写的程序正确与否,两者结合是实现电子设计制作的初步阶段,可避免在实际的硬件操作过程中因为电路原理图或程序有误而造成的一系列麻烦。由于电子万年历的广泛应用,对其准确性要求越来越高,故本次设计在完成显示功能的设计上外加时钟调整程序使其更能满足要求。电路程序中使用很多delay指令,是为了使器件更好工作,正确的显示,但为此带来的
16
影响是运行速度很慢,由于程序过长调试时可先分开调试,由于时间问题本组只进行了总的调试调试遇到问题如上。因为平时学习不到位对知识理解不够深入,使其在刚开始分析题目遇到很大问题,虽然通过查阅不同资料,努力学习借鉴他人的编程方法最终在大家共同努力下完成任务但可能还存在一些不足,需要老师指出和做进一步修改。
在解决不懂得问题时,发现网络是一个很好的学习平台,利用前人的经验可以提高自己解决实际问题的能力,通过两个礼拜的课程设计,使我对所学知识进行了系统的复习和巩固。这次课程设计是一个团队的结果,增强了我们的团队意识,每个人的力量都是不容忽视的,在我们的共同努力下,成功完成实验。
17