教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 高等教育 >

万年历的设计与制作(基于单片机) - 图文(7)

来源:网络收集 时间:2026-08-23
导读: 电气与电子信息工程学院 课程设计报告 if(Adjust_Index==-1||Adjust_Index==0) Adjust_Index=7; Adjust_Index--; if(Adjust_Index==5) Adjust_Index=4;//跳过星期的调整,自行刷新 switch(Adjust_Index) { case 6:

电气与电子信息工程学院 课程设计报告

if(Adjust_Index==-1||Adjust_Index==0) Adjust_Index=7; Adjust_Index--;

if(Adjust_Index==5) Adjust_Index=4;//跳过星期的调整,自行刷新 switch(Adjust_Index) {

case 6: Write_LCD_Command(0x8f); //写‘N’ Write_LCD_Data(0x4e); break;

case 4: Write_LCD_Command(0x8f); //写‘Y’ Write_LCD_Data(0x59); break;

case 3: Write_LCD_Command(0x8f); //写'R' Write_LCD_Data(0x52); break;

case 2: Write_LCD_Command(0x8f); //写‘S’ Write_LCD_Data(0x53); break;

case 1: Write_LCD_Command(0x8f);

Write_LCD_Data(0x46); //写'F' break;

case 0: Write_LCD_Command(0x8f);

Write_LCD_Data(0x4d); //写‘M’ break; } } }

else if(K2==0&&Adjust_Index!=-1)//加 {

delayms(100); if(K2==0) {

while(!K2);

DateTime_Adjust(1); } }

else if(K3==0&&Adjust_Index!=-1)//减 {

delayms(100); if(K3==0) {

while(!K3);

DateTime_Adjust(-1); }

18

电气与电子信息工程学院 课程设计报告

}

else if(K4==0&&Adjust_Index!=-1)//确定 {

delayms(100); if(K4==0) {

while(!K4); SetDateTime(); Adjust_Index=-1;

Write_LCD_Command(0x8f); //去除标志位 Write_LCD_Data(0x20); } }

else if(K5==0&&Adjust_Index!=-1)//取消 {

delayms(100); if(K5==0) {

while(!K5); Adjust_Index=-1;

Write_LCD_Command(0x8f); //去除标志位 Write_LCD_Data(0x20); } } }

五、调试

1、建立工程和仿真图

(1)打开proteus软件,新建一个工程,然后在工作窗口内画好原理图并保存。 (2)打开keil软件新建一个工程,选择所用单片机的型号,然后新建一个文件保存为.c文件并添加到工程中去,开始写源程序,写好后编译生成Hex文件。 (3)将生成的Hex文件下载到单片机内,观察结果,并调试,观察数码管上是否有相应正确的变化。若结果不正确,思考问题的所在,修改源程序,继续调试,直到观察到正确的运行结果。

19

电气与电子信息工程学院 课程设计报告

2、keil软件调试结果

图7 C程序调试结果

3、proteus软件仿真结果

图8 仿真结果

20

电气与电子信息工程学院 课程设计报告

六、实物的组装与调试

1.实物的组装

由于班上每组同学设计题目,所以采取的是手工焊接。于是我自己画pcb板,可是一上午过去了,还是画不好,下午只好根据已画的pcb及原理图来对元器件进行摆放和布局,这对电路板最后的走线增添了一定的难度。

2、实物焊接

小小的板,在我们的不懈努力下终于焊好了。焊接电路如下图。

图9 焊接实物图

3、调试

电路焊接完成后,插上usb线,加上5v电压,只有电源供电的指示灯亮着,

而显示器没有任何反应。于是,开始排查电路中那个模块出现了问题。首先当然想到的是显示器总存在着虚焊的点。利用万用表,测着每个引脚与接地短的电压,发现了果然有几个点存在着虚焊现象。排除这一问题后,加上电压,显示器亮了,却没有显示日期。结果发现AT89C51芯片没有加载程序。将其改正后,电路基本上实现了我们所需的日期和温度的显示功能。

21

电气与电子信息工程学院 课程设计报告

当我们尝试着让每个键是否能正常调时时,发现全部按键按下没有什么反应。刚开始想着是否是按键出现了问题,利用万用表检测,发现按键工作状态是对的。最终将问题锁定在了74HC08芯片上,结果发现少接了一根线。接好后,按键都能正常调时了。经过不懈的努力我们的万年历终于做成功了。调试结果如下图:

图10 调试实物图

22

…… 此处隐藏:117字,全部文档内容请下载后查看。喜欢就下载吧 ……
万年历的设计与制作(基于单片机) - 图文(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/614745.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)