当前位置:文档之家› 基于单片机的作息时间控制

基于单片机的作息时间控制

基于单片机的作息时间控制江宁校区09机电一体化刘荣指导老师赵华【摘要】目前,我国单片机的应用领域主要是工业生产过程控制,数据采集与处理、实时控制及优化控制。

单片机应用带来了巨大的经济效益,提高了效率,降低了成本,提高了产品质量,推动着生产力的发展。

本次设计主要介绍单片机的应用实例,加深了对单片机的理解,进一步开拓视野,为今后应用微机解决生产实际问题起了一个入门的作用。

通过本次设计,我掌握了解决问题的思路和方法.使自己分析问题和解决问题的能力大为提高。

关键字:单片机接口芯片寄存器目录1 课题目的意义 (1)1. 1 课题的提出及意义 (2)2 总体方案设计 (3)2. 1总体设计及系统原理………………………………………………………………12-132. 2 芯片比较 (3)2.2.1 单片机选型…………………………………………………………………………3-42.2.2键盘显示器接口芯片8279的使用………………………………………………… 4-72.2.3存储器的选择…………………………………………………………………………7-92.2.4继电器的选择………………………………………………………………………9-123 硬件设计 (13)3.1寄存器部分…………………………………………………………………………22-253.2 电源与复位电路部分 (25)3.2.1电源部分 (25)3.2.2复位电路 (25)3.3 电铃和继电器部分 (26)4 软件设计 (27)4.1 主程序设计 (27)4. 2 子程序设计 (29)5 系统安装与调试 (31)5.1 软件调试 (31)5.2 系统调试 (31)致谢 (31)参考文献 (32)1 课题目的意义1. 1 课题的提出及意义单片机作息时间控制实现了对时间控制的智能化,摆脱了传统由人来控制时间的长短的不便,是现代学校必不可少的设备。

2 总体方案设计2. 1总体设计及系统原理在确定系统的大体形式之后,画出本系统的结构布局,电路原理如图2-2所示。

图2-2显示电路自动复位电路 电源电路 继电器电路 单 片机电铃电路2. 2 芯片比较2.2.1 单片机选型当今单片机厂商琳琅满目,产品性能各异。

常用的单片机有很多种:Intel8051系列、Motorola和M68HC系列、Atmel的AT89系列、荷兰Pilips的PCF80C51系列、Microchip公司的PIC系列、Atmel的AT90S系列、韩国三星公司的KS57C系列4位单片机、台湾义隆的EM-78系列等。

我们最终选用了ATMEL公司的AT89C52单片机。

AT89C52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8Kbytes的可反复擦写的只读程序存储器(PEROM)和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和FLASH存储单元,功能强大AT89C52单片机适用于许多较为复杂控制应用场合。

2.2.2键盘显示器接口芯片8279的使用单片机系统中有两种 LED显示方式,即静态显示和动态显示,静态显示的优点是显示效果好,编程简单,但由于输出的每一位都需要锁存,使用的硬件较多;动态显示方式中,各位数码管的a–h端并连在一起,每一时刻只有一位数码管被点亮,各位依次轮流被点亮,硬件电路简单,但由于需要不停地进行刷新显示,降低了CPU的效率,而且编程的工作量很大。

为了解决动态显示中存在的问题,Intel 公司研制出了专用的键盘、显示器接口电路芯片8279,该芯片能自动完成对显示的刷新,同时还可以对键盘自动扫描,识别闭合键的键号,使用非常方便。

8279用A0来区分信息特征,当A0为0时,CPU 从8279读出的是状态,写入的是命令,且每个命令也有自己的特征;当A0=1时读出和写入的都是数据。

8279内部有两个缓冲区,即一个8字节的FIFO(First In First Out)键盘RAM和一个16字节的显示RAM,显示数据时只要将待显示数据的段码写入显示RAM即可;当有键闭合时,8279会自动执行去抖、得到键值、等待按键释放等操作,最后,将键值存入FIFO RAM中,程序只需从FIFO中读取键值即可,编程十分简单,具体实验线路图17所示。

8279键盘、显示器接口器件是实现人机对话的主要部件,它已为广大用户欢迎和广泛应用。

然而在有些应用场合,既要键盘具有普通的数据输入和控制功能,又要键盘具备按钮功能。

例如,微机控制的注塑机,在手动控制时需要有点动功能:按钮按下进行调模运动,按钮松开,调模运动停止。

本文介绍使8279构成的键盘具有以上功能的实现方法,供读者参考使用。

为了使8279具有合适的键盘、显示功能,首先要对芯片初始化。

可适当地挑选8279的控制字,例如:使8279具有8位显示、右端输入、编码键盘、双键锁定时可选控制字10H.这时每次按键都将产生键特征码,并且存放在FIFOROM中,同时使8279的IRQ 引脚变为高电平,可作为向CPU申请中断信号,如果CPU是中断开放的,则转向中断服务程序,可在中断服务程序中读取特征码。

每当CPU读取FIFOROM中的数据后,8279自动撤消IRQ信号,IRQ引脚变为低电平。

CPU返回主程序后,可由键特征码来决定程序的流向。

问题是,当CPU从8279的FIFOROM中读取键特征码后,IRQ虽然恢复底电平,但FIFOROM中的数据并没有消失,仍保存在里面,这时即使使用对改8279清除的指令D3H,也不能将FIFOROM中的数改变,只有按其它键才能改变FIFOROM中的数据,因这样是无法实现按钮功能的。

