篇一:电子万年历实验报告重庆电力高等专科学校计算机科学系实训报告课程名称实验名称班级信息0911 姓名廖林单片机应用技术电子万年历学号 200903020243 教师任照富日期 2010-12-28 地点一教七机房一、实训任务:1、看实训要求,计划出自己实训所要用元件,在网上查找资料。
2、思考仿真原理图,然后画出来(具体i/o口暂时不确定)。
3、在网上找一些程序,然后自己改一些,进行编译。
4、编译无误之后,跟原理图相联系,完成最终的仿真图。
5、进行最后的改写,把程序和仿真原理图确定下来。
6、根据仿真图形,制作出实物图。
7、在实物制作过程中,进行电路检查和最后的调试。
二、实训要求:要求:能显示阳历的年、月、日、星期、时、分、秒;能显示阴历的年、月、日;能进行日期、时间的调整。
扩展:能显示当前温度;有闹钟功能(至少2个)选择ds1302时钟芯片,温度传感器采用ds18b20数字温度传感器。
三、实训环境(软件、硬件):软件:keil protues7.5硬件:计算机2单片机的应用四、实训意义:在这快速发展的年代,时间对人们来说是越来越宝贵,在快节奏的生活时,人们往往忘记了时间,一旦遇到重要的事情而忘记了时间,这将会带来很大的损失。
因此我们需要一个定时系统来提醒这些忙碌的人,而数字化的钟表给人们带来了极大的方便。
由于单片机具有灵活性强、成本低、功耗低、保密性好等特点,所以电子日历时钟一般都以单片机为核心,外加一些外围设备来实现。
电子万年历作为电子类小设计不仅是市场上的宠儿,也是是单片机实验中一个很常用的题目。
因为它的有很好的开放性和可发挥性,因此对作者的要求比较高,不仅考察了对单片机的掌握能力更加强调了对单片机扩展的应用。
而且在操作的设计上要力求简洁,功能上尽量齐全,显示界面也要出色。
所以,电子万年历无论作为竞赛题目还是毕业设计题目都是很有价值。
对于这个实验项目,我们还要有一些其他的基本知识掌握和意义:(1)在学习了《数字电子技术》和《单片机原理及接口技术》课程后,为了加深对理论知识的理解,学习理论知识在实际中的运用,为了培养动手能力和解决实际问题的经验,了解专用时钟芯片ds1302,并会用ds1302芯片开发时钟模块,应用到其他系统中去。
熟悉keil和protues软件调试程序和仿真.(2)通过实验提高对单片机的认识;(3)通过实验提高焊接、布局、电路检查能力;(4)通过实验提高软件调试能力;(5)进一步熟悉和掌握单片机的结构及工作原理。
(6)通过课程设计,掌握以单片机核心的电路设计的基本方法和技术。
(7)通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
(8)通过完成一个包括电路设计和程序开发的完整过程,了解开发一单片机应用系统的全过程,为今后从事相应工作打下基础。
五、实训工作:由于自己是组长,所以在实训期间要多注意一下,实训期间我的主要工作有:1、看实训要求,计划出自己实训所要用元件,在网上查找资料,同时要求组员也做同样的工作,最后再综合起来。
2、思考仿真原理图,然后画出来(具体i/o口暂时不确定)。
3、在网上找一些程序,然后自己改一些,进行编译。
4、编译无误之后,跟原理图相联系,完成最终的仿真图。
5、进行最后的改写,把程序和仿真原理图确定下来。
6、根据仿真图形,制作出实物图,并进行电路的检查。
六、实训功能:实训成品暂时还没有成功,所以只能够写出计划实现功能:1、能够显示公历的年、月、日,还有时、分、秒和温度。
2、能够进行时间的调整。
七、硬件设计:仿真电路运用的是总线类型的52单片机,单片机部分如上图。
此实训的显示部分用的是数码管,并且是共阴极数码管,其中段选接在p0口,在p0口用了一个上拉电阻,拉高p0口的电压,以使数码管正常工作。
公历的年、月、日的位选接在的是p2口,从左到右分别是p2.7。
p2.6 。
p2.5 。
p2.4 。
p2.3 。
p2.2 。
p2.1。
p2.0。
时间与温度的位选接在p1口上面,从左到右分别,从上到下分别是p1.7。
p1.6 。
p1.5 。
p1.4 。
p1.3 。
p1.2 。
p1.1。
p1.0。
上图为按键设置,最上面一个为设置,下面分别是调高与调低。
ds18b20可以程序设定9~12位的分辨率,精度为±0.5°c。
可选更小的封装方式,更宽的电压适用范围。
分辨率设定,及用户设定的报警温度存储在eeprom中,掉电后依然保存。
ds18b20的性能是新一代产品中最好的!性能价格比也非常出色!ds1822与ds18b20软件兼容,是ds18b20的简化版本。
省略了存储用户定义报警温度、分辨率参数的eeprom,精度降低为±2°c,适用于对性能要求不高,成本控制严格的应用,是经济型产品。
继一线总线的早期产品后,ds1820开辟了温度传感器技术的新概念。
ds18b20和ds1822使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。
dq接在p3.7上面。
上图为ds1302时钟部分,上图接有晶振和电容,但实物当中没有电容,所篇二:万年历实验报告设计题目:电子万年历设计任务与要求:1、显示年月日时分秒及星期信息2、具有可调整日期和时间功能3、增加闰年计算功能方案比较:方案一:系统分为主控制器模块、显示模块、按键开关模块,主控制模块采用at89c52单片机为控制中心,显示模块采用普通的共阴led数码管,键输入采用查询法实现功能调整,计时使用at89c52单片机自带的定时器功能,实现对时间、日期的操作,通过按键盘开关实现对时间、日期的调整。
方案二:系统分为主控模块、时钟电路模块、按键扫描模块,lcd显示模块,电源电路、复位电路、晶振电路等模块。
主控模块采用at89c52单片机,按键模块用三个按键,用于调整时间,显示模块采用lcd1602,时钟电路模块采用ds1302时钟芯片实现对时间、日期的操作。
逻辑总框图:该电子万年历的总体设计框图如图(1)所示。
设计所需的元件:元件名称型号数量/个11 单片机 at89c52 时钟芯片晶振晶振电容电容 ds1302 12mhz 1 32.768khz 1 30pf 2 22uf 11 321 按键开关复位开关电阻滑动变阻器 220 10k发光二极管红色 1电池lcd 1.5v 4 lcd1602 1电源vcc导线 +5v 1 若干单元电路设计:1、主控制系统单片机中央处理系统的方案设计,选用at89c52单片机作为中央处理器,如图(2)所示。
该单片机除了拥有mcs-51系列单片机的所有优点外,内部还具有8k的在系统可编程flash存储器,低功耗的空闲和掉电模式,极大的降低了电路的功耗,还包含了定时器、程序存储器、数据存储器等硬件,其硬件能符合整个控制系统的要求,不需要外接其他存储器芯片和定时器件,方便地构成一个最小系统。
整个系统结构紧凑,抗干扰能力强,性价比高。
2、时钟振荡电路时钟振荡电路图(3)所示,时钟振荡电路用于产生单片机正常工作时所需要的时钟信号,电路由两个30pf的瓷片电容和一个12mhz的晶振组成,并接入到单片机的xtal1和xtal2引脚处,使单片机工作于内部振荡模式。
此电路在加电后延迟大约10ms振荡器起振,在xtal2引脚产生幅度为3v左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率决定。
电路中两个电容c1、c2的作用使电路快速起振,提高电路的运行速度。
图(3)时钟振荡电路图图(4)复位电路3、复位电路复位电路由电阻和极性电容组成,如图(4)所示,通过高电平使单片机复位,在时钟电路开始工作后,当高电平的时间超过大约2us时,即可实现复位。
此复位电路同时具备了上电复位和手动复位的功能,上电复位发生在开机加电时,由系统自动完成,手动复位通过一个按键来实现,在程序运行时,若遇到死机,死循环或程序“跑飞”等情况,通过手动复位就可以实现重新启动的操作。
手动按钮复位需要人为在复位输入端rst上加入高电平。
一般采用的办法是在rst端和正电源vcc之间接一个按钮和一个电阻,如图所示,当人为按下按钮时,则vcc 的+5v电平就会直接加到rst端。
4、ds1302时钟电路时钟电路主要由时钟芯片ds1302、备用电池、晶振等几部分组成,如图(6)所示。
ds1302采用3线串行接口,占用引脚少,内部集成了可编程日历时钟,用户可以根据需要通过单片机的控制来自行设置,支持双电源供电,可以使用外部主电源和备用电源,备份电源能够使时钟芯片继续工作。
图(5) ds1302管脚图图(6) ds1302时钟电路ds1302各引脚的功能为:8: vcc1:备用电池端;1: vcc2:5v电源。
当vcc2>vcc1+0.2v时,由vcc2向ds1302供电,当vcc2< vcc1时,由vcc1向ds1302供电;7: sclk:串行时钟,输入;6: i/o:数据输入输出口;5: ce/rst:复位脚;2、3: x1、x2 是外接晶振脚(32.768khz的晶振);4: 地(gnd)。
ds1302有关日历、时间的寄存器:图(7)ds1302有关日历、时间的寄存器1、秒寄存器(81h、80h)的位7定义为时钟暂停标志(ch)。
当初始上电时该位置为1,时钟振荡器停止,ds1302处于低功耗状态;只有将秒寄器的该位置改写为0时,时钟才能开始运行。
2、小时寄存器(85h、84h)的位7用于定义ds1302是运行于12小时模式还是24小时模式。
当为高时,选择12小时模式。
在12小时模式时,位5是,当为1时,表示pm。
在24小时模式时,位5是第二个10小时位3、控制寄存器(8fh、8eh)的位7是写保护位(wp),其它7位均置为0。
在对任何的时钟和ram的写操作之前,wp位必须为0。
当wp位为1时,写保护位防止对任一寄存器的写操作。
也就是说在电路上电的初始态wp是1,这时是不能改写上面任何一个时篇三:c++万年历实验报告实验6基于命令行窗口的日历查询程序(综合性实验)1.引言. 1.1实验目的:(1) 了解程序开发环境调试工具的使用;(2) 掌握小型系统的开发过程,学会用 c++语言解决问题。
1.2实验题目:设计一个实用日历查询系统“万年历”,使其类似于家里的日历。
方便人们查看日历信息此项目可用:控制语句、函数、数组、循环等基本的知识点综合应用实现它的主要功能为:根据用户输入的参数,显示相应的信息。
例如:输入年月日的具体日期,系统会输出该天是星期几;如果输入的数据是年月,则会输出该年该月的日历信息。
1.3实验内容:学习开发命令行窗口的日历查询程序。
实验涉及的内容包含《程序语言基础(c 语言)》的大部分知识点,主要包括:三种基本的控制结构、函数和函数调用。