大学毕业设计---可编程作息时间控制器设计单片机课程
- 格式:doc
- 大小:4.67 MB
- 文档页数:26
单片机系统课程设计成绩评定表设计课题:可编程作息时间控制器设计学院名称:电气工程学院专业班级:学生姓名:学号:指导教师:设计地点:设计时间:单片机系统课程设计课程设计名称:可编程作息时间控制器设计专业班级:学生姓名:学号:指导教师:课程设计地点:课程设计时间:单片机系统课程设计任务书1、引言 (1)1.1研究背景和用途 (3)1.2设计思想及基本功能 (3)1.3研究内容及采方法 (3)(1)主要研究内容 (3)(2)主要采用方法 (4)2、总体设计方案 (4)2.1 方案选取 (4)2.2系统框图 (4)2.3系统工作原理 (5)3、硬件电路及芯片介绍 (5)3.1 AT89C51单片机 (5)3.2 1602LCD液晶显示器 (8)3.3其他重要元件 (9)(1) 独立式键盘的接口电路: (9)(2)蜂鸣器: (10)3.4硬件电路设计图 (11)4、系统软件设计 (12)4.1主程序软件设计 (12)4.2键盘扫描程序设计 (13)4.3时钟调节程序设计 (14)4.4闹钟时间调节程序设计 (15)4.5闹钟时间判断子程序设计 (16)5、总结 (17)参考文献 (18)附录: (19)1、引言1.1研究背景和用途20世纪末,电子技术得到了飞速的发展。
在其推动下,现代电子产品乎渗透到了社会的各个领域,有力的推动和提高了社会生产力的发展与信息化程度,同时也使现代电子产品性能进一步提升,产品更新换代的节奏也越来越快。
时间对于人来说总是那么珍贵,工作的忙碌性和繁杂让人容易忘记当前时间。
然而遇到重大事情的时候,一旦忘记时间,就会给自己或他人造成更大的麻烦。
对于学校来说作息时间尤为重要。
如今,在电子计算机基础上发展而来的可编程作息时间控制器,它可以利用电子计算机的内部时间,通过程序判断处理,完成对作息时间的精确控制,并且由于是程序控制,所以可通过改变程序而进而灵活改变作息时间,同时可以实时显示时间,并实现打铃功能。
目录第一章引言 (3)选题背景及其意义 (3)877A单片机的介绍 (3)设计要求及其功能 (4)本设计实现的功能 (4)第二章系统整体方案 (5)系统整体方案框图 (5)设计要求 (5)按照设计要求画出系统框图 (5)控制系统时刻分析表 (6)处置器的选择 (6)时钟芯片的选择 (7)液晶显示器的选择 (7)第三章硬件部份的设计 (7)系统部份 (7)键盘接口电路 (8)显示部份 (9)第四章控制系统软件部份 (10)软件介绍 (10)程序流程图 (11)按键的扫描子程序 (12)铃声控制程序 (12)仿真电路 (13)第五章总结 (15)参考文献 (16)致谢 (16)基于单片机的可编程作息时刻控制器的设计何欢(伊犁师范学院电子与信息工程学院电子信息科学与技术09-2班,新疆伊宁市 835000)摘要:本设计是作息时刻控制器,由单片机最小系统、按键模块、数码管显示模块、铃声模块组成。
采用PIC16F877A单片机、主频4MHZ晶振,通过按键STATE、TEN、UNIT控制时刻的校正时刻和铃声设定;数码管显示模块用来显示时刻,显示格式为“时分”,并能够按照需要显示年、月、日,由数码管小数点闪动作为秒计数;铃声模块进行到时提示并出相应动作:发光二极管闪亮,同时播放音乐。
时钟芯片采用的是DS1302,此芯片是DALLAS 公司推出的涓流充电时钟芯片,其内含有一个实不时钟/日历和31 字节静态RAM,并通过简单的串行接口与单片机进行通信。
实不时钟/日历电路提供秒、分、时、日、日期、月、年的信息,每一个月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM 指示决定采用24 或12 小时格式。
DS1302 工作时功耗很低,维持数据和时钟信息时功率小于1mW。
该设计采用C语言编写程序,由于汇编语言的移植性比较差,而C语言则比较灵活,许多子函数都能够直接移植过去。
关键词:PIC16F877A单片机;晶振;液晶显示器;源程序Based on single chip microcomputer controller design ofprogrammable calendarHehuan(ili normal college of electronic and information engineering college of electronic information science and technology 09-2 class, xinjiang yining city, 835000 )Abstract:This is the time schedule controller designed by single chip microcomputer minimum system module, buttons, digital tube display module, alarm module. Using PIC16F877A MCU, 4 MHZ crystal vibration main frequency, through the button STATE, TEN, UNIT control time correction time and set ring; Digital tube display module is used to display time, display format of"time", and can according to need to display year, month, day, by the digital tube decimal counting flashing as seconds; Bell module to remind and make the corresponding action: light-emitting diodes, play music at the same time.Used clock chip DS1302, this chip is DALLAS company to launch a trickle charging the clock chip, containing a real-time clock/calendar and 31 bytes static RAM, and communicate with single chip microcomputer with simple serial interface. Real-time clock/calendar circuit provides seconds, minutes, and information day, date, month, year, number of days per month and leap year the number of days can be automatically adjusted, clock operation by an AM/PM indicator decided to adopt 12 or 24 hour format. DS1302 power consumption is low, while working to keep data and clock information when the power is less than 1 mw.This design USES the C language program, due to the portability of assembly language, but C is more flexible, Many functions can be directly transplanted in the past.Keywords: PIC16F877A MCU;crystals and liquid crystal display; the source program第一章引言选题背景和意义自从人类学会计时开始,计时方式由在木棍和骨头上刻标记,随着人类的智慧的进展,到后面利用计时工具不断的改良,由最开始的圭表、日晷、漏壶、漏箭、机械闹钟、秒表、沙漏、怀表、自摆钟、石英钟等。
单片机原理及系统课程设计专业:电气工程及其自动化班级:姓名:学号:指导教师:兰州交通大学自动化与电气工程学院2014 年1 月13 日单片机原理及系统课程设计报告基于单片机的作息时间控制器设计1. 课程设计目的(1)进一步熟悉和掌握单片机的最小系统结构及其工作原理。
(2)掌握单片机的接口技术和键盘扫描、数码管显示的原理及拓展使用方法。
(3)通过课程设计,提高综合运用所学知识的能力,掌握单片机程序设计、调试,应用电路设计、分析及调试检测。
2. 设计方案及原理本设计是作息时间控制器,设计其实现的功能主要有:使用4位七段显示器来显示当前的时间,由LED闪动作为秒计数表示,显示格式为“时分”,并可显示日期,显示格式为“月日”,年份单独显示。
由4个按键来作功能设置,可以设置现在的日期、时间及定时设置时间,一旦设置的时间到则作出相应动作:发光二极管闪亮,同时播放音乐。
单数码管显示模块片机最按键控制模块小系闹钟模块统系统方框图图13. 硬件设计3.1单片机AT89C52提供以下标准功能:8K字节FLASH闪存,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。
3.2 按键控制模块按键设定部分比较简单,因为本系统按键少,所以在设计上采用了独立按键方式,程序的编制上也采用了简单的扫描方式。
按键控制模块主要有由四个按键1单片机原理及系统课程设计报告组成:K1、K2、K3、K4、。
其中K1的功能是模式切换键;K2的作用是加一;K3的作用是闹钟使能;K4的作用是减一。
K1KKK按键控制模23.3 数码管显示模块时间显示模块主要由四位七段数码管来显示,配合按键控制模块的校正与设定时间,相应的显示。
单片机原理及应用课程设计报告目录目录 (1)1 设计任务书 (2)1.1 基本设计要求 (2)2 设计阐明 (2)12.1设计内容 (2)1.2设计要求 (2)1.3设备及工作环境 (3)3 系统方案整体设计 (3)3.1 设计思路 (4)3.2 系统整体框图 (4)4 硬件设计 (4)4.1 系统硬件设计 (4)4.1.1 键盘扫描 (5)4.1.2 LCD显示器 (5)4.2 系统工作原理论述 (5)5 软件设计 (5)5.1 分析论证 (5)5.1.1 显示模块 (6)5.1.2 运算模块 (6)5.1.3 校时模块 (6)3.1.4 启动/暂停,复位模块 (6)5.1.5 整体功效 (6)5.2程序清单 (7)6 调试过程及分析 (24)7 设计总结 (25)参考文献 (26)- 1 -单片机原理及应用课程设计报告1 设计任务书1.1 基本设计要求(1)在综合单片机实验箱的硬件结构上编写软件完成设计。
(2)程序的首地址应使目标机可以直接运行,即从0000H开端。
在主程序的开端部分必须设置一个合适的栈底。
程序放置的地址须持续且靠前,不要在中间留下大批的空间地址,以使目标机可以应用较少的硬件资源。
(3)2*16位LCD显示器从左到右分辨显示闹钟时间和现在时间,采用24小时标准计时制。
(4)在4个键控开关上选定2个键分辨作为小时. 分的调校键。
每按一次键,对应的显示值便加1。
分. 秒加到59后变为00;小时加到23后再按键即变为00.再调校时均不向上一单位进位(例如分加到59后变为00;但小时不产生转变)。
(5)软件设计应用片内定时器,采用定时中断结构,应用软件延时法。
2 设计阐明12.1设计内容用ZY15MCU12BD型综合单片机实验箱及串口电路设计实现显示现在时间和闹钟时间并能够调校现在时间和闹钟时间的时钟,还能够实现闹钟的复位功能以及广播和蜂鸣器的响应。
说明设计中包含的内容1.2设计要求(1)在ZY15MCU12BD型综合单片机实验箱的硬件结构上编写软件完成- 5 -单片机原理及应用课程设计报告设计。
可编程作息时间控制器设计Company number:【0089WT-8898YT-W8CCB-BUUT-202108】信息工程学院课程设计报告书题目: 可编程作息时间控制器设计专业:电子信息科学与技术班级:学号:学生姓名指导教师:2013 年 5 月 13日信息工程学院课程设计任务书年月日信息工程学院课程设计成绩评定表摘要本设计是可编程作息时间控制器设计,由单片机AT89C51芯片和LCD、LED显示器,辅以必要的电路,构成一个单片机四路可调闹钟。
电子钟可采用数字电路实现,也可以采用单片机来完成。
LCD 显示“时”,“分”,LED亮灯来表示闹钟的到来,定时时间到能发出警报声。
现在是自动化高度发达的时代,特别是电子类产品都是靠内部的控制电路来实现对产品的控制,达到自动运行的目的,这就需要我们这里要做的设计中的电器元件及电路的支持。
在这次设计中主要是用AT89S51来进行定时,也结合着其他辅助电路实施控制,在定时的时候,按一下控制小时的键对小时加一;按一下控制分钟的键对分钟加一;到达预设的时间,此电路就会发出报警声音提示已经到点。
关键字:四路可调闹钟 AT89C51 LCD目录1 任务提出与方案论证单片机型号的选择通过对多种单片机性能的分析,最终认为AT89C51是最理想的电子时钟开发芯片。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,而且它与MCS-51兼容,且具有4K字节可编程序存储器和1000次擦写循环,数据保留时间为10年,是最好的选择。
按键的选择本次设计按照题目要求使用独立式按键。
由于按键较少,在修改时间或设置闹铃时间时就不能直接输入,只能通过加或减完成,稍为麻烦一些,但其程序简单。
苏州科技学院天平学院单片机课程设计报告作息时间控制器设计姓名:王亚明学号:04专业班级:电气0921指导老师:徐树梅2012年6月2日目录1 概述 ........................................... 错误!未定义书签。
课程设计的目的和意义........................... 错误!未定义书签。
单片机课程设计的要求........................... 错误!未定义书签。
作息时间控制器的设计要求....................... 错误!未定义书签。
2 系统总体方案及硬件设计 (3)系统总体设计 (3)系统各个部分的电路设计 (4)3 软件的设计 (6)概述 (6)主模块的设计 (6)显示模块设计 (7)时间设定模块设计 (7)声光显示功能的实现 (8)4 Proteus软件仿真 (8)仿真结果 (8)性能及误差分析 (9)5课程设计体会 (10)参考文献 (10)附1 程序源代码 (10)附2原理图 (15)第一部分概述课程设计的目的和意义:综合利用所学单片机知识完成一个单片机应用系统设计并仿真、由硬件实现,从而加深对单片机软硬知识的理解,获得初步的应用经验,为走出校门从事单片机应用的相关工作打下良好基础。
单片机课程设计的要求:1、进一步熟悉和掌握单片机的内部结构和工作原理,了解单片机应用系统设计的基本方法和步骤;2、掌握单片机仿真软件Proteus的使用方法;3、掌握键盘和显示器在的单片机控制系统中的应用。
4、掌握撰写课程设计报告的方法。
作息时间控制器的设计要求:1、设计制作一个单片机数字钟及控制电路。
2、使用LED显示器来显示现在的时间。
显示格式为“时-分-秒”,由LED闪动作为秒计数表示。
3、可以设定作息时间,并进行到时提示。
4、能够根据预先设定好的作息时间表自动启停控制电路,完成对外部设备的实时控制。
5、可以设置现在的时间及显示定时设置时间。
扬州大学能源与动力工程学院题目:可编程作息时间控制器设计课程:单片机原理及应用课程设计专业:电气工程及其自动化班级:姓名:学号:第一部分任务书《单片机原理及应用》课程设计任务书一、课题名称详见《单片机课程设计题目(一)》:主要是软件仿真,利用Proteus软件进行仿真设计并调试;《单片机课程设计题目(二)》:主要是硬件设计,利用单片机周立功实验箱进行设计并调试。
二、课程设计目的课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它对帮助学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手能力、提高学生全面素质具有很重要的意义。
《单片机原理及应用》是一门理论性、实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。
单片机原理及应用课程设计的目的是让学生在理论学习的基础上,通过完成一个涉及MCS-51单片机多种资源应用并具有综合功能的小系统目标板的设计与编程应用,使学生不但能将课堂上学到的理论知识与实际应用结合起来,而且能进一步加深对电子电路、电子元器件等知识的认识与理解,同时在软件编程、排错调试、相关软件和仪器设备的使用技能等方面得到较全面的锻炼和提高。
为今后能够独立进行某些单片机应用系统的开发设计工作打下一定的基础。
通过单片机硬件和软件设计、调试、整理资料等环节的培训,使学生初步掌握工程设计方法和组织实践的基本技能,逐步熟悉开展科学实践的程序和方法。
三、课程设计内容设计以89C51单片机和外围元器件构成的单片机应用系统,并完成相应的软硬件调试。
1. 系统方案设计:综合运用单片机课程中所学到的理论知识,学生根据所选课题的任务、要求和条件进行总体方案的设计。
2. 硬件电路设计:对方案中以单片机为核心的电路进行设计计算,包括元器件的选择和电路参数的计算,并画出总体电路图。
3. 软件设计:根据已设计出的软件系统框图,用汇编语言或C51编制出各功能模块的子程序和整机软件系统的主程序。
目录一.课程设计目的 (1)二.设计要求 (2)2.1总体要求 (2)2.2具体要求 (2)三.设计内容及方法 (3)3.1设计准备 (3)3.2功能设计及系统总体设计 (3)四.硬件电路总体设计 (3)4.1硬件总框图 (3)4.1.1主控电路 (4)4.1.2 按键控制扫描模块 (5)4.1.3 DS1302实时时钟模块 (6)4.1.4 数码管显示模块 (8)4.1.5 LED显示模块 (9)4.1.6 扬声器模块 (10)4.2 硬件原理图 (12)五.软件流程框图及源程序 (12)5.1 流程框图 (12)5.1.1 主程序流程图 (12)5.1.2 蜂鸣器流程图 (14)5.1.3 流水灯程序流程图 (15)5.1.4 时钟显示流程图 (16)5.1.5 作息时间控制流程图 (17)5.2 源程序代码及注释 (18)六.调试情况及小结 (33)七.课程设计体会 (34)八.参考文献 (35)一、课程设计目的单片机原理及应用?课程设计是一项重要的实践性教育环节,是学生在校期间必须承受的一项工程训练。
在课程设计过程中,在教师指导下,运用工程的方法,通过一个简单课题的设计练习,可使学生初步体验单片机应用系统的设计过程、设计要求、完成工作内容和具体的设计方法,了解必须提交的各项工程文件,也到达稳固、充实和综合运用所学知识解决实际问题的目的。
通过课程设计,应能加强学生如下能力的培训:(1)独立工作能力和创造力;(2)查阅图书资料,产品手册和各种工具书的能力;(3)工程绘图的能力;(4)编写技术报告和编制技术资料的能力(5)综合运用专业及根底知识,解决实际工程技术问题的能力;二、设计要求2.1总体要求(1) 独立完成设计任务(2) 绘制系统硬件总框图(3) 绘制系统原理电路图(4) 制定编写设计方案,编制软件框图,完成详细完整的程序清单和注释;(5) 制定编写调试方案,编写用户操作使用说明书(6) 写出设计工作小结。
课程设计课程名称微机原理与应用学科名称SCM 作息时间控制器课程设计作业书课程名称微机原理与应用主题微控制器作息时间控制器,目录第 1 章引言 (7)1.1 简介及技术要求 (7)1.2 时序方案 (7)1.3 键盘/显示方案 (7)第二章硬件设计............................................................ 8 2.1 电路原理图 (8)2.2 系统工作流程 (9)2.3 系统使用说明 (10)第三章系统软件设计 (10)3.1 软件设计 (10)3.2 系统工作流程 (11)第4章程序模块设计。
(15)4.1 主程序模块 (16)4.2 定时中断服务程序模块 (18)4.3 扫描显示模块 (22)4.4 按键扫描子程序 (23)4.5 键值处理子程序……………………………………………………274.6 Shift键处理模块……………………………………………………30第五章调试与分析 (32)第 6 章课程总结 (33)参考 (34)附录 (35)第一章简介因为单片机种类多,模型复杂,我们学习起来也比较困难,所以对于MCS-51系列的产品来说,就是一种典型的学习方式。
对于类似于组装的MCU编程过程来说,这也是一个非常有趣的过程。
为了更好的说明,我先从应用电路入手,介绍它们的使用方法,以便我快速掌握它们的应用。
1.1 简介及技术要求校园作息时间控制系统主要用于学校,以24小时为周期自动控制一些开关量。
如钟声和扩音设备的开合,教学楼照明的定时开合,学生宿舍灯和校园路灯的定时开关的控制。
技术要求如下:(1)计时准确,月误差<=10%。
(2)有显示和上课时间功能。
(3)具有时间到时响铃的功能。
1.2 时序方案采用软件控制,利用MCS-51系列单片机的定时器/计数器进行数年计时,配合软件延时实现时分秒计时。
该方案节省了硬件成本,可以使读者锻炼和提高定时器/计数器的使用、年份和编程,因此本系统将采用软件的方式来实现计时。
单片机课程作息时间控制设计报告1. 引言单片机是现代电子技术的重要组成部分,在工业自动化、电子产品控制等领域都有广泛应用。
本次设计目的是通过单片机实现课程作息时间的自动控制,以解决学校师生在课程安排上的繁琐和误差问题。
2. 设计方案2.1 系统功能本系统通过采集外部的时间信息,并通过单片机进行处理和控制,最终实现对学校课程作息时间的自动控制。
2.2 硬件设计本系统的硬件设计主要包括单片机、时钟模块和显示模块。
单片机负责控制整个系统的运行以及与外部硬件的交互,时钟模块提供系统需要的准确时间信息,显示模块用于显示当前的时间和课程信息。
2.3 软件设计本系统的软件设计主要包括时间采集模块、时间处理模块和课程控制模块。
时间采集模块负责从时钟模块获取当前的时间信息,时间处理模块用于处理时间数据,课程控制模块根据时间数据决定当前课程的状态和下一节课的时间。
3. 工作流程3.1 初始化系统启动时,单片机初始化各个硬件模块,并从时钟模块获取当前的时间信息。
3.2 时间采集单片机通过时钟模块定时采集当前的时间信息,并将其存储在内部存储器中。
3.3 时间处理时间处理模块从内部存储器中读取当前的时间信息,并根据预设的课程时间表以及当前的时间,确定当前课程的状态(上课、下课或休息)。
3.4 课程控制课程控制模块根据当前课程的状态,通过单片机控制相关设备的开关,实现对课程作息时间的控制。
4. 技术难点4.1 时间信息的准确获取为了保证系统的准确性,需要选择一款精度较高的时钟模块,并采用合适的算法来处理时间数据。
4.2 课程时间表的灵活性不同学校的课程安排可能不同,因此需要设计一个灵活可变的课程时间表,以适应不同学校的需求。
5. 结论通过单片机实现课程作息时间的自动控制,可以提高学校课程安排的效率,减少学生和老师的繁琐操作。
本设计报告详细介绍了系统的硬件和软件设计,以及系统的工作流程和技术难点。
在实际应用中,可以根据具体需求进行相应的改进和调整,以满足不同学校的需求。
单片机系统课程设计成绩评定表设计课题:可编程作息时间控制器设计学院名称:电气工程学院专业班级:学生姓名:学号:指导教师:设计地点:设计时间:单片机系统课程设计课程设计名称:可编程作息时间控制器设计专业班级:学生姓名:学号:指导教师:课程设计地点:课程设计时间:单片机系统课程设计任务书1、引言 (1)1.1研究背景和用途 (4)1.2设计思想及基本功能 (4)1.3研究内容及采方法 (4)(1)主要研究内容 (4)(2)主要采用方法 (5)2、总体设计方案 (5)2.1 方案选取 (5)2.2系统框图 (5)2.3系统工作原理 (6)3、硬件电路及芯片介绍 (6)3.1 AT89C51单片机 (6)3.2 1602LCD液晶显示器 (9)3.3其他重要元件 (10)(1) 独立式键盘的接口电路: (10)(2)蜂鸣器: (11)3.4硬件电路设计图 (12)4、系统软件设计 (12)4.1主程序软件设计 (12)4.2键盘扫描程序设计 (13)4.3时钟调节程序设计 (14)4.4闹钟时间调节程序设计 (15)4.5闹钟时间判断子程序设计 (16)5、总结 (17)参考文献 (18)附录: (19)1、引言1.1研究背景和用途20世纪末,电子技术得到了飞速的发展。
在其推动下,现代电子产品乎渗透到了社会的各个领域,有力的推动和提高了社会生产力的发展与信息化程度,同时也使现代电子产品性能进一步提升,产品更新换代的节奏也越来越快。
时间对于人来说总是那么珍贵,工作的忙碌性和繁杂让人容易忘记当前时间。
然而遇到重大事情的时候,一旦忘记时间,就会给自己或他人造成更大的麻烦。
对于学校来说作息时间尤为重要。
如今,在电子计算机基础上发展而来的可编程作息时间控制器,它可以利用电子计算机的内部时间,通过程序判断处理,完成对作息时间的精确控制,并且由于是程序控制,所以可通过改变程序而进而灵活改变作息时间,同时可以实时显示时间,并实现打铃功能。
可编程时间控制器可实现对时间控制的智能化,摆脱由人控制时间的长短不同的不便,并且可以在必要时人工切入控制,完美的满足作息时间控制。
1.2设计思想及基本功能该系统能够实现以往的人工控制时间具有的功能,即到达所规定的时间后打铃的功能,再次功能的前提下,还具有以往方式不具备的时间显示功能。
在选取设计方案和采取元器件方面,该系统本着简单实用经济的思想,尽量简化电路,以最经济的方式达到设计要求。
可编程作息时间控制器具备以下功能:(1)可以通过键盘进行时间设定(2)具有屏幕显示的功能(3)到达所设定的时间,能够进行上下课打铃。
1.3研究内容及采方法(1)主要研究内容用C语言编写作息时间控制程序,按照给定的时间模拟控制,上下课打铃、灯光控制(屏幕显示),并且具备日期和时钟显示。
给定的时间可修改,可模拟手动控制,用扬声器模拟打铃。
(2)主要采用方法程需要用到延时程序,所以把延时程序单独做成一个子程序,然后在需要的时候调用它,使得时间显示程序更加精炼,此时日期和时钟显示功能已经完成;而后设计灯光控制(屏幕显示),采用比较跳转的方式即可,当到达设定的时间区域时通过比较来判断是亮灯还是灭灯;随后是上下课打铃的模拟,需要调用DOS 显示功能,将设定好的时间在屏幕上显示出来,然后调用PC机内部时钟,判断时钟与给定时间是否相同,进而判断是否响铃,若响铃则调用设定好的响铃程序,并实现屏幕模拟显示;给定时间修改是调用键盘I/O中断功能号,获取键值的方法来进入,先确定应该修改哪个响铃,再将新的响铃时间数据存入要修改时钟的缓冲区,并将其覆盖来实现;模拟手动控制、用扬声器模拟打铃,同样采用调用键盘I/O中断功能号,获取键值的方法,判断是否与设定的手动按键相同,若相同则进入手动控制,进入后调用响铃程序,而后自动退出响铃,开始其他响应功能。
2、总体设计方案2.1 方案选取通常通过单片机对时钟模块进行设计有两种方案:一是通过单片机内部的定时器计数器,采用软件编程实现时钟技术,一般为软时钟,这个方法硬件线路简单,系统功能一般与软件设计有关,通常用在对时间精度要求不高的场所;二是采用时钟芯,它的功能强大,功能部件集中在芯片内部,自动产生时钟等相关功能。
硬件成本相对较高,软件编程简单。
通常用在对时钟要求较高的场所。
综合两者特点,此次设计精度不高,而且根据设计思想的经济性,采用第一种方案。
2.2系统框图系统框图2.3系统工作原理使用AT89C51单片机结合字符型LCD显示器设计一个简易的可编程作息时间控制器,若LCD选择有背光显示的模块,在夜晚或黑暗的场合中也可使用。
程序执行后工作指示灯LED闪动,表示程序开始执行,同时显示系统时间。
作息时间控制器是由4路可调闹钟组成,从而实现打铃等功能。
当四路闹钟中的任一路到时,均会点亮灯、打铃。
其中操作键K1~K4的功能分别为:设置限制的时间/时的调整、显示闹钟设置的时间/分的调整、设置闹钟的时间/设置完成、闹钟更换。
3、硬件电路及芯片介绍3.1 AT89C51单片机本设计的核心硬件就是8051芯片,这里选择了AT89C51,AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
图3.1 AT89C51引脚图引脚及其功能:P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL 门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下所示:P3口管脚备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
PSEN:外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
P1.0口接K1按键,P1.1口接K2按键,P1.2口接K3按键,P1.3口接K4按键,P2.0口接RS口,P2.1口接RW口,P2.2口接E口,P2.3口接发光二极管D2阳极,P2.4口接发光二极管D1阳极,P2.5口接电阻R3,P3口的8个口依次和LCD的数据口D0~D7.3.2 1602LCD液晶显示器LM016L 液晶模块采用HD44780 控制器。
HD44780 具有简单而功能较强的指令集,可以实现字符移动、闪烁等功能。
LM016L 与单片机MCU (Microcontroller Unit)通讯可采用8 位或者4 位并行传输两种方式。
HD44780 控制器由两个8 位寄存器、指令寄存器(IR)和数据寄存器(DR)、忙标志(BF)、显示数据RAM(DDRAM)、字符发生器ROM(CGROM)、字符发生器RAM (CGRAM)、地址计数器(AC)。
IR 用于寄存指令码,只能写入不能读出;DR 用于寄存数据,数据由内部操作自动写入DDRAM和CGRAM,或者暂存从DDRAM和CGRAM 读出的数据。
BF 为1 时,液晶模块处于内部处理模式,不响应外部操作指令和接受数据。
DDRAM 用来存储显示的字符,能存储80 个字符码。
CGROM 由8 位字符码生成5*7 点阵字符160 种和5*10 点阵字符32 种,8 位字符编码和字符的对应关系,可以查看参考文献[3]中的表4。
CGRAM 是为用户编写特殊字符留用的,它的容量仅64 字节。
可以自定义8 个5*7 点阵字符或者4 个5*10 点阵字符。
AC 可以存储DDRAM 和CGRAM的地址,如果地址码随指令写入IR,则IR 自动把地址码装入AC,同时选择DDRAM 或者CGRAM 单元。