为了使键盘具有按钮功能,应该利用8279的传感方式功能,在传感器方式中,8279每当检测到传感状态变化时,IRQ 就变为高电平,图1是以8031CPU 构成的系统为例,说明IRQ 引脚电平的翻新过程。

8279的IRQ 端经反相器接到8031的INT1端(即P3.3引脚)。

先将8279设置成编码键盘,允许INT1中断,当键按下时,反相器输出低电平,CPU 进入中断服务程序,读取键特征码后,又为高电平。

返回主程序后,转向功能程序(例如调模进)。

输出控制信号(例如P1.0为“1”时调模进电磁阀得电)后,将8279设置为传感器方式,并且不允许INT1中断,然后调试P3.3是否为低电平。

如果按键松开,8279将测出传感器状态发生变化,而使IRQ 由低电平转为高电平。

也就是说P3.3脚为低电平时,按键已经松开,程序重新设置8279为编码键盘,INT1中断开放,以便使键盘脱离按钮功能。

实现以上功能的程序清单如下:中断服务程序略,以上方法在注塑机控制器上使用,证明是完全正确的。

2.2.3存储器的选择由于计算机集成芯片技术的发展,存储器的价格已下降,因此,为保证应用项目的正常投运,一般要求PLC的存储器容量,按256个I/O点至少选8K存储器选择。

需要复杂控制功能时,应选择容量更大,档次更高的存储器。

(一)冗余功能的选择1、控制单元的冗余(1)重要的过程单元:CPU及电源均应1比1冗余。

(2)在需要时也可选用PLC硬件与热备软件构成的热备冗余系统、2重化或3重化冗余容错系统等。

2、I/O接口单元的冗余(1)控制回路的多点I/O卡冗余配置。

(2)重要检测点的多点I/O卡可冗余配置。

(3)根据需要对重要的I/O信号,可选用2重化或3重化的I/O接口单元。

(二)经济性的考虑选择PLC时,应考虑性能价格比。

考虑经济性时,应同时考虑应用的可扩展性、可操作性、投入产出比等因素,进行比较和兼顾,最终选出较满意的产品。

输入输出点对价格有直接影响。

每增加一块输入输出卡件就需增加一定的费用。

当点数增加到一数值后,相应的存储器容量、机架、母板等也要相应增加,因此,点数的增加对CPU选用、存储器容量、控制功能范围等选择都有影响。

在估算和选用时应充分考虑,使整个控制系统有较合理的性能价格比。

引脚功能CS:片选信号。

高电平有效,低电平时进入等待模式。

在连续的指令之间,CS信号必须持续至少250ns的低电平,才能保证芯片正常工作。

CLK:串行时钟信号。

在CLK的上升沿,操作码、地址和数据位进入器件或从器件输出。

在发送序列时,CLK最好不停止,以防止读/写数据的错误。

DI:串行数据输入。

可在CLK的同步下输入开始位、操作码、地址位和数据位。

DO:串行数据输出。

在CLK同步下读周期时,用于输出数据;而在地址擦/写周期或芯片擦/写周期时,该端用于提供忙/闲信息。

VSS:接地。

VCC:接+5V电源。

ORG:存贮器构造配置端。

该端接VCC或悬空时,输出为16位;接GND时,输出为8位。

指令及时序地址擦指令(ERASE)该指令用于强迫指定地址中所有数据位都为“1”。

一旦信息在DI端上被译码,就需使CS信号保持至少250ns的低电平,然后将CS置为高电平,这时,DO端就会指示“忙”标志。

DO为“0”,表示编程正在进行;DO为“1”,表示该指定地址的寄存器单元已擦完,可以执行下一条指令。

擦/写允许指令(EWEN)由于在上电复位后 AT93C46/56/66首先将处于擦/写不允许状态。

故该指令必须在所有编程模式前执行,一旦该指令执行后,只要外部没有断电就可以对芯片进行编程。

地址写指令(WRITE)写指令时,先写地址,然后将16位的或8位数据写入到指定地址中。

当DI端输出最后一个数据位后,在CLK时钟的下一个上升沿以前,CS必须为低,且需至少保持250ns,然后将CS置为高电平。

地址读指令(READ)读指令用于从指定的单元中把数据从高位到低位输出至DO端,但逻辑“0”位先于数据位输出。

芯片擦指令(ERAL)该指令可将整个存贮器阵列置为1,其它功能与地址擦指令相同。

芯片写指令(WRAL)该指令可将命令中指定的数据写入整个存贮器阵列,其它功能与地址写指令相同。

该指令周期所花费时间的最大值为30ms。

擦/写禁止指令(EWDS)使用该指令可对写入的数据进行保护,操作步骤与擦/写允许指令相同。

2.2.4 继电器的选择1)按使用环境选型使用环境条件主要指温度、湿度、低气压、振动和冲击。

此外,尚有封装方式、安装方法、外形尺寸及绝缘性等要求。

由于材料和结构不同,继电器承受的环境力学条件各异,超过产品标准规定的环境力学条件下使用,有可能损坏继电器,可按整机的环境力学条件或高一级的条件选用。

对电磁干扰或射频干扰比较敏感的装置周围,最好不要选用交流电激励的继电器。

选用直流继电器要选用带线圈瞬态抑制电路的产品。

2)按输入信号不同确定继电器种类按输入信号是电、温度、时间、光信号确定选用电磁、温度、时间、光电继电器,这是没有问题的。

相关主题