云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 基于DS1302与LCD1602的电子日历时钟的设计与实现 - 图文

基于DS1302与LCD1602的电子日历时钟的设计与实现 - 图文

  • 62 次阅读
  • 3 次下载
  • 2026/1/10 12:27:48

Lcd1602_Delay1ms(5); LCD1602_E = 0; }

#endif

/*******************************************************************************

* 函 数 名 : LcdWriteData * 函数功能 : 向LCD写入一个字节的数据 * 输 入 : dat * 输 出 : 无

*******************************************************************************/ #ifndef LCD1602_4PINS void LcdWriteData(uchar dat) //写入数据 {

LCD1602_E = 0; //使能清零

LCD1602_RS = 1; //选择输入数据 LCD1602_RW = 0; //选择写入

LCD1602_DATAPINS = dat; //写入数据 Lcd1602_Delay1ms(1);

LCD1602_E = 1; //写入时序

Lcd1602_Delay1ms(5); //保持时间 LCD1602_E = 0; } #else

void LcdWriteData(uchar dat) //写入数据 {

LCD1602_E = 0; //使能清零

LCD1602_RS = 1; //选择写入数据 LCD1602_RW = 0; //选择写入

LCD1602_DATAPINS = dat; //由于4位的接线是接到P0口的高四位,所以传送高四位不用改

Lcd1602_Delay1ms(1);

LCD1602_E = 1; //写入时序 Lcd1602_Delay1ms(5); LCD1602_E = 0;

LCD1602_DATAPINS = dat << 4; //写入低四位 Lcd1602_Delay1ms(1);

17

LCD1602_E = 1; //写入时序 Lcd1602_Delay1ms(5); LCD1602_E = 0; }

#endif

/*******************************************************************************

* 函 数 名 : LcdInit() * 函数功能 : 初始化LCD屏 * 输 入 : 无 * 输 出 : 无

*******************************************************************************/ #ifndef LCD1602_4PINS void LcdInit() //LCD初始化子程序 {

LcdWriteCom(0x38); //开显示

LcdWriteCom(0x0c); //开显示不显示光标 LcdWriteCom(0x06); //写一个指针加1 LcdWriteCom(0x01); //清屏

LcdWriteCom(0x80); //设置数据指针起点 } #else

void LcdInit() //LCD初始化子程序 {

LcdWriteCom(0x32); //将8位总线转为4位总线 LcdWriteCom(0x28); //在四位线下的初始化 LcdWriteCom(0x0c); //开显示不显示光标 LcdWriteCom(0x06); //写一个指针加1 LcdWriteCom(0x01); //清屏

LcdWriteCom(0x80); //设置数据指针起点 }

#endif

3.4 位定义

PIN口定义

sbit LCD1602_E=P2^7; sbit LCD1602_RW=P2^5; sbit LCD1602_RS=P2^6;//

---定义ds1302使用的IO口---// sbit DSIO=P3^4; sbit RST=P3^5; sbit SCLK=P3^6;

18

第四章 指标测试

4.1 测试仪器

测试如表2 所示。 序号 1 2 3 4 名称 PC机 单片机仿真软件 数字万用表 ISP在线下载线 表2 测试仪器

型号 Proteus、keil C DT9205B 4.2 硬件测试

可调电子日历的电路,焊接不可轻视,只要出于一处的错误,则会对检测造成很大的不便,对于各种锋利的引脚要注意处理,否则会刺破带有包皮的导线,则会对电路造成短路现象。

在电子日历的设计调试中遇到了很多的问题。回想这些问题只要认真多思考都是可以避免的,以下为主要的问题:

(1)单片机晶振不起振

(2)LCD1602液晶的VDD 与VSS 引脚接反了,当时也没接保护电阻,

电容,结果把液晶发热烧坏了。 解决:①:根据仪器的测试,发现电路引脚有接错的现象,重新焊接后晶振, 复位正常,程序能够下载。②:重新买了个液晶,把VDD与VSS重新接到 正确的引脚。

4.3 软件测试

电子日历是多功能的数字型,可以看当前日期,时间。在编写程序和调试时出现了较多的问题。最后经过多次的模块子程序的修改,一步一步的完成,最终解决了软件。

19

4.4 测试结果分析与结论

4.4.1 测试结果分析

(1).在测试中遇到单片机晶振不起振,首先使用试测仪对电路进行测试,观察是否存在漏焊,虚焊,或者元件损坏.

(2).LCD1602液晶不显示时间和日期,首先使用试测仪对电路进行测试,观察电路是否存在短路现象。然后查看程序是否正确无误,对程序进行认真修改。

4.4.2 测试结论

经过多次的反复测试与分析,可以对电路的原理及功能更加熟悉,同时提高了设计能力与及对电路的分析能力,同时在软件的编程方面得到更多的提高,对编程能力得到加强,同时对所学的知识得到很大的提高与巩固。

作品总结

在整个设计过程中,充分发挥人的主观能动性,自主学习,学到了许多没学到的知识,较好的完成了作品,达到了预期的目的。完了最初的设想。在电路焊接时虽然没什么大问题,但从中也知道了焊接在整个作品中的重要性,电路焊接过程中,不能心急,一个个慢慢来不能急于求成。反而达到事半功倍的效果。对电路的设计、布局要先有一个好的构思,才显得电路板美观、大方。程序编写中,由于思路不清晰,开始时遇到了很多的问题,经过静下心来思考,理清了思路,反而得心应手。通过做这次的毕业设计,我知道了做凡事要有一颗平常的心,不要想着走捷径,一步一脚印。也练就了我的耐心,做什么事都要有耐心。此次毕业设计中学到了很多很多东西,这是最重要的。总之,毕业设计让我的能力得到了全方位的提高。

致谢词

感谢学院,感谢老师再设计中给予我的帮助,给我一次难得煅炼的机会,使得我的动手能力和专业技能都有了很大的提高。

在设计和制作的过程中,我深切的体会到,实践的重要性,这一次的设计是对我所学知识的一次综合性检测,无论是动手能力还是理论知识运用能力都得到了提高,同时加深了我对网络资源的认识,大大提高了查阅资料的效率,使我有充足的时间投入到电路设计当中。在做作品的日子里得到了指导教师的悉心指导,在此向我的指导教师致以诚挚的谢意。并且感谢提供相关技术帮助的老师和同学,你们的支持和鼓励使我们对这次的作品完成有了信心和动力,也给了我很多无私的帮助和支持,我在此深表谢意。

20

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

Lcd1602_Delay1ms(5); LCD1602_E = 0; } #endif /******************************************************************************* * 函 数 名 : LcdWriteData * 函数功能 : 向LCD写入一个字节的数据 * 输 入 : dat * 输 出 : 无 *******************************************************************************/ #ifndef LCD1602_4PINS void LcdWriteData(uchar d

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com