Cum1 时钟改标志为1Y 到31日否? Y 否? 置1 N N 日单元内容加1 时钟月修改标志为1否? Y 到12否? Y 置1 N N 月单元内容加1 Y 时钟年修改标志为1否? 到99年否? Y 清零 N 年单元内容加1 返回 图3.8 日期加1修改日期函数
第四章 系统调试
调试工作分硬件调试和软件调试两部分,调试方法介绍如下:
首先,硬件调试主要是先搭建硬件平台,然后利用万用表等工具对电路检查,最后应用程序进行功能调试。硬件调试比较费时,需要细心和耐心,也需要熟练掌握电路原理。
然后,可以直接应用一些编辑或仿真软件进行软件调试,比如单片机C51编辑软件Keil。该软件提供了一个集成开发环境uVision,它包括C编辑器、宏编辑器、连接器、库管理和一个功能强大的仿真调试器。通过编译、运行,可以检
20
查程序错误。但应用此方法,仍需要十分了解所使用元器件的工作方式和管脚连接方式。
还有一种方式,即应用仿真软件搭建电路的软件平台,再导入程序进行仿真调试。如果电路出错,可以在计算机上方便的修改电路,程序出错可以重新编辑程序,这种方法节时、省力,经济、方便。
在调试过程中,首先必须明确调试顺序。例如:本设计是在单片机系统基础上建立起来的,所以必须先确定单片机基础电路能否正常工作。为了正确显示时间,接下来还要确定显示电路能否正常工作,硬件调试的过程,也是软件调试的过程。
然后,要准备好调试的工具,硬件调试需要万用表、示波器等,软件调试一般需要诸如Keil等仿真编辑器,根据自己实际制作该万年历,将调试过程介绍如下:
4.1单片机基础电路测试
单片机基础电路包括电源、单片机、外部时钟震荡电路、复位电路和外部接
口电路。调试过程需要注意以下几点:
1. 检查电源是否完好。
2. 单片机电源要连接正确,并且保证AT89C51的31号引脚接高电平。AT89C51的31号引脚是外部程序存储器选择信号端,当该引脚为高电平时,单片机会一直从片内程序存储器内取指令。
3. 如果使用P0口做I/O口,要接上拉电阻。
4. 使用万用表排查电路中是否存在断路或者短路情况,焊接时容易出现管脚之间短路,所以在上电以前必须先排查电路。
4.2 显示电路调试
本设计的显示电路使用了共阳LED,LED段显与单片机P0口相连,位选接单片机P2口的低6位,位选用三极管9012驱动。
编写一段显示程序,烧录进单片机,检查好电源正负端。检查无误后上电,检查显示电路是否正确。
以下是编写的一段显示程序:上电后,6位数码管分别显示0~5。 #include \
21
#define uint unsigned int #define uchar unsigned char
uchar tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};0~9显示码
void delay_50ms(unsigned int t) //延时子程序 { unsigned int j; for(;t>0;t--)
for(j=6245;j>0;j--) ; }
void main() //主程序
{ uchar t; while(1) { P2=0xfe;
for(t=0;t<6;t++) { P0=tab[t;] P2<<=1; delay_50ms(10);
}}
4.3 DS1302电路调试
该电路包含DS1302芯片、主电源、晶振等部分。在与单片机连接的过程中需要注意以下几点:
1. 清楚DS1302与单片机连接的管脚。本设计定义为:DS1302的SCLK连接
P1.2,I/O连接P1.1,RST连接P1.0。 2. 注意电源正负极连接。
3. DS1302接32.768KHz的晶振。该晶振体型比较小,在焊接时要小心,注
意不要将晶振引脚弄断。同时也要尽量使晶振离DS1302的X1、X2引脚近距离焊接。
编写DS1302的时钟/日历程序,只要求能够正确显示时间。烧录进单片机,检查
22
结论
在整个设计过程中,发挥团队精神,分工合作,充分发挥人的主观能动性,自主学习,学到了许多没学到的知识,完成了对万年历的设计,达到了预期的目的。在最初的设计中,发挥“三个臭皮匠,顶个诸葛亮”的作用,相互学习、相互讨论、研究,完成了最初的设想。在电路焊接时虽然没什么大问题,但从中也知道了焊接在整个作品中的重要性,不能心急,一个个慢慢来不能急于求成,反而达到事半功倍的效果。程序编写中,由于思路不清晰,开始时遇到了很多的问题,尤其是在编写按键时,用了很多种方法,由于按键比较少,在哪一位的切换功能修改上走了很多的弯路,经过静下心来思考,理清了思路,终于完成了它。在此次设计中,知道了做凡事要有一颗平常的心,不要想着走捷径,一步一脚印。也练就了我们的耐心,做什么事都要有耐心。此次设计让我学到了很多很多东西,这是最重要的。
23
致谢
毕业设计的完成,为我的大学学习生活画下了最后一笔。
在论文完成之际,我要特别感谢我的指导老师的热情关怀和悉心指导。在设计的过程中,无论是在设计思路,还是在论文的研究方法以及成文定稿方面,我都得到了他悉心细致的教诲和无私的帮助,特别是他严谨的教学精神以及一丝不苟的工作作风将会使我终生受益,在此表示真诚地感谢和深深的谢意。 在论文的写作过程中,也得到了许多同学的支持和帮助,给予了我很多宝贵的意见,在此一并致以诚挚的谢意。 感谢所有关心、支持、帮助过我的良师益友。
最后,我要感谢那些曾给我授过课的每一位老师,是你们教会我专业知识。在此,我再说一次谢谢!谢谢大家!!!。
24