作息时间控制器_第1页
作息时间控制器_第2页
作息时间控制器_第3页
作息时间控制器_第4页
作息时间控制器_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、河南理工大学本科课程设计报告河南理工大学电子设a计a综合训练报告作息时间控制器姓 名: 陈平 单亚洲 学 号:310708020807 310708020808 专业班级: 自动化07-8班 指导老师: 谭 兴 国 所在学院: 电气工程与自动化学院 2010年7月1日摘要本设计是基于Atmel 89S52单片机和Proteus仿真的一款实用性很强的多功能作息时间控制器。具有时间显示、校时、闹钟设置、响铃提醒等功能。具体来讲,该作息时间控制器是由一个单片机数字钟及控制电路搭建起来的简单系统;硬件电路主要由单片机最小系统(包括USB供电电路、上电加按键复位电路、时钟晶振电路等)、数码管显示电路、按

2、键控制电路、LED闪烁秒指示和闹钟提醒电路;软件采用功能强大、可读性强的高级语言C语言编写,作品设计制作过程中始终采用程序和系统联机调试;同时,实时采用Proteus进行系统的仿真并改进,大大提高了设计的效率。由于单片机集成度高、功能强、通用性好,特别是它体积小、重量轻、功耗低、价格便宜、可靠性高、抗干扰能力强和使用方便等独特优点,使得它在作息时间控制器的设计中具有独特的优势,是很好的选择;采用USB供电的单片机最小系统,在只有时钟晶振电路和上电加按键复位电路的情况下,只需内置一些简单的程序,无需外部扩展太多的硬件电路和存储器等;键盘采用独立按键,已能够满足全部要求,即可实现对时间和闹钟的模式

3、设定、时间的小时和分钟校准以及闹钟的设定,使得占用资源较少,编程也变得很简单;时间显示采用四位共阴数码管分别显示“时/分”,数码管功耗极低,而且价格便宜,采用动态扫描,使得占用MCU较少的I/O口资源;秒显示采用红色LED灯闪烁来指示,闹钟采用低功耗的蜂鸣器,性价比极高,简单实用。总之,该作息时间控制器利用单片机控制技术将时钟电子化、数字化,拥有时钟精确、体积小、界面友好特点,拥有人性化的闹铃提醒功能,可被广泛应用于我们日常的学习、工作和生活当中。关键字:时间控制器 AT89S52 多功能 动态扫描12 目录1 概述31.1 引言31.2作息时间控制器研究的背景和意义31.3作息时间控制器的功

4、能32 系统总体方案及硬件设计52.1系统整体方案52.2硬件设计52.1.1单片机复位电路52.1.2单片机时钟晶振电路62.1.3 数码管显示电路62.1.4按键控制电路72.1.5秒闪烁和闹钟提示电路73 软件设计93.1主程序设计93.2时钟主要程序设计93.3键盘程序设计103.4中断程序设计104 Proteus软件仿真114.1 Proteus仿真图114.2仿真结果分析与改进115 课程设计体会12参考文献12附1 源程序代码13附2 系统原理图241 概述1.1 引言时间是人类生活必不可少的重要元素,如果没有时间的概念,社会将不会有所发展和进步。从古代的水漏、十二天干地支,到

5、后来的机械钟表以及当今的石英钟,都充分显现出了时间的重要,同时也代表着科技的进步。致力于作息时间控制器的研究和充分发挥时钟的作用,将有着重要的意义。1.2作息时间控制器研究的背景和意义20世纪末,电子技术获得了飞速的发展。在其推动下,现代电子产品几乎渗透到了社会的各个领域,有力的推动和提高了社会生产力的发展与信息化程度,同时也使现代电子产品性能进一步提升,产品更新换代的节奏也越来越快。时间对人们来说总是那么宝贵,工作的忙碌性和繁杂容易使人忘记当前的时间。然而遇到重大事情的时候,一旦忘记时间,就会给自己或他人造成很大麻烦。想知道时间,手表当然是一个很好的选择,但是,在忙碌当中,我们还需要一个“助

6、理” 及时的给我们提醒时间。所以,计时器最好能够拥有一个定时系统,随时提醒容易忘记时间的人。 最早能够定时、报时的时钟属于机械式钟表,但这种时钟受到机械结构、动力和体积的限制,在功能、性能以及造价上都没办法与电子时钟相比。 作息时间控制器是采用电子电路实现对时、分、秒进行数字显示的计时装置,广泛应用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品。由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得作息时间控制器的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,因此,研究作息时间控制器,有着非常现实的意义。1.3作息时间控制器的功能作息时间控制器

