基于AT89C51单片机的电子表设计综述

上传人:最**** 文档编号:115521263 上传时间:2019-11-13 格式:DOCX 页数:13 大小:150.83KB
返回 下载 相关 举报
基于AT89C51单片机的电子表设计综述_第1页
第1页 / 共13页
基于AT89C51单片机的电子表设计综述_第2页
第2页 / 共13页
基于AT89C51单片机的电子表设计综述_第3页
第3页 / 共13页
基于AT89C51单片机的电子表设计综述_第4页
第4页 / 共13页
基于AT89C51单片机的电子表设计综述_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《基于AT89C51单片机的电子表设计综述》由会员分享,可在线阅读,更多相关《基于AT89C51单片机的电子表设计综述(13页珍藏版)》请在金锄头文库上搜索。

1、单片机原理及系统课程设计报告课程设计说明书课程:单片机应用技术课程设计 题目:基于AT89C51单片机的电子表设计 姓名: 学号 专业:机械设计制造及其自动化 班级:2011级 院系:工学院机械系 指导老师:朱煜钰 课程设计时间:2014.10.27至2014.11.10黄河科技学院课程设计任务书 工 学院 机械 系 机械设计制造及其自动化 专业 11 级班学号 姓名 指导教师 朱煜钰 题目: 基于AT89C51单片机的电子表设计 课程: 单片机应用技术课程设计 课程设计时间 2014年 10月27 日 至2014年11 月 10 日 共 2 周课程设计工作内容与基本要求(设计要求、设计任务、

2、工作计划、所需相关资料)(纸张不够可加页)1设计要求 利用AT89C51单片机作为微控制器,在数码管通过一个控制键转换来显示相应的时间和日期,能通过多个控制键用来实现时间和日期的调节。2. 设计任务与要求2.1系统硬件电路设计根据该系统设计的功能要求选择所用元器件,设计硬件电路。要求用Proteus绘制整个系统电路原理图。2.2软件设计根据该系统要求的功能进行软件设计,绘制整个系统的软件流程图;根据流程图编写程序并汇编调试通过;列出软件清单,软件清单要求逐条加以注释。2.3 Proteus仿真用Proteus对系统软硬件进行仿真调试并通过。2.4 编写设计说明书内容包括任务书、设计方案分析、硬

3、件部分设计、软件部分设计、调试结果整理分析、设计调试的心得体会等,字数不少于5000字;硬件部分设计要绘制整个系统电路原理图,对各部分电路设计原理做出说明;软件设计部分要(用visio2003画图软件)绘制整个系统框图及各部分的软件流程图,列出程序清单,逐条加以注释,并注明各程序功能块的功能。3工作计划 序号设计内容所用时间1布置任务及调研天3制作与调试天4撰写设计报告书2天合 计14天4主要参考资料单片机课程设计指导书 皮大能 北京理工大学出版社2012.78051单片机实践与应用 吴金戎 清华大学出版社2003.8单片机技术基础教程与实践 夏路易 电子工业出版社2008.1单片机原理及应用

4、张毅刚 高等教育出版社 2012.11基于Proteus的单片机系统设计与仿真实例 蒋辉平 机械工业出版社 2007.7 指导老师签字: 日 期:基于AT89C51单片机的电子表设计1.设计目的(1).将所学的单片机原理与系统设计中的相关的知识应用于实践;(2).掌握单片机应用系统主要环节的设计、调试方法;(3).培养创新意识,提高动手能力和分析问题、解决问题的能力。2.设计要求3.设计方案及原理3.1芯片选择方案 方案一: 采用8051芯片作为硬件核心,采用Flash ROM,内部具有4KB ROM 存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时

5、由于不具备ISP在线编程技术, 当电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片多次拔插会对芯片造成一定的损坏。 方案二:采用AT89C51,AT89C51是一种带4K字节FLASH存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由

6、于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器 。片内ROM全都采用Flash ROM,能以3V的超底压工作,同时也与MCS-51系列单片机完全该芯片内部存储器为8KB ROM 存储空间,同样具有8051的功能,且具有在线编程可擦除技术,对所下载的程序能够加密,比较安全。当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。所以选择采用AT89C51作为主控制系统.。3.2显示选择方案 方案一:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,显示文字比较适合,如采用

