基于单片机的时间控制系统

更新时间:2023-10-28 02:14:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于单片机的时间控制系统 毕业论文 基于单片机的时间控制系统

摘要

学校时间方面,由于时间多,时间乱等原因,不得不去改善其时间方面的设备。单片机作息时间控制实现了对时间控制的智能化,摆脱了传统由人来控制时间长短的不便,是现代学校必不可少的设备。在整个设计中,我们主要用的是单片机的自动控制原理,包括硬件和软件。在硬件部分,包括继电器,存储器和显示器接口芯片;软件部分,主要是主程序设计。软硬件结合在一起,先调试子程序,然后逐级叠加调试,最后系统调试通过。

在本论文中我是利用单片机把自动复位电路,显示电路,电源电路,继电器电路,电铃电路连接起来,再通过单片机的编程实现设计要求。单片机作息时间控制系统是利用定时器计时处理来做秒计数,当所设置的时间到了,则发出一阵声响,启动继电器,由继电器可以控制放音机开启或关闭。时,分,秒数据是存在变量内并写入七段显示器的缓冲区内,由显示器扫描程序中定时扫描而显示出时间。

关键词:单片机;定时;显示

1

基于单片机的时间控制系统

Abstract

With the continuous development of scientific progress, all walks of life continue to improve and update technology in school time, as time is over, time disorder and other reasons, had to improve their timing equipment. SCM rest time control to achieve the intelligent control of time, from the traditional by people to control the duration of the inconvenience it is essential to the modern school facilities. Throughout the design, we mainly used the automatic control of microcomputer principles, including hardware and software. On the hardware parts, including relays, memory and display interface chip; software components, mainly the main program design. Hardware and software together, the first debugging subroutines, and then stack one level debugging, the final system debugging through.

In this paper, I have to use microcontroller to automatically reset circuit, display circuit, power supply circuits, relay circuit, electric bell circuit connected, and through the MCU programming design requirements. SCM rest time control system is to use the timer to do time dealing with seconds count, when the set time is up, then a flurry of sound, start relay, Radio Cassette Recorder can be controlled by the relay on or off. Hours, minutes, seconds, there is a variable data is within the seven-segment display and write within the buffer by the display scanning program regularly scans and show the time. Keywords: microcontroller,;timing; display

2

基于单片机的时间控制系统

1 概述

科技的进步需要技术不断的提升。一块大而复杂的模拟电路花费了您巨大的精力,繁多的元器件增加了您的成本。而现在,只需要一块几厘米见方的单片机,写入简单的程序,就可以使您以前的电路简单很多。相信您在使用并掌握了单片机技术后,不管在您今后开发或是工作上, 一定会带来意想不到的惊喜。

单片机应用系统是以单片机为核心,配以输入、输出、显示、控制等外围部件和软件,能实现一种或多种功能的实用系统。硬件是应用系统的基础,软件则在硬件的基础上对其资源进行合理调配和使用,从而完成应用系统所要求的任务,二者相互依赖,却一不可。软件和硬件总体包括,电源电路、显示电路、复位电路、扩展存储器、电铃电路等,通过以上几部分的组合,最终达到一定的效果。

设计系统图如图1.1所示:

图1-1系统连接图

3

基于单片机的时间控制系统

2 硬件设计

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

2.1.2 AT89C51的功能概述

(1)、特点:

1.与MCS-51产品指令和引脚完全兼容。 2.8K字节可重擦写FLASH闪存。 3.1000次擦写周期。 4.全静态操作:0Hz-24MHz。 5.三级加密程序存储器。 6.256X8字节内部RAM。 7.32个可编程I/O口线。 8.2个16位定时/计数器。 9.5个中断源。

10.可编程串行UART通道。 11.低功耗空闲和掉电模式。 (2)、功能特性概述:

AT89C51提供以下标准功能:8K字节FLASH闪存,256字节内部RAM,32个I/O口线,2个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,

4

基于单片机的时间控制系统

主程序开始 继电器OFF,消除电铃标志 初始化变量 初始化定时器 LED闪动,表示程序开始执行 扫描显示器更新时间数据,定时时间到 是否按K1、K2、K3、K4键? K1:设置现在的时间 K2:显示定时设置时间 K3:设置定时时间 K4:电铃ON/OFF

图3-1 主程序控制的工作流程

15

基于单片机的时间控制系统

3.2 子程序设计

主要控制子程序说明如下:

(1) T0_INT:定时器0计时中断程序每隔5ms中断一次。 (2) DELAY:延时子程序。

(3) DELAY1:控制七段显示器延时时间。 (4) LED_BL:工作LED闪动控制。 (5) SCAN1:七段显示器扫描一遍。

(6) LOAD_DATA:加载七段显示器显示数据“0”。 (7) INIT:初始化控制变量。

(8) INIT_TIMER:初始化定时器接口,使用定时器0模式0计时。 (9) TIME_PRO:更新时分秒数据。

(10) CONV1:将分及秒的数据转化为七段显示器显示数据并写入显示内存内。

(11) CONV:将时及分的数据转换为七段显示器显示数据并写入显示内存内。

(12) SET_TIME:设置现在的时间包括小时及分钟。

(13) TIME_OUT:过了1S后则更新时间并检查定时时间是否到了。 (14) LOOK_ATIME:查看已设置的定时时间。

(15) CONVA:转换定时时间时分数据为七段显示器显示数据并写入显示内存。

(16) SET_ATIME:设置定时时间。 子程序流程图如下:

16

基于单片机的时间控制系统

子程序入口

N Y

图3-2子程序流程图

子程序返回 送下一串数据 数据传送结束了吗 送数显示 查表 读取数据 设置SCON 17

基于单片机的时间控制系统

3.2.1时间作息程序

程序如下:

ORG 0000H LJMP MAIN ORG 000BH 显示子程序:

LJMP CTCO MAIN:MOV TMOD,#11H MOV TH0,#30H MOV TL0,#0B0H MOV 50H,#00H MOV 51H,#00H MOV 52H,#00H MOV 47H,#00H MOV P3,#00H MOV R7,#20 ORL IE,#82H

SETB PT0 SETB TR0 W1:LCALL TIME LCALL PTDS LCALL DISPLAY LCALL ANJIAN

LJMP W1

DISPLAY:MOV R0,#30H

MOV R3,#01H MOV DPTR,#TAB N1:MOV A,@R0 MOVC A,@A+DPTR

MOV P0,A MOV P1,R3 LCALL DEALY MOV A,R3

18

基于单片机的时间控制系统

JB ACC.5,BACK1

RL A MOV R3,A INC R0 LJMP N1 BACK1:RET

送数子程序:

延时子程序:

中断服务程序:

PTDS:MOV R0,#30H

,#50H ,#03H :MOV A,@R1 ,#0FH ,A ,@R1 ,#0FH ,A ,NEXT DEALY:MOV R5,#05

,#00H ,$ ,LOOP2 :DB 3FH,06H,5BH,4FH,66H ,7DH,07H,7FH,6FH CTCO:PUSH ACC

,BACK

19

MOV R1 MOV R2 NEXT ANL A MOV @R0 INC R0 MOV A SWAP A ANL A MOV @R0 INC R1 INC R0 DJNZ R2 RET LOOP2: MOV R6 DJNZ R6 DJNZ R5 RET

TAB DB 6DH PUSH PSW DJNZ R7

本文来源:https://www.bwwdw.com/article/x5q2.html

Top