万年历数码管显示设计及键盘控制设计final

合集下载

电子万年历系统设计方案

电子万年历系统设计方案

据指针12SO 字节SRAM~1L8 16M2>64k宇竹闪存2k・sic字节ISP引导码P08051 徴处理器四个&隹并行瑞口P1/ETROM A/DD白怡flash石加价P2 nP40—P43四个附电子万年历系统设计方案1.1 STC89C52 简介STC89C52完全兼容MCS-51还有新的功能,比如新增两级中断优先级,多一个外中断,置EEPRO,M512B存等。

还支持ISP下载,不用编程器,只要一个MAX23和一些廉价的元件就能写程序,可擦写10万次。

比51起最大的优点能支持在线下载,在线烧写程序,而不必专门买昂贵的编程器,只需要ISP下载线就可以了。

1.2 性能参数STC单片机比51单片机性能有以下优越性:7图(1)高抗静电(ESD), 6000伏静电测试,直接打在芯片管脚上,安然无恙T2/P1. 0T2EX/PL 1P1.2PL 3PL. 4P1. 5Pt 6Pl. 7RsrRXLVP3 0TXD/P3, 1 INTO/F3. 2 而1 /P3, 3T0/P3. 4I1./P5. 5WP3. 6R^/PS. 7XTAL2XT Allvss 140239338437536635—34S339 -3210 p3111 O301122913281142715261625117241S23192212021VCCPO.0 ADO1 PO.1/ADL JPO. 2PO. 3 鱼D3FO. 4. AD I7■■■■I P2.4 A12 _] P2 3,A111 P2.2 1:J二I P2, 1/-A9 二IP2. 0 AS⑵超强抗干扰,轻松过2KV/4KV快速脉冲干扰(EFT)。

⑶超强加密,性能良好。

⑷STC 5V单片机,宽电压,5V - 3.8V给复位信号,正常工作。

(5) STC单片机,Power直接在用户系统上用ISP在线下载方式,将用户程序⑹下载进STC单片机Down掉电时功耗<0.1uA(C版本)。

带温度显示的万年历_数码管显示(附电路图和源代码)

带温度显示的万年历_数码管显示(附电路图和源代码)

设计报告设计任务:设计一个智能化万年历时钟电路,LED数码管作为电路的显示部分,按钮开关作为调时部分,通过与单片机连接数码管动态显示年、月、日、时、分、秒、星期、温度。

并能准确计算闰年闰月的显示。

设计要求:通过与单片机连接数码管动态显示年、月、日、时、分、秒、星期等功能,并能准确计算闰年闰月的显示,三个个按钮连接P3.0、P3.1、P3.2可以精确调整每一个时间数值,通过对所设计的万年历时钟电路进行实验测试,达到了动态显示时间,随时调整时间等技术所连线路和单片机接口仿真图如图3所示:图3 仿真按键4)温度采集部分:DS18B20温度传感器,测温范围-55℃~+125℃,固有测温分辨率0.5℃。

独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。