7、在显示数字太浪费,且价格也相对较高,所以不用。 方案二:采用LED数码管动态扫描,虽然LED数码管价格适中,但要显示多个数字所需要的个数偏多,功耗较大,所以也不用。 方案三:采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字、图形、显示多样,清晰可见,与普通数码管相比功耗较小,硬件连接简单。所以显示部分采用1602液晶。3.3 系统设计采用充电能的低功耗实时时钟电路DS1302。它可以对年、月、日、日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子表采用1602可以直观地显示数字,可以同时显示年、月、日、时、分、秒信息,还具有时间校

8、准等功能。电路采用AT89C51单片机,功耗小,能在3V的低压工作,电压可选用35V电压供电。还有矩正键盘及蜂鸣器。系统框图如图1所示。1602 LCD显示模块DS1302时钟实时控制模块AT8951 主控制器模块矩阵式键盘控制模块蜂鸣器闹铃提醒模块图1 系统框图4.系统设计原理 4.1时钟电路DS1302DS1302的引脚中Vcc1为后备电源,Vcc2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc

9、1时,DS1302由Vcc1供电X1和X2是振荡外接32.768KHz晶振。RST是复位/片选线,通过把RST输入置高电平来启动数据传送。RST输入有两种功能:一,RST接通控制逻辑,允许地址命令序列送入移位寄存器;二,RST终止单字节或多字节数据的传送。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电时,在大于Vcc等于2.5V之前,RST必须保持低电平。只有SCLK 为低电平时,才将RST置为高电平,I/O为串行数据输入端(双向)。SCLK始终是输入端。4.2 数据显示LCD1602

10、1602字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD。1602LCD的一般初始化(复位)过程:延时15mS;写指令38H(不检测忙信号);延时5mS;写指令38H(不检测忙信号);延时5mS;写指令38H(不检测忙信号);以后每次写指令、读/写数据操作均需要检测忙信号;写指令38H;显示模式设置写指令08H;显示关闭写指令01H;显示清屏写指令06H;显示光标移动设置写指令0CH;显示开及光标设置。4.3键盘模块矩阵式键盘的功能是通过按键调节年、月、日、时、分、秒,即实现校时功能和复位,在进行设定闹铃时可通过键盘输入设定时间。硬件连接图如图2所示。图2 硬件连接图5.流程

11、图系统的流程图如图3所示。图3 主程序流程图6.仿真结果运用Proteus软件对系统电路进行仿真,当长按键1后,可对电子表进行校时;当按下键2后,可以进行闹铃的设定,当设定时间与显示时间符合时,蜂鸣器响起。仿真结果如下图4所示。图4 仿真截图7总结在“电子表”的单片机课程设计中,通过查阅相关资料,以及现有的设计,体会了其中的思想。电子表校时模块简单的可以用一个多功能键和一个加一键来完成,由于刚学完单片机,为了把键盘的知识更好地运用,我选择了相对复杂一点的矩阵式键盘来完成。DS1302时间芯片也是我新学到的知识。这次课设中也对Visio、Proteus、Keil等一系列软件有了进一步的了解。8参

12、考文献1单片机课程设计指导书 皮大能 北京理工大学出版社2012.728051单片机实践与应用 吴金戎 清华大学出版社2003.83单片机技术基础教程与实践 夏路易 电子工业出版社2008.14单片机原理及应用张毅刚 高等教育出版社 2012.115基于Proteus的单片机系统设计与仿真实例 蒋辉平 机械工业出版社 2007.7附录 电子表设计程序清单#include#include LCD1602.h#include DS1302.h#define uchar unsigned char#define uint unsigned intsbit speaker=P24;bit key_fl

13、ag1=0,key_flag2=0; SYSTEMTIME adjusted;uchar sec_add=0,min_add=0,hou_add=0,day_add=0,mon_add=0,yea_add=0;uchar data_alarm7=0;/*键盘控制*/int key_scan() /扫描是否有键按下 int i=0;uint temp;P1=0xf0;temp=P1;if(temp!=0xf0)i=1;elsei=0;return i; uchar key_value() /确定按键的值uint m=0,n=0,temp;uchar value;uchar v43=2,1,0,5,4,3,8,7,6,b,a,9;P1=0xfe; temp=P1; if(temp!=0xfe)m=0;P1=0xfd;temp=P1;if(temp!=0xfd)m=1;P1=0xfb;temp=P1;if(temp!=0xfb)m=2;P1=0xf7;temp=P1;if(temp!=0xf7)m=3;P1=0xef;temp=P1;if(temp!=0xef)n=0;P1=0xdf;temp=P1;if(temp!=0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号