单片机作息时间控制系统设计.docx

上传人:b****3 文档编号:1092051 上传时间:2022-10-16 格式:DOCX 页数:27 大小:217.50KB
下载 相关 举报
单片机作息时间控制系统设计.docx_第1页
第1页 / 共27页
单片机作息时间控制系统设计.docx_第2页
第2页 / 共27页
单片机作息时间控制系统设计.docx_第3页
第3页 / 共27页
单片机作息时间控制系统设计.docx_第4页
第4页 / 共27页
单片机作息时间控制系统设计.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

单片机作息时间控制系统设计.docx

《单片机作息时间控制系统设计.docx》由会员分享,可在线阅读,更多相关《单片机作息时间控制系统设计.docx(27页珍藏版)》请在冰豆网上搜索。

单片机作息时间控制系统设计.docx

单片机作息时间控制系统设计

 

单片机作息时间控制系统设计

目录

第一章绪论3

1.1课题的提出及意义3

1.2设计的任务及要求3

第二章总体方案设计3

2.1芯片比较3

2.1.1单片机选型3

2.1.3存储器的选择7

2.1.4继电器的选择8

2.2总体设计及系统原理9

第三章硬件设计10

3.1单片机部分10

3.1.1AT89C5210

3.2存储器部分13

3.5电源与复位电路部分23

3.5.1电源部分23

3.5.2复位电路23

3.6电铃和继电器部分24

3.7按键部分24

第四章软件设计25

4.1主程序设计25

4.2子程序设计27

第五章系统安装与调试28

5.1软件调试28

5.2系统调试28

参考文献29

第一章绪论

1.1课题的提出及意义

单片机作息时间控制实现了对时间控制的智能化,摆脱了传统由人来控制时间的长短的不便,实现代学校必不可少的设备。

1.2设计的任务及要求

1.作息时间能控制电铃

2.作息时间能启动和关闭放音机

单片机作息时间控制的功能如下:

●使用4位七段显示器来显示现在的时间。

●显示格式为“时分”

●由LED闪动来作秒计数表示

●具有4个按键来作功能设置,可以设置现在的时间及显示定时设置时间

●一旦时间到则发出一阵声响,同时继电器启动,可以控制放音机开启和关闭。

 

第二章总体方案设计

2.1芯片比较

2.1.1单片机选型

当今单片机厂商琳琅满目,产品性能各异。

常用的单片机有很多种:

Intel8051系列、Motorola和M68HC系列、Atmel的AT89系列、台湾Winbond(华邦)W78系列、荷兰Pilips的PCF80C51系列、Microchip公司的PIC系列、Zilog的Z86系列、Atmel的AT90S系列、韩国三星公司的KS57C系列4位单片机、台湾义隆的EM-78系列等。

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

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

2.1.2显示器接口芯片的选择

LED显示器接口芯片的选择常用的显示器接口芯片有CD4511,CD4513,MC14499,8279,MAX7219,74HC164等,它们的功能有:

1.CPU接受来自键盘的输入数据,并作预处理;2.数据显示的管理和数据显示器的控制。

CD4511是BCD锁存,7段译码,驱动器,但在显示6和9时,显示为b和q,不是很好看。

CD4513是BCD锁存,7段译码,驱动器(消隐),但现在市面上不好买。

MC14499为串行输入BCD码——十进制译码驱动器,用它来构成单片机应用系统的显示器接口,可以大大减少I/O口线的占用数量。

但是,由片内震荡器经过四分频的信号,经位译码后只能提供4个位控信号,使信号的采集受到限制;并且,MC19944的价格偏高,也不经济。

同样,8279为INTEL公司生产的通用键盘/显示器接口芯片,其内部设有16*8显示数据RAM,若采用8279管理键盘和显示器,可以减少软件程序,从而减轻主机的负担,但我们同时也发现,由于其功能比较强大,不可避免将会使外围设备与操作过程复杂化,同时价格比较贵。

对比一下MAX7219和

74HC164其占用资源少,且不需复杂的驱动电路。

但MAX7219虽然比较好用,且一片能驱动四个数码管,但对于我们设计的系统来说,不需要很多数码管,此外MAX7219相对74HC164的价格也比较贵,所以我们最终选用74HC164,下面对MAX7219作一下介绍。

特点:

(1)采用3线串行接口传送数据;

(2)内部有8字节显示静态RAM和6个特殊功能寄存器,相当于14个字节的RAM单元。

它们是可寻址的,即可以有选择的任意写入;

(3)只需一个外部电阻即可调节LED的段电流,并且允许程控方式LED通电的占空比而可方便的调节LED显示的亮度,或用于模拟亮度显示;

(4)可LED显示器的扫描个数;

(5)有不译码和B码两种显示模式,这种选择可做到位控,即各LED显示器可以有不同的显示方式:

译码或不译码;

(6)含硬件动态扫描显示控制,可设置低功耗方式,可进行图条显示。

引脚图(如图2-1)

图2-1

说明:

引脚

名称

作用

1

DIN

串行数据输入。

在CLK上升沿时,数据被装入内部16位移位寄存器。

2,3,5–8,

10,11

DIG0–DIG7

八个数字驱动器线路,来自共阴极显示器的反向电流。

MAX7219当关闭的时候拉位输出到V+.当关闭的时候MAX7221的位驱动器是高阻抗状态。

4,9

GND

地(两个GND引脚必须被连接在一起)