7、利用单片机控制技术将时钟电子化、数字化,拥有时钟精确、体积小、界面友好特点,拥有人性化的闹铃提醒功能,可被广泛应用于我们日常的学习、工作和生活当中。它主要有以下几种功能:1)使用4位七段显示器来显示现在的时间。显示格式为“时分”,由LED闪动作为秒计数表示。2)可以设定作息时间,并进行到时提示。3)能够根据预先设定好的作息时间表自动启停控制电路,完成对外部设备的实时控制。4)可以设置现在的时间及显示定时设置时间。2 系统总体方案及硬件设计2.1系统整体方案该系统主要以微控制器单片机AT89S52为控制核心,周围附加复位电路、时钟电路、显示电路、提示电路和按键电路等。系统框图如图2.1所示:图2

8、.12.2硬件设计该作息时间控制器的硬件电路主要是由单片机最小系统(包括USB供电电路、上电加按键复位电路、时钟晶振电路等)、数码管显示电路、按键控制电路、LED闪烁秒指示和闹钟提醒电路组成的,具体电路如下分述:2.1.1单片机复位电路单片机常用的复位电路有四种,分别为:上电复位、按钮脉冲复位、按钮电平复位、上电+按钮电平复位,很显然采用上电+按钮复位电路更优越,电路图如图2.1.1所示:图2.1.12.1.2单片机时钟晶振电路51单片机有两种时钟产生方式,即内部和外部时钟产生方式。外部时钟产生方式的时钟脉冲完全由外电路产生,而内部时钟产生方式是指在XTAL1和XTAL2两端跨接晶体或陶瓷谐振

9、器,与内部反相器构成稳定的自激振荡器,其发出的时钟脉冲直接送入片内定时控制部件,由于作息时间控制器对精度要求较高,故采用内部时钟产生方式,硬件电路图见图2.1.2所示:图2.1.22.1.3 数码管显示电路数码管显示方式也分为两种:静态扫描方式和动态扫描方式。静态扫描方式显示程序简单,显示度高,由于单片机不需要经常扫描显示器,所以可以节省CPU的时间。但静态扫描的缺点是占用I/O口资源较多,硬件成本高,而且功耗大。而作息时间控制器需要显示四位数据,所以采用动态扫描方式,可以减少I/O口资源的占用。具体电路图如图2.1.3所示:图2.1.32.1.4按键控制电路常用的键盘有独立式键盘和矩阵式键盘

10、。在系统要求按键较多时,一般采用矩阵式键盘,可以减少占用I/O口线,但该系统无需太多按键,四个独立式按键即可满足要求,而且程序编写简单。当按下S1时,可以选择时间和闹钟模式,当分别按下S2和S3时则分别调整小时/分钟自动加1,当系统处在闹钟设置或者时间校准状态时,按下S4则为确定,时间开始从0秒开始计时。详细电路图见图2.1.4所示:图2.1.42.1.5秒闪烁和闹钟提示电路每间隔1s,红色LED灯闪烁一次,当到达闹钟设置的时刻时,蜂鸣器发出声音提示,电路图如图2.1.5所示:图2.1.53 软件设计3.1主程序设计第一次上电,系统先进行初始化,单片机依次开始调用显示子程序、键盘扫描子程序、闹

11、铃子程序,经过延时,返回程序开头循环运行。主程序流程图如图3.1。图3.13.2时钟主要程序设计图3.23.3键盘程序设计图3.33.4中断程序设计图3.44 Proteus软件仿真应用仿真软件Proteus搭建电路的软件平台,再导入程序进行仿真调试。如果电路出错,可以在计算机上方便的修改电路,程序出错可以重新编辑程序,这种方法节时、省力,经济、方便。4.1 Proteus仿真图图4.14.2仿真结果分析与改进刚开始由于自己的粗心,在画仿真图时,将排阻上的一引脚线路接错,导致数码管不能完全显示,经过仔细分析排查找到了原因,最终仿真结果一步步完善,达到了题目的基本要求。实现了四按键控制“时间/闹