DS18B20的采集数据通过DQ传入单片机,单片机读取数据后将数据输出!如图所示:程序如下:ReadOneChar(void){unsigned char i=0;// 定义i用于循环unsigned char dat = 0;// 读取的8位数据for (i=8;i>0;i--)//8次循环{DQ = 0;// 拉低DQ总线开始读时序dat>>=1;// dat左移一位DQ = 1; //释放DQ总线if(DQ)// 如果DQ=1,执dat|=0x80;(0x80即第7位为1,如果DQ为1,即读取的数据为1,将dat的第7为置1,然后dat>>=1,循环8次结束,dat 即为读取的数据)//DQ=0,就跳过dat|=0x80;Tdelay(4);// 延时以完成此次读时序,之后再读下一数据}return(dat); 返回读取的dat}//写一个字节WriteOneChar(unsigned char dat){unsigned char i=0;//for (i=8; i>0; i--)//{DQ = 0;//DQ = dat&0x01;//Tdelay(5);//延时以完成此次读时序,之后再读下一数据DQ = 1;//dat>>=1;//}}//读取温度ReadTemperature(void){unsigned char a=0;unsigned char b=0;unsigned int t=0;float tt=0;//Init_DS18B20();WriteOneChar(0xCC);// 写指令,跳过ROM,WriteOneChar(0x44);// 启动温度转换Init_DS18B20();WriteOneChar(0xCC);// 写指令,跳过ROM,WriteOneChar(0xBE);// 写指令,读暂存存储器a=ReadOneChar();//读低8位b=ReadOneChar();//读高8位t=b;//t<<=8;//t=t|a;//tt=t*0.0625;//t= tt*10+0.5;//return(t); //获得0.01°C 的精度并返回}LED数码管的选择LED数码管分为共阴和共阳两种,以利用STC89C51的P0口作为LED显示的数据部分,以P2口的七个口作为显示部分的位选,通过三八译码器和4-16译码器扩展为17位的位选分别接在一个四位数码管和13个数码管的位选部分。

多功能万年历毕业设计

多功能万年历毕业设计

多功能万年历毕业设计多功能万年历毕业设计在现代社会,人们对时间的管理变得越来越重要。

为了更好地规划和安排生活,人们需要一个方便实用的工具来帮助他们追踪日期、计划活动和提醒重要事件。

在这个背景下,我决定设计一个多功能的万年历,以满足人们对时间管理的需求。

首先,我的多功能万年历将具备传统日历的基本功能,包括显示年、月、日、星期和节假日。

用户可以通过触摸屏幕或旋转按钮来切换日期和月份,方便快捷。

同时,为了满足不同用户的需求,我还将提供多种显示模式,例如数字模式、文字模式和图标模式,用户可以根据自己的喜好选择合适的显示方式。

其次,我的万年历还将配备提醒功能。

用户可以设置重要的事件或活动,并在指定的日期和时间收到提醒。

这将帮助人们更好地规划和安排生活,不再错过重要的事情。

同时,为了提高用户体验,我还将为提醒功能设计多种提醒方式,例如声音、震动和闪光灯,用户可以根据自己的喜好选择合适的提醒方式。

除了基本的日期和提醒功能,我的多功能万年历还将提供一些额外的实用功能。

首先,它将配备天气预报功能,用户可以实时查看当地的天气情况,以便更好地安排出行和活动。

其次,它还将具备健康管理功能,用户可以记录自己的健康数据,例如体重、血压和运动情况,以便更好地掌握自己的健康状况。

此外,我的万年历还将提供备忘录功能,用户可以随时记录重要的事项和想法,方便日后查看和回顾。

为了使我的多功能万年历更加实用和便捷,我还将设计一个与手机或电脑的同步功能。

用户可以通过无线连接将万年历与手机或电脑同步,以便更好地管理和分享自己的日程安排和健康数据。

这将使用户可以随时随地访问自己的日历和数据,无需携带额外的设备。

总的来说,我的多功能万年历将成为人们生活中不可或缺的工具。

它不仅具备传统日历的基本功能,还提供了提醒、天气预报、健康管理和备忘录等实用功能。

通过与手机或电脑的同步,它将帮助人们更好地规划和安排生活,提高工作和生活的效率。

我相信,这个多功能万年历的毕业设计将为人们的时间管理带来全新的体验。

多功能电子万年历的设计与实现

多功能电子万年历的设计与实现

多功能电子万年历的设计与实现
随着科技的不断发展,电子产品也在逐渐普及和多样化。

在日常生活中,万年历是人们生活和工作中不可或缺的一部分。

作为较为重要的时间管理工具之一,电子万年历也不断地更新升级,以更好地满足人们多方面的需求。

设计与实现多功能电子万年历,方法有很多,但首先要明确该产品的目标群体以及设计的功能。

在考虑该产品的功能时,应从常见的日常生活中的需求出发,包括:复杂的时间操作、跨时区时间计算、任务提醒、文本存储、闹钟等。

同时,还应该注意产品的造型、操作界面以及用户体验的设计。

基于以上需求和目标,多功能电子万年历应该具备以下几点:
1. 多时区显示:可以根据不同时区进行时间转换,并将不同时区的时间分别显示在时钟面板上。

2. 日历显示:显示公历、农历以及节气等数据,并能够根据用户需要进行时间计算。

3. 任务提醒:支持用户设置任务提醒时间,并能够提前提醒用户。

4. 文本存储:支持文本信息的输入、存储与浏览功能。

5. 闹钟提醒:支持多个闹钟设置,并能够设置重复提醒。

6. 界面及造型设计:应该使界面简洁明了,并且外形要美观实用。

在实现部分,多功能电子万年历应该采用微控制器作为主控制单元,并应有充电电池可供不间断使用,同时也需要在产品设计阶段充分考虑硬件接口设计,以方便用户进行新的功能扩展和升级。

总之,对于多功能电子万年历的设计与实现而言,光有我们想到的不足以满足用户的多样化需求,必须在产品的设计和制造过程中充分考虑到人们的日常实际需求,这样才能真正的得到用户的青睐,达到产品的最终目标。

基于单片机的电子万年历的设计与制作

基于单片机的电子万年历的设计与制作

郑州航空工业管理学院毕业论文(设计)题目基于单片机的电子万年历的设计与制作二О一三年五月二十三日摘要单片机应用技术飞速发展,从导弹的导航装置到飞机上各种仪表的控制,从计算机的网络通讯与数据传输到工业自动化过程的实时控制和数据处理,以及生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。

单片机是集CPU、RAM、ROM 、定时、计数和多种接口于一体的微控制器。

它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。

本文通过对一个基于单片机的能实现万年历功能电子时钟的设计,系统由主控制器STC89C52为控制中心,DS12C887产生时钟,DS18B20产生温度,12864液晶显示对日期、时间等进行显示,按键可以设置时间、闹钟等。

能实现时钟、日历、时间和温度显示的功能。

今后万年历将会朝着精准度更高,外观更加美丽,价格更加实惠的方向发展,并且将会出现更多的辅助功能。

关键词:单片机,农历查询,万年历,温度显示ABSTRACTAs the rapid development of Single-chip Microcomputer Application technology, from the navigation device of missile to the various instruments on the aircraft control and from computer communication network and data transmission to industrial real-time automation process control and data processing, as well as the extensive use of the smart card and electronic pets in live, All of this is inseparable from the microcontroller. SCM is set to CPU, RAM, ROM, timing, counting and multiple interfaces in one microcontroller. It has the advantages of small volume, low cost, strong function, widely used in smart industries, and industrial automation.This paper designed a electronic clock which can achieve calendar function based on microcontroller, the system consists of main controller STC89C52, clock circuit, display circuit, DS12C887circuit, and a reset circuit components,the main control system as the control center, DS12C887 generates a clock, DS18B20 generates temperature, a 12864 LCD display the date and time, the key can set the time, alarm clock, achieved the clock calendar and time display function.In the future, the calendar will be more accurate, look more beautiful; more affordable prices of the direction of development, and will appear more auxiliary function.Keywords: Monolithic single-chip,lunar calendar demand, perpetual calendars display temperature目录摘要 (I)ABSTRACT (II)第1章绪论 (1)1.1 课题的背景 (1)1.2 电子万年历的发展 (1)1.3 电子万年历设计 (1)第2章设计要求与方案论证 (3)2.1 设计要求 (3)2.2 方案论证 (3)2.2.1 控制部分方案设计 .......................................... .32.2.2 显示部分的设计 ........................................... ..42.2.3 单片机芯片的选择方案和论证 (4)2.2.4 时钟芯片的选择方案和论证 (4)2.2.5 温度传感器的选择方案和论证 (5)2.2.6 电源的选择方案 (5)第3章硬件设计 (6)3.1 电路的设计框图 (6)3.2 主要单元电路的设计 (6)3.2.1 单片机主控电路设计 (6)3.2.2 时钟振荡电路设计 (8)3.2.3 复位电路设计 (9)3.2.4 温度传感器电路设计 (9)3.2.5 时钟电路设计 (12)3.2.6 显示电路设计 (13)3.2.7 按键电路设计 (16)3.2.8 报警电路设计 (16)第4章软件设计 (17)4.1 程序流程图 (17)4.1.1 主程序流程 (17)4.1.2 时间调整程序流程图 (18)4.1.3 时钟芯片读写程序流程 (20)4.1.4 温度测量元件控制程序流程 (20)4.1.4 公历转换成农历的基本原理 (21)4.2 操作与调试 (22)4.2.1 软件调试 (22)4.2.2 万年历实物 (23)总结与展望 (26)致谢 (27)参考文献 (28)附录一:系统硬件原理图 (29)附录二:元器件清单 (30)附录三:设计程序 (31)第1章绪论1.1 课题的背景随着社会的发展和科技水平的提高,人类获得和计算时间的方法,历经观天阳、摆钟到现在电子钟,经过不断发展和创新,计时的精度越来越准确。

多功能万年历毕业设计(终稿)

多功能万年历毕业设计(终稿)

目录引言 (2)1 系统功能与方案论证 (2)1.1系统功能 (2)1.2 系统基本方案选择和论证 (2)1.2.1 单片机芯片的选择方案和论证 (2)1.2.2 显示模块选择方案和论证 (3)1.2.3 时钟芯片的选择方案和论证 (3)1.2.4 温度传感器的选择方案与论证 (4)1.3 电路设计最终方案决定 (4)2 系统的硬件设计与实现 (4)2.1 电路设计框图 (4)2.2 系统硬件概述 (5)2.3 各系统电路及工作原理 (5)2.3.1 AT89S52单片机最小系统设计 (5)2.3.2 时钟电路模块的设计 (7)2.3.3 温度采集电路的设计 (8)2.3.4 LCD1602液晶显示模块设计 (8)2.3.5 电源电路 (10)2.3.6 闹钟电路设计 (10)2.3.7 键盘输入电路 (11)3 软件设计 (11)3.1 主程序框图 (12)3.2 DS1302时间处理 (12)3.3 环境温度采集 (15)3.4 键盘扫描 (15)3.5 音乐播放 (15)3.6 公历转农历 (15)结束语 (17)参考文献 (18)附录 (19)附录A 程序 (19)附录B 原理图 (41)致谢 (41)多功能万年历的设计摘要:本设计采用了以广泛使用的单片机技术为核心,软硬件结合,使硬件部分大为简化,提高了系统稳定性,并采用LCD显示电路、键盘电路,使人机交互简便易行,此外还结合音乐闹铃电路、温度采集电路和供电电路。

本方案设计出的万年历可以显示日期、时间、温度、农历,并且设置了音乐闹铃功能。

该万年历可以应用于一般的生活和工作中,也可以通过改装,提高性能,增添新功能,从而给人们的生活和工作带来方便。

关键词:万年历;A T89S52;LCD1602;时钟日历芯片DS1302;音乐闹钟The Multi-functional Calendar DesignnaAbstract: This design has adopted by the extensive use of single chip microcomputer as the core. Hardware and software combination make the hardware parts greatly simplified and improve the stability of the system.The use of LCD display circuit, keyboard circuit makes the information exchange simple. In addition, the design is combined with music alarm circuit, temperature acquisition circuit and power supply circuit. It can show a calendar date, time, temperature, the lunar and set up music alarm function. On one hang the calendar can be applied to general life and work, on the other hang, it can improve performance by modification to add new functions, so that it can bring more convenience to people's life and work.Key words: calendar;AT89S52;LCD1602; clock calendar chip DS 1302; music alarm clock.引言电子万年历是实现对年、月、日、时、分、秒数字显示的计时装置,广泛用于个人、家庭、车站、码头、办公室、银行大厅等场所,成为人们日常生活中的必需品。

数字万年历课程设计报告

数字万年历课程设计报告

数字万年历课程设计报告课程名称:微机原理课程设计题目:万年历摘要随着电子技术的迅速发展,特别是随大规模集成电路出现,给人类生活带来了根本性的改变。

由其是单片机技术的应用产品已经走进了千家万户。

电子万年历的出现给人们的生活带来的诸多方便。

本文首先描述系统硬件工作原理,并附以系统结构框图加以说明,着重介绍了本系统所应用的各硬件接口技术和各个接口模块的功能及工作过程,其次,详细阐述了程序的各个模块和实现过程。

本设计以数字集成电路技术为基础,单片机技术为核心。

本文编写的主导思想是软硬件相结合,以硬件为基础,来进行各功能模块的编写。

本设计是一种基于STC89C51单片机控制,DS1302报时的数字时钟设计。

它具有多项显示和控制功能。

能用LCD实时显示当前年、月、日、星期、时间;可对时间进行调整;具有调整时间和日期功能。

本设计通过一个基于单片机的能实现万年历功能电子时钟的设计,从而达到学习、了解单片机相关指令在各方面的应用。

系统由主控制器AT89C51、时钟电路DS1302、显示电路、按键电路和复位电路等部分构成,能实现时钟日历显示的功能,能进行时、分、秒的显示。

关键词:STC89C52单片机、LCD液晶显示、DS1302时钟芯片目录一、设计任务与要求 ........................................................................... - 6 -1.1 设计任务 .............................................................................................. - 6 -1.2 设计要求 .............................................................................................. - 6 -1.3 发挥部分 .............................................................................................. - 6 -二、方案总体设计 ..................................................................................... - 7 -2.1 显示部分 .............................................................................................. - 7 -2.2 时钟信号的选择 .................................................................................. - 8 -2.3 总体方案 .............................................................................................. - 8 -三、硬件设计 ..................................................................................... - 10 -3.1 单片机最小系统 ................................................................................ - 10 -3.2 DS1302时钟电路............................................................................... - 17 -3.3 LCD液晶显示模块............................................................................ - 19 -3.4 按键电路 ............................................................................................ - 21 -3.5 电源指示灯部分 ................................................................................ - 25 -四、软件设计 ..................................................................................... - 26 -4.1 主程序流程图显示 ............................................................................ - 26 -4.2 时间设定程序流程图 ........................................................................ - 27 -五、系统仿真与调试 ......................................................................... - 29 -5.1 Proteus仿真软件简介 ....................................................................... - 29 -5.2 仿真及实物 ........................................................................................ - 31 -六、设计总结 ..................................................................................... - 34 -七、参考文献 ..................................................................................... - 35 -一、设计任务与要求1.1 设计任务基于52单片机的DS1302万年历;1.2 设计要求基于52单片机,利用DS1302时钟芯片生成万年历,使用液晶显示年月日时分秒,显示值可通过按键修改。

毕业设计(论文)-基于MCS-51的万年历设计

毕业设计(论文)-基于MCS-51的万年历设计

毕业设计(论文)-基于MCS-51的万年历设计1 引言1.1 万年历的背景与意义万年历作为一种常见的时间计数工具,被广泛应用于日常生活和工业生产中。

随着电子技术的飞速发展,电子万年历以其准确、方便、易操作等特点逐渐取代了传统的机械万年历。

基于MCS-51单片机的万年历设计,不仅满足了人们对时间精确计量的需求,同时也为单片机技术在时间测量领域的应用提供了新的思路。

1.2 MCS-51单片机的介绍MCS-51单片机是美国Intel公司推出的一种高性能的8位单片机,具有较高的性价比、丰富的指令集和灵活的I/O端口。

由于其结构简单、易于编程和扩展,MCS-51单片机被广泛应用于工业控制、家用电器、智能仪表等领域。

1.3 论文结构及内容安排本文主要分为七个章节,首先介绍万年历的背景与意义以及MCS-51单片机的基本情况;其次,阐述万年历的原理与设计要求,并提出基于MCS-51单片机的万年历设计方案;接着,详细介绍MCS-51单片机的硬件设计和软件设计;然后,进行系统调试与性能测试;在此基础上,探讨万年历的实际应用与拓展;最后,总结全文并指出创新与不足之处,展望未来的研究方向。

2. 万年历的原理与设计2.1 万年历的基本原理万年历是一种可以显示公历日期、时间,并且可以自动调整闰年和平年的日历。

它的核心是通过算法处理时间的流逝,计算出当前的日期。

基本原理涉及以下几个核心概念:•时间单位:秒、分、时、日、月、年•时间算法:通过累计秒数,进行时、日、月、年的进位处理•闰年规则:四年一闰,百年不闰,四百年再闰2.2 万年历的设计要求在设计万年历时,需要遵循以下要求:•准确性:确保时间显示准确无误•可靠性:系统稳定运行,适应不同的环境条件•易用性:用户界面友好,操作简便•经济性:在满足功能要求的前提下,尽可能降低成本2.3 基于MCS-51单片机的万年历设计方案基于MCS-51单片机的万年历设计主要包括以下几个部分:2.3.1 时间计算模块利用单片机内部的定时器,以秒为单位递增计数,通过编写中断服务程序来处理时间进位,实现时、分、秒的计算。

基于STM32单片机的万年历设计毕业设计论文

基于STM32单片机的万年历设计毕业设计论文

万年历是一种可以显示年、月、日、星期的电子设备,广泛应用于日常生活和办公场所。

本文将介绍一个基于STM32单片机的万年历的设计思路和实现过程。

首先,我们需要明确设计目标。

在这个项目中,我们的目标是使用STM32单片机开发一个功能齐全、易于操作的万年历。

具体地说,这个万年历应该能够显示当前的年、月、日和星期,并且能够进行日期的加减操作,同时应该具备一些辅助功能如闹钟设置、倒计时等。

接下来,我们需要进行硬件设计。

首先需要选择适当的显示屏,比如常见的LCD或OLED屏幕。

然后,我们需要选择合适的按键和外部触发器,用于用户的交互输入。

同时,还需要添加一些必要的接口,如USB接口用于数据传输和维护。

在软件设计方面,我们需要定义合适的数据结构来存储日期、时间、闹钟等信息。

同时,需要编写相应的程序来实现日期的显示和更新、日期的加减、闹钟的设置等功能。

在实现倒计时功能时,我们可以使用定时器中断来实现精确的计时。

此外,为了提高用户体验,我们可以添加一些额外的功能。

比如,我们可以为万年历设计一个简洁美观的用户界面,考虑使用图形库绘制用户界面元素。

同时,可以添加一些实用的功能如温湿度监测、天气预报等。

最后,在整个开发流程结束后,我们需要进行集成测试和调试,确保万年历的各项功能正常运行。

并且,我们还可以考虑为万年历添加一些优化和改进措施,如增加存储容量、优化节能技术等。

综上所述,基于STM32单片机的万年历设计主要涉及硬件设计和软件设计两个方面。

通过精心的设计和合理的实现,我们可以开发出一款功能丰富、易于使用的万年历产品,满足用户的各种需求。

单片机课程设计—万年历[1]

单片机课程设计—万年历[1]

郑州轻工业学院软件学院单片机与接口技术课程设计总结报告设计题目:电子万年历学生:系别:专业:班级:学号:指导教师:2021年12月16日设计题目:电子万年历设计任务与要求:1、显示年月日时分秒及星期信息2、具有可调整日期和时间功能3、增加闰年计算功能方案比拟:方案一:系统分为主控制器模块、显示模块、按键开关模块,主控制模块采用AT89C52单片机为控制中心,显示模块采用普通的共阴LED数码管,键输入采用中断实现功能调整,计时使用AT89C52单片机自带的定时器功能,实现对时间、日期的操作,通过按键盘开关实现对时间、日期的调整。

方案二:系统分为主控模块、时钟电路模块、按键扫描模块,LCD显示模块,电源电路、复位电路、晶振电路等模块。

主控模块采用AT89C52单片机,按键模块用四个按键,用于调整时间,显示模块采用LCD1602,时钟电路模块采用DS1302时钟芯片实现对时间、日期的操作。

两个方案工作原理大致相同,只有显示模块和时钟电路不同。

LED数码管价格适中,对于数字显示效果较好,而且使用单片机的端口也较少; LCD1602液晶显示屏,显示功能强大,可以显示大量文字、图形,显示多样性,清晰可见,价格相对LED数码管来说要昂贵些,但是基于本设计显示的东西较多,假设采用LED数码管的话,所需数码管较多,而且不利于控制,因此选择LCD1602作为显示模块。

DS1302是一款高性能的实时时钟芯片,以计时准确、接口简单、使用方便、工作电压范围宽和低功耗等优点,得到广泛的应用,实时时钟有秒、分、时、星期、日、月和年,月小于31天时可以自动调整,并具有闰年补偿功能,而且在掉电时能够在外部纽扣电池的供电下继续工作。

单片机有定时器的功能,但时间误差较大,且需要编写时钟程序,因此采用DS1302作为时钟电路。

比照以上方案,结合设计技术指标与要求我们选择了方案二进行设计。

逻辑总框图:该电子万年历的总体设计框图如图(1)所示。

毕业设计---基于单片机的多功能电子万年历的设计

毕业设计---基于单片机的多功能电子万年历的设计

基于单片机的多功能电子万年历的设计摘要随着科技的快速发展,自从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。

本文主要介绍了基于单片机的智能电子万年历的研制,该万年历能够实时显示公历年、月、日、时、分、秒,以及对应的农历日期、24节气、天干地支、闹铃功能,同时还能够实时测取环境温度。

本系统的硬件部分主要由A VR单片机、时钟芯片、温度传感器等部件组成,文中给出了详细的硬件设计实现及相关电路图;软件部分主要包含公历转农历的算法设计模块、显示模块、时间的读取、温度的检测模块,按键的扫描输入模块等,文中给出了系统的软件程序流程图及各功能模块的软件程序清单,最后介绍了整体系统的设计实现、仿真及调试过程,给出了下一步的改进方案等。

关键词:单片机;液晶技术;万年历;时钟芯片Design of Multifunctional digital Perpetual Calendar Based on MCUAbstractWith the development of technology,Since the concept of the sun, Baizhong, andnow the electronic bell,human beings continue to study and constant innovation record。

This paper-based Microcontroller Development of Intelligent electronic calendar, The calendar can display real-time in the calendar year, month, day, hours, minutes and seconds,a nd the correspond ing date of the Lunar New Year, 24 Solar Terms,at the same time also to real-time measurement from the ambient temperature,In addition to the user through the keyboard input years of history,for the correspond ing period of the Lunar.The system hardware from some of the major A VR microcontroller, a number of digital control, decoder, the clock chip,temperature sensors and other components,the paper gives a detailed design and implementation of hardware and related circuit;Software contains some of the major Lunar calendar to the algorithm design module,dynamic digital display modules,time to read,temperature detection module,Press enter the scanning module.In this paper, the system software modules and flow chart of the list of software programs,Finally, the realization of the overall system design, simulation and debugging process, the next step is the improvement programmes.Keywords:MCU;crystal technology;Calendar;Clock chip目录引言 (1)第1章绪论 (2)1.1课题的背景与意义 (2)1.2 数字万年历的现状与发展 (2)1.3 论文的主要工作及章节安排 (3)1.4 本章小结 (3)第2章方案论证比较.............................................................................. (4)2.1 多功能数字万年历系统概述 (4)2.2计时方案 (4)2.3温度检测方案 (5)2.4显示方案 (5)2.5本章小结 (5)第3章系统硬件设计 (6)3.1 主控制器ATmega16 单片机介绍 (6)3.2 时钟电路DS1302 (6)3.3 温度检测DS18B20 (7)3.4 动态显示 (8)3.5 键盘接口 (8)3.6 语音闹铃模块 (8)3.7 电源设计 (9)3.8本章小结 (11)第4章系统软件设计 (12)4.1 公历计算显示程序设计 (13)4.1.1 DS1302 内部寄存器 (13)4.1.2 时间读取程序设计 (15)4.2 农历转换程序设计 (16)4.2.1 公历转农历算法研究 (16)4.2.2 干支纪年简介 (18)4.2.3 公历转农历程序 (18)4.3 温度测量程序设计 (20)4.3.1 DS18B20 的测温原理 (20)4.3.2 温度程序 (21)4.4 二十四节气算法研究 (23)4.5系统仿真 (24)4.6本章小结 (25)结论与展望 (26)致谢 (27)参考文献 (28)附录 A 电子万年历原理图 (29)附录 B 外文文献与译文 (30)英文原文: (30)中文译文: (33)附录 C 参考文献题录及摘要 (35)附录 D 电子万年历源程序 (37)插图清单图2-1 数字万年历系统框图 (4)图3-1 DS1302与ATmega16连接图 (7)图3-2 DS18B20与AtMEGA16连接图 (8)图3-3 报时电路 (9)图3-4 稳压电源原理图 (10)图3-5 电源电路 (10)图4-1 系统程序流程图 (13)图4-2 公历程序流程图 (14)图4-3 DS18B20测温原理 (21)表格清单表3-1 LCD12864显示内容 (8)表4-1 DS1302的寄存器及其控制字 (14)表4-2 RS位配置 (15)引言人类的日常生活离不开时间,任何具有周期性变化的自然现象都可以用来测量时间。

单片机万年历毕业设计

单片机万年历毕业设计

单片机万年历是一种非常实用的电子设备,它可以准确地显示日期和时间,并且可以自动调整闰年和月份的天数。

在现代社会,随着人们生活水平的提高和科技的发展,电子设备在人们的日常生活中发挥着越来越重要的作用。

在这种背景下,单片机万年历应运而生,它不仅可以帮助人们准确地了解日期和时间,还可以提醒人们重要的日程安排。

单片机万年历的设计原理是通过单片机的控制,实现对时钟芯片的读取和控制,从而实现准确的时间显示。

同时,通过编程控制,还可以实现闰年和月份天数的自动调整功能。

为了实现更加精确的时间显示,可以通过连接网络进行时间同步,从而保证万年历的准确性。

单片机万年历的设计需要考虑多个方面,包括硬件设计和软件设计。

在硬件设计方面,需要选择适合的单片机和时钟芯片,同时还需要设计合适的电路板和显示屏,以及其他必要的外围电路。

在软件设计方面,需要编写相应的程序代码实现对时钟芯片的读取和控制,并实现闰年和月份天数的自动调整功能。

此外,还可以添加一些其他功能,如闹钟、倒计时等,以增加万年历的实用性和娱乐性。

在进行单片机万年历的毕业设计过程中,需要注意以下几个关键点。

首先,要确保硬件电路的正常工作,包括各个元件的连接和供电的稳定性。

其次,要确保编写的软件程序能够准确地读取和显示时间,并能够自动调整闰年和月份天数。

再次,要确保设计的功能实用性和稳定性,如闹钟功能的准点提醒、倒计时功能的精确计算等。

最后,还需要注意外观的美观性和易用性,以增加用户的满意度和使用体验。

综上所述,单片机万年历作为一种实用的电子设备,在现代社会中具有广泛的应用前景。

通过对硬件和软件的设计,可以实现准确的时间显示和自动调整功能,从而方便人们的日常生活和工作。

在进行单片机万年历的毕业设计过程中,需要注重电路的稳定性和软件的功能完善性,并通过实际测试和调试,不断优化设计,以实现更好的效果。

希望通过这篇文献,能够为单片机万年历的毕业设计提供一些参考和帮助。

多功能电子万年历设计

多功能电子万年历设计

多功能电子万年历设计一、本文概述本文旨在探讨多功能电子万年历设计的原理、方法及其在实际应用中的价值。

我们将对电子万年历的基本概念进行简要介绍,包括其发展历程、主要功能以及与传统日历的对比。

接着,我们将详细分析多功能电子万年历的设计要素,包括硬件选择、软件编程、用户界面设计等方面,以展示其独特的功能和设计理念。

在此基础上,我们将深入探讨多功能电子万年历设计的关键技术,如时间同步技术、多语言支持、日历算法优化等,以揭示其背后的技术原理和实现方法。

我们还将对多功能电子万年历的市场需求和应用前景进行分析,以展示其在现代社会中的重要作用。

本文将对多功能电子万年历设计的未来发展进行展望,探讨其在智能化、个性化、集成化等方面的趋势和挑战。

通过本文的阐述,读者可以对多功能电子万年历设计有一个全面、深入的了解,为其在实际应用中的开发和使用提供有益的参考。

二、电子万年历的设计原理电子万年历的设计原理主要基于时间计算、显示控制和数据存储三大核心部分。

在设计过程中,我们需要考虑如何精确计算时间,如何将时间信息以清晰易懂的方式显示出来,以及如何将这些时间数据存储和处理。

时间计算是电子万年历设计的基石。

它涉及到如何准确地计算年、月、日、时、分、秒等时间单位,并且要考虑闰年、闰月等复杂的时间规则。

这通常通过内置的时钟芯片实现,该芯片能够按照预设的算法进行时间计算,确保时间的准确性和连续性。

显示控制是电子万年历设计的关键。

显示控制的主要任务是将计算得到的时间信息转化为可视化的界面,供用户查看。

这包括选择适合的显示器件(如LCD屏幕、LED数码管等),并编写相应的显示驱动程序,以确保时间信息能够清晰、准确地呈现在用户面前。

数据存储是电子万年历设计的重要组成部分。

数据存储主要负责保存用户设置的时间、日期、闹钟等信息,以便在用户关机或断电后能够恢复。

通常,这些数据会存储在内置的存储芯片中,如EEPROM或Flash芯片,这些芯片具有非易失性,能够长期保存数据。

数字万年历实验报告

数字万年历实验报告

一、实验目的1. 掌握数字万年历的基本原理和设计方法。

2. 熟悉单片机编程和硬件电路设计。

3. 提高动手能力和问题解决能力。

二、实验原理数字万年历是一种能够显示年、月、日、星期、时、分、秒等信息的电子设备。

它主要由单片机、时钟芯片、显示模块、按键模块等组成。

本实验采用MSP430F149单片机作为核心控制单元,通过编程实现对万年历功能的实现。

三、实验设备1. MSP430F149单片机实验板2. 1602液晶显示屏3. DS1302时钟芯片4. 按键模块5. 电源模块6. 连接线四、实验步骤1. 设计硬件电路根据实验要求,设计万年历的硬件电路。

主要包括以下部分:(1)单片机模块:使用MSP430F149单片机作为核心控制单元。

(2)时钟芯片模块:使用DS1302时钟芯片提供时间基准。

(3)显示模块:使用1602液晶显示屏显示年、月、日、星期、时、分、秒等信息。

(4)按键模块:使用按键模块实现时间调整、功能选择等操作。

2. 编写程序根据硬件电路设计,编写万年历的程序。

主要步骤如下:(1)初始化硬件设备,包括单片机、液晶显示屏、时钟芯片等。

(2)从时钟芯片读取当前时间,并显示在液晶显示屏上。

(3)编写按键处理程序,实现时间调整、功能选择等功能。

(4)编写显示程序,实现年、月、日、星期、时、分、秒等信息的显示。

(5)编写时钟芯片校准程序,实现时间的精确控制。

3. 调试程序将编写好的程序烧录到MSP430F149单片机中,通过调试工具进行调试。

主要调试内容包括:(1)检查液晶显示屏显示是否正常。

(2)检查按键功能是否正常。

(3)检查时间调整、功能选择等功能是否正常。

(4)检查时钟芯片校准是否准确。

五、实验结果与分析1. 实验结果经过调试,万年历实验板能够正常显示年、月、日、星期、时、分、秒等信息,并且可以通过按键进行时间调整、功能选择等操作。

2. 实验分析(1)万年历的硬件电路设计较为简单,主要涉及单片机、时钟芯片、液晶显示屏、按键模块等。

电子万年历设计-毕业设计

电子万年历设计-毕业设计

电子万年历设计学生:XXX 指导教师:XXX内容摘要:这次设计以生活中常用的万年历挂钟为例,从系统功能说明出发,对控制系统的组成结构、系统设备选型进行了分析。

在硬件设计一节给出了详细的硬件电路设计图,并对各功能部件与AT90S8535单片机的连接进行了详细的讲解。

在软件设计一节给出了系统的程序控制流程图,对各部分程序进行了分析说明。

最后简要地介绍了系统集成与测试的方法。

万年历挂钟设计的方案很多。

在本次设计中选用高性能低功耗的AVR架构单片机AT90S8535作为系统的控制核心,并选用高集成度的实时时钟芯片SD2303和DS1722温度传感器来处理时间和温度检测任务。

AT90S8535单片机带有SPI接口,能非常便利地实现和DS1722的通信。

在与实时时钟芯片SD2303通信时采用了模拟IIC总线的方式。

本次设计的万年历挂钟能实现实时时间和温度的检测和显示。

通过设置的7个独立的按键来调整时间和设置闹铃。

需要指出的是,实时时钟芯片以设定的初始时间为基准进行计时,故用户在设置时间时必须保证所设置时间的合理性。

在设置闹铃时,程序会对所设置时间的合理性进行检测,任何不合理的时间设置将关闭闹铃功能。

鉴于系统设计的复杂性,万年历挂钟设计中没有加入阳历和阴历的转换。

我们可以在本设计的基础上使用专用的芯片或者使用软件算法来实现这一功能,这样万年历挂钟的功能将更加完善。

关键字:万年历 DS1722温度传感器 AT90S8535单片机Electronic calendarAbstract:The design use the calendar clock of the life as an example, starting from the system description, analyze the composition of the control system structure and system equipment selection. Software design in a given process control system flow chart of the various parts of the analysis procedure. Finally, a brief description of system integration and testing method.Calendar clock program designed many. Design in this selection of high-performance low-power AVR architecture AT90S8535 single chip as the core control system and select a high level of integration of real-time clock chip SD2303 and DS1722 temperature sensor to the processing time and temperature detection task. AT90S8535 single chip with SPI interface, can be very convenient to achieve the communication and DS1722. With real-time clock chip SD2303 communication IIC bus using a simulation approach.The calendar designed to achieve real-time clock time and temperature detection and display. Alarm in the settings, the program will be the setup time for testing the reasonableness of any unreasonable period of time set alarm feature will be closed.In view of the complexity of system design, calendar clock design are not members of the solar calendar and lunar calendar conversion. We can design based on the use of a dedicated chip, or the use of software algorithms to achieve this function, the function of this calendar clock will be more perfect.Keyword:calendar DS1722 temperature sensor A T90S8535 single chip目录前言 (1)1 电子万年历介绍 (1)1.1.1 时间显示 (1)1.1.2 时间调整 (1)1.1.3 定时闹钟 (1)1.1.4 温度显示 (1)1.1.5 掉电运行 (1)1.2 应用系统设计 (2)1.2.1 系统方案设计 (2)1.2.2 应用系统结构设计 (2)1.2.3 设备选型 (3)1.2.4 控制面板设计 (4)2 硬件电路设计 (5)2.1.1 AVRRISC结构 (5)2.1.2 数据和非易失性程序存储器 (5)2.1.3 外围器件特点 (5)2.1.4 MCU特点 (5)2.1.5 4MHz3V20℃条件下的功耗(AT90S8535) (6)2.1.6 I/O接口和封装 (6)2.2 实时时钟电路设计 (6)2.2.1 实时时钟芯片SD2303简介 (6)2.2.2 SD2303的引脚设置 (6)2.3 温度检测电路设计 (7)2.3.1 温度传感器DS1722简介 (8)2.3.2 DS1722的引脚配置 (8)2.5 键盘及闹钟电路设计 (10)3 软件设计 (11)3.1 主程序设计 (11)3.2 按键检测和处理程序 (12)3.3 系统集成与测试 (13)4 单片机控制系统抗干扰技术 (14)4.1 干扰的来源分析 (14)4.2 硬件抗干扰技术 (14)4.3 软件抗干扰技术 (14)4.4 供电系统抗干扰技术 (14)5 结束语 (15)附录 (16)参考文献 (17)电子万年历前言随着现代社会工作和生活节奏的加快,越来越需要人们对时间的准确把握,一旦遇到重要的事情而忘记了时间,这将会带来很大的损失。

万年历功能说明文档

万年历功能说明文档

一、功能描述1、上板复位后从元年1月1号开始计数,为方便上板调试,将一天的时间压缩为1秒;2、按键用于设置日历,按下按键0进入设置状态,再次按下按键0退出设置状态;3、按键1来选择想要设置的年月日的各个位;4、按键2在设置状态进行计数设置,每按下一次数码管显示数字加1;5、平年365天(52周+1天),闰年366天(52周+2天)。

平年2月28天,闰年2月29天。

6、闰年:每400年整一闰,或每4年且不为百年的一闰。

即能被400整除,或不能被100整除但能被4整除的年份为闰年。

二、平台效果图3.仿真结果:选取3个日期检查(1)1900年2月28日:该年不是闰年,故2月份只有28天(2)2000年2月29日:该年是闰年,故2月份有29天(3)2016年12月27日:经验证,日期显示正确。

三、实现过程首先根据所需要的功能,列出工程顶层的输入输出信号列表。

我们可以把工程划分成三个模块,分别是万年历计数模块、按键模块和数码管显示模块。

1.万年历计数模块万年历计数模块实现的是万年历计数功能,为方便观看,将一天时间设置为一秒,日计数器dat_cnt、月份计数器mon_cnt_h、mon_cnt_1、mon_2_h、mon_2_1分别为大月小月以及平年闰年的2月计数器、年份计数器yea_one、yea_ten、yea_hun、yea_tho分别为年份的个十百千位,由yea_cnt_tol <= yea_cnt1000 + yea_cnt100 + yea_cnt10 + yea_one得到年份。

本模块还自动计算当年是否是平闰年。

本模块信号列表如下:2.按键模块本次案例万年历使用的是4x4矩阵键盘,本模块就是实现了矩阵键盘的扫描并使用以及按键消抖功能。

通过行扫描法得到按下的键的位置信息。

本模块的信号列表如下:3.数码管模块数码管模块实现了将年月日的信息显示在数码管上。

本模块的信号列表如下:。

数码管显示万年历时钟

数码管显示万年历时钟

数码管显示万年历时钟功能介绍
一、功能说明:
1.整体功能达到了市售电子日历效果,显示内容包括年、月、日、星期、时、分、秒、室温;
2.实时时钟芯片采用了两种:DS12C887+和DS1302。

可供学习和使用过程中进行选择;
3.数码管控制采用了MAX7219专用扫描驱动芯片,可通过PS/2键盘对数码管的显示亮度进行15级调节;
4.电路板上留有PS/2键盘接口,用于调节当前时间、数码管显示亮度、闹铃时间。

这一点和变通电子日历用明显区别,以达到一个有点专业的电子钟的要求;
5.电路板上安装有继电器,可作为简单的时间控制(定时控制)或温度控制装置;
二、待改进之处:
1.可在板上合适的位置增加几个独立按键,日常使用调节更方便些;
2.显示内容可增加农历和湿度;
3.可以用光敏电阻配合串行A/D转换芯片实现显示亮度的自动调节,以适应环境光线的变化,这样子就更加具有专业性了。

三、PS/2键盘调整说明:
1.使用PS2键盘F1进入运行时间设定、F2进入数码管显示亮度设定、F3进入闹铃时间设定、F4启动闹铃、F5关闭闹铃2.按下F1然后依次设定年、月、日、星期、时、分、秒时间信息,中途可以按小键盘区的ENTER键,退出设定状态
3.按下F2然后选择小键盘区0-9和字符A-F可设定16级显示亮度,按下选择参数自动恢复走时状态
4.按下F3然后依次设定时、分、秒三个闹铃时间参数,设定好任一参数可按小键盘区的ENTER键退出设定状态
5.按下F4开启闹铃,继电器吸合其下方工作指示LED点亮,按下F5关闭闹铃,继电器释放同时LED熄灭,如蜂鸣器已经开始闹铃,可按F6或复位键
6.按下F1或F2或F3但不想设定任何参数,都可按ESC退出相应的设定状态。

毕业设计-电子万年历

毕业设计-电子万年历

单片机课程设计姓名:xxx学号:xxx专业班级:xx计算机科学与技术x班指导老师:xxx2009年5月23日目录摘要 (1)1 概述 (2)1.1单片机原理及应用简介 (2)1.2系统硬件设计 (4)1.3结构原理与比较 (6)2 系统总体方案及硬件设计 (7)2.1系统总体方案 (7)2.2硬件电路的总体框图设计 (10)2.3硬件电路原理图设计 (11)3 软件设计 (12)3.1主程序流程图设计 (12)3.2显示模块流程图 (12)4 软件仿真 (13)4.1仿真过程 (13)4.2仿真结果 (14)5课程设计体会 (15)附1 源程序代码 (16)摘要本设计是电子万年历。

具备三个功能:能显示:年、月、日、时、分、秒及星期信息,并具有可调整日期和时间功能。

我选用的是单片机8052来实现电子万年历的功能。

该电子万年历能够成功实现时钟运行,调整,显示年月日时分秒及星期,温度等信息。

该电子万年历使用12MHZ晶振与单片机8052相连接,通过软件编程的方法实现了以24小时为一个周期,同时显示小时、分钟和秒的要求。

利用单片机定时器及计数器产生定时效果通过编程形成数字钟效果,再利用数码管动态扫描显示单片机内部处理的数据。

同时通过端口读入当前外部控制状态来改变程序的不同状态,实现不同功能。

电子万年历设计与制作可采用数字电路实现,也可以采用单片机来完成。

若用数字电路完成,所设计的电路相当复杂,大概需要十几片数字集成块,其功能也主要依赖于数字电路的各功能模块的组合来实现,焊接的过程比较复杂,成本也非常高。

若用单片机来设计制作完成,由于其功能的实现主要通过软件编程来完成,这样一来就降低了硬件电路的复杂性,从而使得其成本降低,更适合我们大学生自主研发。

所以在该设计与制作中我选用了单片机8052,它是低功耗、高性能的CMOS型8位单片机。

片内带有4KB的Flash存储器,且允许在系统内改写或用编程器编程。

另外, 单片机8052的指令系统和引脚与8051完全兼容,片内有128B 的RAM、32条I/O口线、2个16位定时计数器、5个中断源、一个全双工串行口等。

基于单片机的数字万年历的设计与实现

基于单片机的数字万年历的设计与实现

基础课程设计(论文)基于单片机的数字万年历的设计与实现专业:电气工程及其自动化指导教师:小组成员:信息技术学院电气工程系2014年12月15日摘要本次设计就是设计一款万年历,以C51单片机为核心,配备数码管显示模块、按键等功能模块。

万年历采用24小时制方式显示时间,在数码管上显示年、月、日、小时、分钟、秒等功能。

设计的核心主要包括硬件设计和软件编程两个方面。

硬件电路设计主要包括中央处理单元电路、时钟电路、执行电路等几部分。

软件用汇编语言来实现,主要包括主程序、键盘扫描子程序、时间设置子程序等软件模块。

近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领、域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。

而51系列单片机是各单片机中最为典型和最有代表性的一种,通过本次课程设计进一步对单片机学习和应用,从而更熟悉单片机的原理和相关设计并提高了开发软、硬件的能力。

本设计主要设计一个基于 80C51单片机的电子时钟,并在LED上显示相应的时间,通过两个控制键和4×4键盘来实现时间的调节功能。

应用Proteus软件实现单片机数字时钟系统的设计与仿真。

关键词:单片机时钟电路 C51 万年历目录摘要 (I)1绪论 (1)1.1 方案选择与DIY电子万年历的研究情况 (1)1.1.1时钟芯片选择 (1)1.1.2键盘选择 (2)1.1.3显示模块选择 (3)1.2 DIY万年历的研究情况 (3)2 主要硬件描述 (3)2.1 89C51模块 (3)2.2 显示模块LCM12864 (4)2.2.1液晶模块概述 (4)2.2.2液晶模块特点 (4)2.3 芯片DS1302简介 (5)2.4 芯片DS18B20简介 (5)3 硬件设计与实现 (6)3.1 单片机最小系统的设计 (6)3.2 时钟电路的设计 (7)3.3 温度采集模块的设计 (7)3.4 人机交互模块设计 (8)4 系统软件设计与实现 (9)4.1 主要算法流程图描述 (9)4.2 各子程序设计 (13)参考文献 (20)1绪论多功能数字万年历已成为人们日常生活中必不可少的物品,广泛用于个人家庭以及车站、码头、医院、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

万年历数码管显示及其键盘控制设计组长:康智勇组员:王辉王玉王天龙付晓蓉2008年08月08日目录前言 (3)一、总体方案设计(方案的对比) (4)二.单元模块设计(设计细节) (5)(一)烧写板 (5)(二) 单片机最小系统板 (7)(三) 4-16译码器驱动数码管控制板 (12)(四) 数码管显示板 (13)(五) 键盘控制板 (14)(六) DS12C887功能板 (14)三、系统功能说明(结果说明) (20)四、设计总结(心得体会) (20)五、改进方案: (21)附录: (22)【参考文献】: (22)【电路原理图】: (23)【程序清单】: (28)【流程图】: (47)【键盘使用说明】 (49)前言目前,计算机技术的发展分为两大分支:通用计算机系统与嵌入式计算机系统。

嵌入式计算机系统是面向测控对象嵌入到应用系统中的计算机系统的统称,而单片机则是一种经典的嵌入式系统。

从广义上讲,将微型计算机的主要功能部件集中在一块单芯片上的微型计算机称为单片机,这一类计算机又称为微控制器MCU(Micro Control Unit)。

由于单片机集成度高、体积小、功能强、速度快、功耗低、抗干扰能力强等优点,它在智能仪器、工业测控、日常生活及家电中等得到了广泛的应用。

万年历的数码管显示及键盘控制就是单片机的开发过程中的一个经典的应用。

在国内市场中存在着很多种不同厂家生产的不同类型的单片机,在本次设计中我们选用Atmel公司MCS-51系列兼容单片机中的AT89S51单片机。

AT89S51单片机是一个低功耗高性能CMOS 8位单片机,40个引脚,片内含4KB Flash ROM和128B ROM,32个外部双向输入输出(I/O)接口,同时内含两个外中断口,两个16为可编程定时计数器,两个全双工串行通信口,它的最大的一个特点就是支持在线更新程序(In System Programmable,ISP)功能。

本设计中除了选用了单片机进行显示和键盘控制外,还需要一个主要的芯片就是美国DALLAS公司的新型时钟日历芯片DS12C887。

DS12C887是一个能够自动产生世纪、年、月、日、时、分、秒等时间信息,而且DS12C887中自带有锂电池,外部掉电时,其内部时间信息还能够保持10年之久,因此各种设备、家电、仪器、工业控制系统中,可以很容易地用DS12C887来组成时间获取单元,以实现各种时间的获取。

本次设计中正是利用它的这一性能来获取准确的时间信息。

本次设计中需要硬件和软件两方面的结合。

在硬件方面,需要准备烧写板、单片机最小系统板、4-16译码器驱动数码管控制板、数码管显示板、键盘控制板、DS12C887功能板等硬件;在软件选择了Protel Technology公司开发的具有PDM 功能的强大的EDA综合设计环境Protel 99SE来进行原理图设计、PCB(印刷电路板)设计,选择了Keil Software公司推出的Keil C51的集编译器、汇编器、实时操作、项目管理器、调试器于一体的集成开发环境uVision3。

本次设计的成功离不开本组组员在实习期间的不懈努力,在必要情况下的加班加点。

在整个设计过程中,本组组员本着认真负责的精神,本着“没有最好,只有更好”的原则,采取“团结一致、分工合作”的措施,终于成功的设计出了万年历的数码管显示及键盘控制。

当然,本次设计中我们也遇到了很多的问题,本次设计的成功离不开本组组员的共同努力,更离不开老师和师兄及其他组员等的帮忙,在此本组组员衷心的感谢周庆国老师、赵庆林老师、王绍伟老师、刘钰力师兄、姚琪师兄等,谢谢你们不厌其烦地给予我们帮助。

时间过得很快,实习将近尾声,但是本次实习中的收获、经历及组员间建立起来的友谊将在本组组员的脑海中留下抹不去的青春的痕迹。

一、总体方案设计(方案的对比)本方案以A T89S51单片机为主控芯片,,由时间控制芯片12C887来产生精确的时间输出。

用八段数码管来显示时间(年、月、日、星期、时、分、秒),具体思想如下:首先准备好烧写板、单片机最小系统板、数码管显示板、键盘控制板、DS12C887功能板、4-16译码器驱动数码管控制板等硬件,并写好所要用的软件;其次用PC机和烧写板把PC机上已经写好的程序通过烧写板写到单片机AT89S51上;第三、连接好其它的硬件电路,使用已经写进了程序的AT89S51芯片对单片机及DS12C887初始化,初始化完成后时间整个系统就开始正常工作,AT89S51单片机通过端口P0读DS12C887上的时间,然后通过写端口P1将读到的时间实时在15个七段数码管上显示(包括年、月、日、星期、时、分、秒,其中年用四位十进制数表示);当键盘有按键,需要对时间进行调整时,则单片机将立即进入中断,置中断标志位后出中断,通过主程序中检查标志位判断是否进入时间调整模块程序,当标志位为高电平时,工作进入调整时间模块,调整结束后直接跳出调整程序,在此过程中15个七段数码管一直进行着实时扫描输出,保证了操作的实时性与可靠性。

通过单片机AT89S51的P0端口将调整好的时间写到DS12C887芯片上,然后DS12C887将从调整后的时间开始进入正常的工作状态,同时A T89S51单片机再次通过端口P0读DS12C887上的时间,然后通过写端口P1将读到的时间实时在15个七段数码管上显示;或者当单片机复位时,整体系统又开始从初始化后的时间开始显示。

在设计工程中,我们考虑过其他方案有:1、以凌阳61精简板作为主控制芯片,但考虑价格方面以及更好的锻炼自己的实际动手能力,我们放弃了以凌阳61精简板作为主控芯片的方案;在程序编写过程中,由于程序大于了demo版uVision3允许范围,所以我们决定使用AT89S52,但在通过Runtime版uVision2编译成功后顺利下载入AT89S51所以我们重新选择了已有芯片,最终成功完成了我们的实习设计。

2、在时间产生方面,我们考虑过以A T89S51单片机中的定时器来产生时间,但是由于AT89S51单片机用的是12MHz的频率,要产生1s的时间进位需加一些其他的C语句,这样会产生微小的时间偏差。

虽然在短时间内我们可能看不出什么问题,但是在长时间运行时会造成时间的不准确,故我们放弃了以AT89S51单片机内部产生时间的方案。

3、在键盘按键方面,我们考虑过使用行列扫描以及反转法扫描的方式进行按键识别。

在此种情况下,我们设想使用0-9十个数字键、一个终端进入键和复位键共12键对时间进行调试。

但是考虑到这种方式需要的按键太多,我们最终选择了六键控制方式,此时不需要对键盘进行行列扫描以及大规模阵列式键盘控制,提高了设计的实用性降低了元件成本。

4、在键盘控制和数码管显示时间方面,我们最初考虑的是使用芯片8279。

8279是可编程的键盘、显示接口芯片,它既具有按键处理功能,又具有自动显示功能,在单片机系统中应用很广泛。

8279内部有键盘FIFO(先进先出堆栈)/传感器,双重功能的8*8=64B RAM,键盘控制部分可控制8*8=64个按键或8*8阵列方式的传感器。

该芯片能自动消抖并具有双键锁定保护功能。

显示RAM容量为16*8,即显示器最大配置可达16位LED数码显示。

正如上所说,由于我们没有选择行列扫描的按键识别方式,同时考虑到设计成本问题,故我们放弃了这种想法。

二.单元模块设计(设计细节)(一)烧写板烧写板的使用前提及使用时与AT89S51单片机的连接情况见“单片机最小系统板”。

组成烧写板器件介绍(1)DB25并口DB25并口的管脚图如下:(2) 8D触发器HD74HC373P8D触发器HD74HC373P是一个三态输出的8D透明锁存器,它的管脚图如下:HD74HC373P各引脚定义如下:D0-D7 数据输入端OE 三态允许控制端(低电平有效)LE 锁存允许端O0-O7 输出端HD74HC373P各引脚功能具体应用介绍:HD74HC373P的输出脚O0-O7可直接与总线连接;当OE为低电平时,O0-O7为正常逻辑状态,可用来驱动负载或总线;当OE为高电平时,O0-O7呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响;当LE 为高电平时,O随数据D而变;当LE为低电平时,O被锁存在已建立的数据电平;当LE端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善400mV。

2. 具体设计烧写板的主要组成原件就是上面提到的DB25并口、8D触发器HD74HC373P,还需要单片机最小系统板中的A T89S51单片机的配合。

烧写板的使用前提及怎么与单片机最小系统板配合见“单片机最小系统”模块设计细节。

烧写板的的具体设计如下:(1)烧写板单片机与最小系统板的连接:将8D触发器HD74HC373P的Vcc脚(PIN20)与AT89S51单片机的Vcc 脚(PIN40)连接——此为HD74HC373P与AT89S51单片机的电源高电平连接口。

将8D触发器HD74HC373P的GND脚(PIN10)、OE脚(PIN1)及PC机的DB25并口的PIN18、PIN25与AT89S51单片机的Vss脚(PIN20)连接——DB25并口的PIN18、PIN25本为信号地端;HD74HC373P的PIN10本为接地端;HD74HC373P的OE脚接低电平是为了让O0-O7在整个工作过程中为正常逻辑状态。

将8D触发器HD74HC373P的O3脚(PIN9)与A T89S51单片机的RST(PIN9)连接;将AT89S51单片机的P1.5(PIN6)、1.6(PIN7)、1.7脚(PIN8)分别与8D 触发器HD74HC373P的O0脚(PIN2)、D1脚(PIN4)、O2(PIN6)对应连接;(2)另外的连接将DB2的PIN1与HD74HC373P的PIN7连接;将DB2的PIN14与HD74HC373P的PIN3连接;将DB2的PIN15与HD74HC373P的PIN5连接;将DB2的PIN16与HD74HC373P的PIN8连接;在电路中接入了三个电容,目的在于减少干扰。

上面设计的总体思路是:将PC机上的程序由DB25并口通过8D触发器HD74HC373P写到AT89S51单片机上.。

如果数据传输正确,则由AT89S51单片机传一个反馈信息由DB25并口到PC机,说明传输正确;如果数据传输出错,则由AT89S51单片机传一个反馈信息由DB25并口到PC机,说明出错,我们需要重新传输。

在这个结构中8D触发器HD74HC373P用来锁存地址和数据。

该项目的核心是8051单片机,它是可编程硬件,通过软件读入单片机,再由单片机写出到硬件,实现设计功能。

因此,烧写板的设计便是为了使单片机读入不同的程序,实现不同的功能。

相关文档
最新文档