12

LOAD

装载数据输入。

串行数据的最后16位被锁存在LOAD的上升沿。

CS

片选输入。

当/CS是低电平时穿行数据被装载到移位寄存器中。

在/CS上升沿时串行数据的最后16位被锁存。

13

CLK

串行时钟输入。

10MHz的最大比率。

在CLK上升沿时,数据被转移到内部移位寄存器。

在CLK下降沿时,数据从DOUT输出。

在MAX7221中只有/CS是低电平时CLK输入被激活。

14–17,

20–23

SEGA–SEGG,DP

七段驱动和小数点驱动电源电流显示。

在MAX7219中,当段驱动器被关闭,它就被接到地。

当关闭以后MAX7221的段驱动器成高阻状态。

18

ISET

通过一只电阻器(RSET)连接VDD来设置最高段电流(查阅选择RSET电阻器部分)。

19

V+

正供给电压。

连接到+5V。

24

DOUT

串行数据输出。

进入DIN的数据16.5个时钟周期以后在DOUT有效。

这个引脚常被用来链接MAX7219/MAX7221,没有高阻状态。

工作原理简介

数据(含地址)接收

MAX7219采用串行寻址方式,在传送的串行数据中包含有RAM的地址。

按照时序的要求,单片机将16位二进制数逐位发送DIN端,在CLK上升延到来之前DIN必须有效,在CLK的每个上升延,DIN被串行逐位移入MAX7219内部的16位穿行寄存器中。

设最先移入的数据是D15,最后移入的数据是D0,则移入16位串行寄存器的数据是D15--D0。

为了有选择的将数据写入8个显示RAM或6个特殊功能寄存器,D0—D15中,D8—D11四位作为RAM和特殊功能寄存器的地址,D0—D7作为写入显示数据或控制字。

与并行数据传送相比,MAX7219串行接收D0—D15并存放到16位串行寄存器中的过程,相当于并行传送中,将并行数据和地址送到数据和地址总线上的过程。

数据装载

16位接收寄存器将收到的D0—D7位数据写入RAM或特殊功能寄存器是在数据装载信号控制下完成的。

图3-8是MAX7219的数据接收装载(写入)时序图,由图可知,LOAD必须在15个CLK下降延前由高变低,在16个CLK同时或之后由低变高(上升延)。

在LOAD的上升延,8位数据D0—D7写入以4位二进制数D8—D11位地址的RAM或特殊功能寄存器中。

显示扫描

当显示模式设定后,写入显示RAM的数据将在控制器的控制下,按设定的显示模式,以动态扫描方式进行显示。

MAX7219内部显示RAM及特殊功能寄存器

显示RAM(地址*1—*8)

地址为*1H的RAM数据控制接D0引脚的显示器,地址为*2H的RAM数据控制接D1引脚的显示器。

译码方式寄存器(地址:

*9H)

该寄存器的8位二进制数的各位值分别控制着8个LED显示器的译码方式。

当高电平时选择BCD-B码译码模式,当低电平时选择不译码模式。

B码译码的显示自行与现实数据的关系如下:

显示数据

(十六进制)0123456789ABCDEF

B码字型0123456789–EHLP*

其中,*代表全灭。

小数点不译码,它由显示数据的D7位控制。

扫描界限寄存器(地址:

*BH)

该寄存器的D0—D3位数据设定值为0—7,设定值表示显示器动态扫描个数为1—8。

停机寄存器(地址:

*CH)

当位D0=0时,MAX7219处于停机状态;当D0=1时,处于正常工作状态。

显示测试寄存器(地址:

*FH)

当位D0=0时,MAX7219按设定模式正常工作;当D0=1时,处于测试状态。

在该状态下,不管MAX7219处于什么模式,全部LED将按最大亮度接通显示。

亮度寄存器(地址:

*AH)及两度的调解或控制

亮度可通过硬件和软件两种方法调解或控制。

2.1.3存储器的选择

为了改善主CPU的资源与时序的分配,我们对AT89C51进行串行数据存储器的扩展。

常用的存储芯片有很多,如AT93C46/56/66,X5045。

经过比较选择,最终选用了XICOR公司的X5045。

X5045把三种常用的功能:

看门狗定时器,电压控制和EEPROM组合在单个封装之内。

这种组合降低了系统的成本并减少了对电路板空间的要求。

看门狗定时器对微控制器提供了独立的保护系统。

低VCC检测电路可以保护系统免受低电压的影响,同时X5045是串行EEPROM具有简单的三总线工作的串行外设接口,是一种有独特功能的高性能价格比存储器件。

AT93C46/56/66是ATMEL公司推出的低功耗、低电压电可擦除的可编程只读存储器。

它采用CMOS技术和FairchildSemiconductor公司的Mi-croWire工业标准3线串行接口,具有1Kb/2kB/4kB的容量,并可通过ORG管脚配置成128*8/256*8/512*8或64*16/128*16256*16等结构。

该系列存储器可靠性高,能够重复写100万次,数据可以保存100年不丢失;采用8脚PDIP/SOIC封装和14脚SOI封装(SOI封装为JEDEC和EIAJ标准),与并行的EEPROM相比,AT93C46/56/66可大大节省印制板空间,且接线简单,因而在多功能的精密测试仪中具有广阔的前途。

引脚功能

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首先将处于擦/写不允许状态。

故该指令必须在所有编程模式前执行

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1