12、钟”的模式设定、“分钟/小时”校准、闹钟设定等功能;实现了LED灯闪烁的秒指示;实现了闹钟定时的提醒;实现了根据预先设定好的作息时间表自动启停控制电路,完成了对外部设备的实时控制。有待改进的地方是时间的精度问题,这个主要可以通过完善程序来实现,硬件电路的焊接上也有待进一步加强,力争使作品更加实用美观。5 课程设计体会通过本课程设计,使我深刻的明白了理论和实践的差别,并且让我加深了对单片机的认识和了解。本次课程设计使我掌握了单片机开发的基本方法及其流程,以及单片机系统设计的总体思路,而且掌握Altium Designer和Proteus软件使用方法。在此过程我们也遇到了许多困难,例如一些元件使用

13、功能,编程等,这都在老师和同学的帮助下和通过网上查资料的途径得到解决,更重要的我们可以把理论运用到实践中去,使理论与实践相结合,使我们的理论知识的到了巩固,在查资料翻阅资料的过程中也丰富了我们的知识跟阅历,让我体会到了学习的乐趣,学习再也不是那么枯燥。总而言之,本次课程设计让我们得到了锻炼,思路更加宽阔,动手能力也得到了提高,并且掌握了解决问题的方法和途径,培养了我们的创新精神,从而不断地挑胜自己,超越自己。参考文献【1】 余发山,王福忠.单片机原理及应用技术.徐州:中国矿业大学出版社,2008.29-32【2】 戴佳,苗龙,陈斌.51单片机应用系统开发典型实例.北京:中国电力出版社,2005

14、.15-24【3】 徐爱钧,彭秀华.单片机高级语言C51应用程序设计.北京:电子工业出版社,1998.365-379附1 源程序代码/* *P0口为数码管段码输出,P24-P27口为位选。P3_2为模式选择 P1_3为小时加1,P1_1为分钟加1,P1_2为闹铃确定键* */#include<reg52.h>#include<stdio.h>#define uchar unsigned char;#define uint unsigned int;sbit ss=P14;sbit sb1=P12;sbit sb2=P13;sbit sb3=P11;sbit beep=P

15、15;uchar dcode=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F;/共阴数码管段码uchar wcode=0x7F,0xBF,0xDF,0xEF,0xFF;/共阴数码管位选/uchar dcode=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xf8,0x80,0x90;/共阳数码管段码/uchar wcode=0x01,0x02,0x04,0x08,0x00;/共阳数码管位选uchar count=0,second=0,minute=5,hour=10,ji=0;unsigned char dhour=

16、10,0,0,dminute=7,0,0;uchar flag1=2,flag3=0;bit flag2=0; /flag1为1或2时显示时间flag1为0时显示定时时间。flag2=0时秒闪动void init(void);void delay(void);void disp(void);void int0(void);scan(unsigned char);void set(void);void timer(void);void match(void);void tiao(void);void main(void)init();while(1) disp();tiao();match();

17、if(flag1=0|flag1=1)set();void init(void)/初始化IT0=1;/边缘触发 EX0=1;TMOD=0x01;TH0=0x3c; TL0=0xb0;/定时器0,方式一,50ms定时初值EA=1; TR0=1;ET0=1;void delay(void) /延时函数 unsigned char i,j; for(i=1;i>0;i-) for(j=142;j>0;j-);void disp(void)/显示函数if(flag1=1|flag1=2)P2=wcode4;P0=dcodehour/10;P2=wcode0;delay();P2=wcode

18、4;P0=dcodehour%10; P2=wcode1;delay();P2=wcode4; P0=dcodeminute/10;P2=wcode2;delay();P2=wcode4; P0=dcodeminute%10;P2=wcode3;delay(); P2=wcode4;if(flag1=2)flag2=0; if(flag1=0) P2=wcode4;P0=dcodedhour0/10;P2=wcode0;delay();P2=wcode4;P0=dcodedhour0%10; P2=wcode1;delay();P2=wcode4; P0=dcodedminute0/10;P2

19、=wcode2;delay();P2=wcode4; P0=dcodedminute0%10;P2=wcode3;delay(); P2=wcode4;void tiao(void)/时间调整函数if(second>=60)second=0;minute+;if(minute>=60)minute=0;hour+;if(hour>24)hour=0;void int0(void) interrupt 0/INT0中断服务子程序flag1+;if(flag1>2)flag1=0;scan(unsigned char jj)/键扫描函数if(flag1=0)while(1)flag2=1;if(sb2=0)while(sb2=0)disp();dhourjj=dhourjj+1;if(dhourjj>=24)dhourjj=0;if(sb3=0) while(sb3=0)disp();dminutejj=dminutejj+1;if(dminutejj>=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论