收藏 分销(赏)

自动打铃系统设计.doc

上传人:天**** 文档编号:2627146 上传时间:2024-06-03 格式:DOC 页数:42 大小:802.54KB
下载 相关 举报
自动打铃系统设计.doc_第1页
第1页 / 共42页
自动打铃系统设计.doc_第2页
第2页 / 共42页
自动打铃系统设计.doc_第3页
第3页 / 共42页
自动打铃系统设计.doc_第4页
第4页 / 共42页
自动打铃系统设计.doc_第5页
第5页 / 共42页
点击查看更多>>
资源描述

1、摘要本文设计了自动打铃系统的硬件电路和软件程序。自动打铃系统以单片机AT89C51为微处理器, DS12887为时钟芯片,8279为键盘显示接口芯片,实现了自动打铃,系统可以根据需要通过键盘调整打铃的时间,通过6位数码管显示当前的时间。文中给出了硬件电路图和软件程序,并对部分程序设计给出了程序框图。自动打铃系统电路简单,功能齐全。关键词:自动打铃系统; 单片机AT89C51; DS12887; 8279Abstract This article designed has hit the bell systems hardware circuit and the software routine

2、 automatically. Automatically hits the bell system take monolithic integrated circuit AT89C51 as the microprocessor, DS12887 is the clock chip, 8279 for the keyboard demonstration connection chip, realized has hit the bell automatically, the system may according to need to hit bells time through the

3、 keyboard adjustment, through 6 nixietube demonstration current time. In the article has given the hardware circuit diagram and the software routine, and has given the flow chart to the subprogram design. Hits the bell system circuit to be simple automatically, the function is complete. key word: Hi

4、ts the bell system automatically; Monolithic integrated circuit AT89C51; DS12887; 8279 目 录第1章 绪论31.1 本课题研究的意义31.2 本文研究的内容3第2章 设计任务及要求42.1 设计任务42.2 设计要求4第3章 系统方案设计6第4章 系统硬件电路设计74.1总体方案设计74.1.1 系统结构框图74.1.2系统说明74.2 单片机最小系统74.2.1 89C51单片机概述74.2.2 89C51单片机最小系统电路94.3 DS12887接口电路设计94.3.1 DS12887的功能特点介绍94.

5、3.2 DS12887芯片介绍104.3.3 DS12887时钟芯片的状态控制寄存器114.3.4 DS12887时钟芯片和89C51单片机的接口电路114.4 8279键盘显示接口电路124.4.1 8279概述124.4.2 8279键盘显示接口电路154.5 控制打铃电路154.6 系统电源电路164.7 串行通信接口电路174.7.1 RS-232芯片介绍174.7.2 RS232和单片机实现接口通讯184.8 看门狗电路18第5章 系统软件设计205.1 系统主程序设计205.2 DS12887与AT89C51接口软件215.2.1 DS12887时钟芯片的初始化写入程序215.2.

6、2 D12887时钟日历程序225.3 8279软件设计23致谢25参考文献26附录27第1章 绪论1.1 本课题研究的意义在日常生活和工作中,我们常常用到定时控制,如扩印过程中的曝光定时等。早期常用的一些时间控制单元都使用模拟电路设计制作的,其定时准确性和重复精度都不是很理想,现在基本上都是基于数字技术的新一代产品,随着单片机性能价格比的不断提高,新一代产品的应用也越来越广泛,大可构成复杂的工业过程控制系统,完成复杂的控制功能。小则可以用于家电控制,甚至可以用于儿童电子玩具。它功能强大,体积小,质量轻,灵活好用,配以适当的接口芯片,可以构造各种各样、功能各异的微电子产品。随着电子技术的飞速发

7、展,家用电器和办公电子设备逐渐增多,不同的设备都有自己的控制器,使用起来很不方便。根据这种实际情况,设计了一个单片机多功能定时系统,它可以避免多种控制器的混淆,利用一个控制器对多路电器进行控制,同时又可以进行时钟校准和定点打铃。它可以执行不同的时间表(考试时间和日常作息时间)的打铃,可以任意设置时间。这种具有人们所需要的智能化特性的产品减轻了人的劳动,扩大了数字化的范围,为家庭数字化提供了可能。目前各地研制了多种类型的自动打铃装置,这些装置一般都以自动接通电铃电路来代替人工打铃。它们普遍存在以下缺点: 电铃声音单调,主要是靠机械振动发音,是一种噪音污染源,而且音量的大小也不好控制。 一般没有蓄

8、电池供电装置,一旦电网停电,电铃就不能使用,直接影响教学工作的正常进行。 没有装设遥控电路,使用不便。 不能按作息时间要求自动控制教学楼及宿舍等用电。因此研究智能型的自动打铃系统,具有很现实的意义。1.2 本文研究的内容 本文以单片机AT89C51为微处理器,DS12887为时钟芯片,设计了自动打铃系统的硬件电路,同时用汇编语言编写了系统的程序,给出了软件设计思路。第2章 设计任务及要求2.1 设计任务设计一款如下作息时间打铃的打铃器。时间作用6:10起床7:50第一节课预备8:00第一节课上8:40第一节课下8:50第二节课预备9:00第二节课上9:40第二节课下9:50课间操10:10第三

9、节课预备10:20第三节课上11:00第三节课下11:10第四节课预备11:20第四节课上12:00第四节课下14:00第五节课预备14;10第五节课上14:50第五节课下15:00自由活动2.2 设计要求1具有时分秒记时,6位数字显示;2具有快速校时功能和整点音响自动报时;3输出电路可根据情况选用喇叭或电铃;4设计自动打铃器电路原理图(包括所需的直流稳压电源);5编写自动打铃器制作的工艺文件 第3章 系统方案设计此系统硬件部分主要由计时、键盘显示和闹钟打铃系统三部分构成。其计时部分可用日历时钟芯片DS12887实现。DS12887是DALLAS公司的实时时钟芯片RTC,它功能丰富,应用广泛,

10、PC机内的时钟信号就是由DS12887提供的。DS12887具有时钟、闹钟和闰年补偿功能。其内部有14个寄存器,包括10个时标寄存器,4个状态寄存器,还有114B作掉电保护用的低功耗RAM。DS12887的DS端与单片机的P3.7相连,R/W与P3.6相连IRQ与P3.2相连.显示部分由通用键盘/显示器接口芯片8279实现。8279芯片能完成监视键盘输入和显示控制2种功能。8279对键盘部分提供1种扫描工作方式,能对64个按键键盘阵列不断扫描,自动消抖,自动识别出闭合的键并得到键号,能对双键或多键同时按下进行处理。由于本次课程设计只需09十个按键即可完成当前时间的设置,因此采用2*8键盘形式,

11、通过138译码器对行列进行译码,从而得到键值。数码管采用共阳极驱动。闹钟部分可设置在DA12887内部的秒闹时、分闹时和时闹时单元中,在时间到达闹时时间时产生外部中断,由89C51单片机P1.0口所接测试灯实现光闹钟,P1.2口外接喇叭可实现声闹钟,从而实现闹钟的声光并现。第4章 系统硬件电路设计在详细分析单片机自动打铃系统原理及特点的基础上,设计了以下硬件系统。4.1总体方案设计4.1.1 系统结构框图图4.1 系统结构框图4.1.2系统说明本系统是基于单片机AT89C51的自动打铃系统。使用功能强大的单片机AT89C51为CPU ,DA12864作为时钟芯片。系统硬件电路包括:AT89C5

12、1单片机的最小系统硬件电路,时钟芯片接口电路,8279键盘显示接口电路,打铃电路,串行通信电路以及系统硬件看门狗电路。在以下章节里对基于单片机AT89C51的自动打铃系统的各硬件部分做了详细的介绍并用Protel99画出了每部分的原理图。系统结框图如图4.1所示。4.2 单片机最小系统4.2.1 89C51单片机概述8051系列单片机是我国应用较广的一种单片机。本设计的MCU就使用了美国ATMEL公司新推出的具有在系统可编程功能的MCS-51兼容单片机AT89C51。由于将多功能8位CPU和FLASH存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供

13、了一种灵活性高且价廉的方案。AT89C51的引脚图如图4.2所示。图4.2 单片机AT89C51引脚图AT89C51单片机有以下特点: 兼容8051微控制器 8K字节在系统(ISP)可编程FLASH存贮器256字节片内RAM 工作电压4.0V到5.5V 三级程序加密 32个可编程IO口 3个16位定时/计数器 68个中断源 完全的双工UART串行口 低功耗支持Idle和Power-down模式 看门狗定时器 双数据指针 上电复位标志 因为AT89C51的内部有一个溢出值为2的13次幂的看门狗,所以不用外接硬件的看门狗电路来对程序跑飞进行处理,只要用软件编程的方法就可以实现看门狗功能,避免使用硬

14、件看门狗。4.2.2 89C51单片机最小系统电路振荡电路部分使用单片机内部振荡电路,为了得到高精度的串行通讯波特率,选择的晶振频率为11.0592M,电容为30pF。复位电路元件的参数选择必须保证高电平持续时间大于2个机器周期,这样电路才能可行复位。单片机最小系统电路如图4.3所示。图4.3 单片机最小系统图4.3 DS12887接口电路设计4.3.1 DS12887的功能特点介绍DS12887是美国达 拉斯半导体公司(Dallas)生产的并行接口实时时钟日历芯片,采用24引脚双排直列封装,内包含一个锂电池、石英晶振和写保护电路,是一个完整的子系统。采用DS12887芯片设计的时钟电路不需要

15、任何外围电路和器件,并且具有良好的微机接口。MOTOROLA和INTEL总线时序选择;其主要功能如下:由于锂电池,它可以在无外部电源的情况下工作10年以上并不丢失数据。能计秒、分、时、日、星期、月、年7种日历信息,并有闰年补偿功能。二进制数码或BCD码表示时间、日历和定时闹钟。有12小时或24小时制来显示时间,12小时制时钟模式还有AM和PM指导。MOTOROLA和INTEL总线时序选择。有128个RAM单元与软件接口,其中14个作为字节时钟和控制寄存器,114字节为通用RAM。所有的RAM单元数据都具有掉电保护功能。可编程方波信号输出。中断信号输出和总线兼容,定时闹钟中断、周期性中断、时间闹

16、钟中断更新周期结束中断可分别由软件屏蔽,也可以分别进行测试。4.3.2 DS12887芯片介绍图4.4 DS12887内部结构图 在图4.4中,AD0AD7为地址/数据复用总线;NC为空脚;MOT为总线模式选择(MOTOROLA/INTEL),当此脚接VCC时,选用的是MOTOROLA总线时序,当它接地或者不接时,选用的是INTEL总线时序;CS为批片选端;AS为地址锁存允许端;R/W在INTEL总线下作为写;DS在INTEL总线下作为读;RESET为复位端,复位端对时钟、日历、RAM无效,系统上电时复位端要保持低电平200MS以上DS12887才可以正常工作;IRQ为中断请求输出端。4.3.

17、3 DS12887时钟芯片的状态控制寄存器DS12887芯片内部寄存器A:内部地址为0AH。UIP=1时,更新已到,不能读/写;UIP=0时,可以读/写。DV0、DV1、DV2应设置为010,这样则表示打开晶振,允许计时。RS3、RS2、RS1、RS0可以产生方波中断。DS12887芯片内部寄存器B:内部地址为0BH。当SET=0时,时间正常进行,每秒计数一次;SET=1时,禁止更新,我们可以在这个时候进行程序初始化时间和日历。ALE=1允许报警中断;DM=1为BCD码,DM=0为二进制,且不受复位信号影响。24/12=1表示采用24小时制,24/12=0表示采用12小时制;4.3.4 DS1

18、2887时钟芯片和89C51单片机的接口电路 DS12887时钟芯片和89C51单片机的接口如图4.5所示。模式选择脚MOT接地,选择INTEL时序,选择DS12887时钟芯片的地址总线及AS端口和89C51单片机的ALE端直接相连;而DS、R/W读写控制线于单片机的P3.7、P3.6控制线相连;DS12887的高位地址由89C51单片机的P2.7端口来片选,则DS12887的高8位地址定为7FH,而其低8位地址则由芯片内部各单元的地址来决定(00H3FH);DS12887的SQW端口可编程产生方波输出信号。图4.5 DS12887时钟芯片与89C51硬件联接图4.4 8279键盘显示接口电路

19、4.4.1 8279概述8279芯片是一种专用于键盘/显示器的接口器件,它能对显示器自动扫描,能识别键盘上闭合的键号,提高CPU的工作效率。8279包括键盘输入和显示输出两个部分。键盘部分提供的扫描方式可以和64个按键或传感器阵列相连;能自动消除开关抖动以及对N键同时按下采取保护。显示部分按扫描方式工作,可以显示8或16位LED数码管显示器。(1)8279的引脚功能DB0-DB7:双向数据总线,用于在CPU和8279之间传送命令、数据和状态;CLK:时钏输入线,用于产生内部定时;RESET:复位输入线,复位后,8279被置为以下工作方式:16显示左边输入,编码扫描键盘双键封锁,时钟系数为31;

20、CS:选片信号输入线,低电平时CPU选中8279,允许对8279进行读写操作;A0:缓冲器地址输入线,高电平时数据线上传送的是命令或状态信息,低电平时数据线上传送的是数据信息;RD:读信号输入线,低电平有效,8279内部缓冲器信息送DB0-7;WR:写信号输入线,低电平有效,接收数据总线DB0-7上的信息写入内部缓冲器;IRQ:中断请示输出线,高电平有效。在键盘工作方式中,FIFO RAM中有键输入数据时,IRQ上升为高电平,向CPU请求中断,CPU每次读出FIFO RAM数据时,IRQ上升为高电平,向CPU请求中断,CPU每次读出FIFO RAM数据时,IRQ变为低电平,若RAM中还有数据,

21、IRQ在读出后又返回高电平,直至FIFO中的所有数据被读完IRQ才保持低电平。在传感器方式中,每当检查到传感器信号变化时IRQ上升为高电平;SL0-SL3:扫描输出线,用以对键盘/传感器矩阵和显示器进行扫描;RL0-RL7:数据输入线,键盘/传感器矩阵的行(或行号)数据输入线。该输入线内部有提高电路,使之保持高电平,也可以由外部开关拉成低电平;SHIFT:换档输入线,在键扫描中,闭合键的位置信息(行和列号)与换档输入线的状态一起存入FIFO,使键盘上的每个键可以定义为上、下两档功能;CNTL/STB:控制/选通输入线,在键盘方式中,作为控制输入线,它的状态和键输入信息一起存储到FIFO中。在选

22、通工作方式中,作为数据送入FIFO的选通输入线。OUTA0OUTA3:四位输出口;OUTB0OUTB3:四位输出口;BD:显示消隐输出线,低电平有效,该输出线在数字切换过程中或使用显示器熄灭命令使显示器消隐;Vcc:电源;Vss:地。(2)8279的内部结构与工作原理8279的内部结构主要由I/O控制及数据缓冲器、控制与定时寄存器及定时控制、扫描计数器、输入缓冲器、键盘去抖及控制、FIFO/传感器及其状态寄存器、显示RAM和显示地址寄存器组成。I/O控制及数据缓冲器双向的三态数据缓冲器将内部总线和外部系统的数据总线DB0-DB7相连,用于在CPU和8279之间传送命令、数据和状态信息。I/O控

23、制电路以CS、A0、RD、WR线上输入信号控制总线上信息的传送,即对内部不同的寄存器和缓冲器进行读或写。CS为片选输入线,为低电平有效。当该引脚上为低电平时允许CPU对其进行读写,一般接系统的地址译码器。AO为信息属性选择线,用来指出所传送的信息是命令/状态,还是数据,A0为逻辑1时,CPU写入8279的信息是控制命令,从8279读出的状态字节;A0为逻辑0时,读出和定入的信息都是数据。A0通常接系统的地址总线低位。时序控制逻辑控制和时序寄存器用于存放键盘和显示器的工作方式和其他状态信息。时序和控制部件包含了定时计数器,其中一个计数据是N分频器,分频系数可以编程为2-31之间的任何一个数,对C

24、LK上输入的时钟脉冲信号进行N分频,以产生基本的100KHz的内部计数信号(此时扫描时间为5.1ms,去抖动时间为10.3ms),共它计数器将100KHz信号再分频,以提供适当的键盘矩阵扫描和显示器扫描的时间。扫描计数器扫描计数器有两种工作方式,一种是编码工作方式,计数器以二进制方式计数,4位计数的状态直接从扫描线SL0-SL3上输出,必须由外部译码对SL0-SL3进行译码,以产生对键盘和显示器的扫描信号,另一种是译码工作方式,对计数器的低两位进行译码后从SL0-SL3上输出,作为48键盘和4位显示器的扫描信号,因此在译码方式中只有显示RAM的前4个字符被显示出来。编码方或扫描出高电平有效,译

25、码方式中扫描输出线低电平有效。输入缓冲器和键盘去抖控制输入缓冲器锁存RL0RL7上的信息。在键盘工作方式中,对键盘进行扫描,搜索键盘上的闭合键,由去抖电路检测到某个键闭合后等待10ms,再检测该键的状态,若仍然闭合,则将键在矩阵中的地址(行、列号)以及SHIFT和CNTL状态都写入FIFO RAM。 在传感器方式中,每次扫描时直接把RL0RL7上信息写八传感器RAM,在选通方式中,由选通输入信号的上升沿将RL0RL7上信息写入FIFO RAM。FIFO/传感器RAMFIFO/传感器RAM是一个双功能的88RAM缓冲器。在键盘选通输入方式中,是一个先进先出的数据缓冲器,每一个新输入的信息写入RA

26、M中的下个单元,并按写入的次序读出。FIFO状态寄存器存放FIFO中的字符数和FIFO的满空标志,对FIFO读出写入次数太多时间视为溢出错误。当CS=0,A0=1,RD=0时便读出FIFO的状态字节,当FIFO中有数据时,由控制电路发出IRQ信号。显示地址寄存器和显示RAM显示地址寄存器用于存储CPU当前正在读写的显示RAM单元地址以及正在显示的两个4位半字节地址。读写显示RAM地址由编程设定,也可以定义为读写后地址半字节显示地址由8279自动刷新。4.4.2 8279键盘显示接口电路图 4.6 8279键盘显示接口电路图4.5 控制打铃电路P1.5口控制继电器进而控制电铃工作。当时钟当前的时

27、间和当前所执行的时间表的时间一致时,相应得标志位为1,P1.5口输出高电平,控制继电器闭合,从而合上开关,启动电铃进行打铃。打铃一定时间,标志位置0,P1.5输出低电平,继电器打开,电铃停止工作。电路图如下:图4.7 打铃电路电路图 4.6 系统电源电路 系统有两个电源输入口,分别给逻辑控制电路和电铃驱动电路供电。因此,需要外接独立的电源给电机供电,要求外接电源的电压在5V12V之间,并可以提供750mA以上的电流。根据系统需要,设计了5V和12V的电源电路,电源电路图如图4.84所示。图4.8 电源电路图4.7 串行通信接口电路RS-232通讯模块是上位机和下位机的接口,它传输的正确与否关系

28、到整个系统数据的获得、运算处理的最终结果的正确性。因此除了制定严谨而实用的通讯协议外,还得建立有效的通讯数据处理电路,才能保证正确的数据下传和接受,以进行及时的转移和处理。4.7.1 RS-232芯片介绍图4.9 RS-232内部结构图由图4.9并结合RS-232芯片介绍资料可以得出RS-232驱动器的驱动输出电压幅度在8V之间,当加载5KRS-232接收器,VCC则为+5V。它要求在最坏的情况下有5V的最小驱动输出,装载驱动输出电压变化范围是(-5V-15V)和(+5V+15V),输入端(INPUTS)TTL与CMOS兼容,用到的驱动器输入端可以让它悬空,因为有400K的内部上拉电阻接至VC

29、C,它强迫驱动器的输出变为低电平,内部上拉电阻产生了12uA的电流,但是在关闭模式中上拉电阻不能发挥作用,驱动输出关闭,进入高阻态。RS-232接收器电压大于3V时为逻辑0,因此,所有接收转换,输入门限被设定为0.8V和2.4V。接收端的电压是0.5V,最小保证电压0.2V,这点可以说明确认指出以低速移动信号输出发射,伴随一定的噪声。接收传播延迟的时间是600ns。由于RS-232属于单端信号传输,这种形式的传输存在噪声大切不能一直共模干扰,所以为了保证信息传输的准确性,建议通讯距离大约保持在15m,RS-232一般只能用与20m以内的点对点通信。4.7.2 RS232和单片机实现接口通讯 串

30、行通信中,每秒传送的数据位称为波特率。如数据传送的波特率为1200 波特,采用 N.8.1 帧格式(10 位),则每秒传送字节为 120 个,而字节中每一位传送时间即为波特率的倒数:T=I/1200=0.833ms。同样,如数据传送的波特率为9600波特,则字节中每一位传送时间为T=1/9600=0.104 ms。图4.10 RS-232通讯接口电路图89C51 单片机的P3 口通过RS232与 上位机PC 机实现通信的。硬件接口电路如图 2-11 所示。由于 上位机串行口为 RS232 标准接口,而89C51 单片机在输入、输出均采用 TTL电平,所以两者在接口规范上不一致,因此TTL电平到

31、RS232接口电平的转换采用MAXIM公司的MAX232 标准。本系统使用常用的MAX232芯片,作为与单片机串行通信的接口。用于RS-232电平与TTL电平的相互转换。如图4.10所示。4.8 看门狗电路在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称看门狗 。看门狗电路的应用,使单片机可以在无人状态下实现连续工作,其工作原理是:

32、看门狗芯片和单片机的一个I/O引脚相连,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段不进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位。MAX813L是具有监控电路的微处理芯片,它具有4 个功能:具有独立的看门狗计时器,如果看门狗输入在1.6s内无变化,就会产生看门狗输出;调点或

33、电源电压低于1.25V时,产生掉电输出;上电时能自动产生200ms宽的复位脉冲;具有人工复位功能,当人工复位端输入低电平时,产生复位信号输出。控制器中具体的电路连线图如下4.11所示。图4.11 系统看门狗电路第5章 系统软件设计本设计的软件程序包括主程序、中断子程序、打铃子程序、时钟显示子程序、查询时间表切换程序和延时子程序等等。5.1 系统主程序设计图5.1 系统主程序流程图DS12887的四个寄存器在任何时间都可以访间.通过对四个寄存器的访间,控制时钟芯片的频率、时钟、日历的设置和中断的申请.利用DS12887的中断,在时钟设置时使响应的数码显示闪烁.在正常情况下保持1秒钟刷新一次,保证

34、了显示的稳定性.用户可随时对显示的时间、日历、安全运行天数进行修改,所修改的参数保存在DS12887的非易失性RAM中.当发生掉电重新加电时,从RAM中读出参数,通过比较RAM中数据的日期自动对用户所置参数进行修复,保证用户一次设置,终身使用。5.2 DS12887与AT89C51接口软件下面为DS128887时钟芯片和89C51单片机的接口软件。假定采用每天24小时制的非夏令时,时间格式为BCD码,初始化时间为2006年5月30日12时00分00秒,1K方波输出。时钟芯片每一秒向单片机申请中断一次,一方面让单片机修改一次时钟显示,另一方面也给单片机提供时间基准。5.2.1 DS12887时钟

35、芯片的初始化写入程序 MOV DPTR,#7F0AH;寄存器A地址 MOV A,#70H;DV2DV0=111分频器复位 MOVX DPTR,A; INC DPTR;到寄存器B地址 MOV A,8AH;停止更新,允许更新中断,选BCD码,24小制 MOVX DPTR,A; MOV DPL,#00H;秒单元地址 CLR A :00秒 MOVX DPTR,A; MOV DPL ,#02H;分单元地址 CLR A:00分 MOVX DPTR,A; MOV DPL ,#04H; MOV A,#12H; MOVX DPTR,A; MOV DPL ,#07H; MOV A,#30H;30日 MOVX DP

36、TR,A; INC DPTR;到月单元地址 MOV A,#05H;5月 MOVX DPTR,A; INC DPTR;到年单元地址 MOV A,#06H;2006年 MOVX DPTR,A INC DPTR;到寄存器A地址 MOV A,#26H;DV2DV0=010 RS3RS0=0110 MOVX DPTR,A INC DPTR;到寄存器B MOV A,#1AH;每秒更新一次允许方波输出,24小时制 MOVX DPTR,A;时钟开始运行5.2.2 D12887时钟日历程序DS12887的日历时钟通常有中断和查询两种方式读出。但在读取数据时,首先要判断数据是否更新结束,只有在数据更新结束时数据读

37、出才有效6。本设计采用查询法读取数据:查询积存器A的UIP位,当UIP位=0时,数据更新结束,可以读出。以下是采用查询方法,从秒到年单元的数据读出后存入89C51内部RAM的30H35H单元中,程序如下:MOV DPTR,#7F0AH;寄存器A地址MOVX A,DPTRWAIT:JB ACC.7. WAIT:UIP=1则等待更新完毕MOV DPL ,#00H;秒地址MOV R0,#30H;取目标首地址MOVX A,DPTR;取秒数据MOV R0, A;送入89C51的内部RAM缓冲区INC DPTR;移指针INC R0流程图如下:图5.2 DS12887时钟程序流程图5.3 8279软件设计在

38、向8279写命令或从8279中读状态寄存器时,8279的地址应为奇地址(A0=1)。8279有两个RAM数据区,一个为容量为88拉的FIFO/传感器RAM,用于存放按下键的键值或传感器的状态,只可读不可写;另一个是168位的显示RAM,可读、写。在对这两个RAM数据区进才读写(写只对显示RAM有效)时,8279的地址是偶地址(A0=0)。在读或写显示RAM之前,必须先向8279写入“读显示RAM命令字”或“写显示RAM命令字”。所读或写显示RAM的单元号包含在这两个命令的低4位中。在读“FIFO/传感器RAM”之前,如果工作于传感器方式,必须先向8279写入“读FIFO/传感器RAM命令字”,

39、以规定RAM的8个单元中最先被读出单元的地址。在键盘工作方式中,在读键值RAM之前,也要先写这个命令字,但由于这时的读出顺序为先进先出的,所以其中的起始地址可为任意值,一般可以设置为40H。图5.3 8279键盘程序流程图致谢时光飞逝,转瞬间我的大学生活即将随着我的毕业设计的完成而画上一个圆满的句号。历时半年,毕业设计终得以圆满完成离不开我的指导老师真挚的帮助。在此,想予以对我精心指导的 颉晓明老师致以崇高的敬意并表示衷心的感谢。在这个学期的毕业设计过程中,我学到了很多有用东西,不但再次学习了大学期间所学专业知识,也学到了很多新的知识,使自己的专业水平和分析解决问题的能力得到很大提高。在设计过

40、程中,也遇到了很多困难,在解决困难的过程中我的指导教师 老师给了我无微不至的关怀和大力的帮助。当我遇到疑难问题时, 老师不管有多忙,都会抽出时间给予我精心的指导。 老师的全力支持对设计的最终顺利完成起到了很大的作用。 老师对我的毕业论文也给出了很多有建设性的意见的建议。 老师渊博的知识、精诚的事业心、严谨求实的治学态度和诲人不倦的精神都给我留下了深刻的印象。论文已经完成,我的大学生活也即将结束。在此,我还要感谢 系的全体老师,感谢老师们对我的帮助、支持、鼓励和关心。我的每一次进步和每一份成绩的取得无不融入老师们之关爱。无论我走到哪里,都不会忘记老师们对我三年大学生活的无私奉献。参考文献1 张专

41、成 赵怀勋.单片机测控系统中的监视定时器.武警技术学院.Mar 1997.2 张景元.基于单片机的多用途定时器的设计与实现.电子工程师2000年第8期.3 李洪涛.一种单片机控制的定时打铃器.电子世界.1990年第2期. 4 何业军 李超.基于单片机控制的高精度定时打铃器的设计.电子技 术.2001年第7期.5 关宗安 仲丛久.基于单片机实现的多路定时控制器的设计.沈阳航空工业学院学报.2004年6月.第21卷第3期.6 ATMEL.Microcontroller Data book.2002.7 Mark1.Montrose.PRINTED Circuit Board Design Tech

42、niques for EMC compliance.IEE Press series.2000.8 范立南.单片微机接口与控制技术.沈阳:辽宁大学出版社.1996.9 张友德.单片微型机原理、应用与实践.上海:复旦大学出版社.199210李华.MCS-51系列单片机实用接口技术,北京:北京航空航天大学出版社.1993.11何希庆,高伟.MCS-51单片机原理、实验、实例M.山东:山东大学出版社.1989.12张毅刚,彭喜源,潭晓昀.MCS-51单片机应用设计M.哈尔滨:哈尔滨工业大学出版社.1997.13胡汉才.单片机原理及接口技术M,北京:清华大学出版社.1996.14余永权,单片机与家用电

43、器智能化设计M.北京:电子工业出版社.1995.15房小翠,王金凤.单片微型计算机与机电接口技术M.北京国防工业出版社.2002.16皮红梅,李英顺.单片机开发中的定时方法.沈阳石油化工高等专科学校学报.2002年12月.附录;自动打铃系统;= ORG 2000H SJMP START ORG 2040HSTART: MOV SP, #60H ;栈指针赋初值 ACALL INIT8279 ;调用8279初始化子程序 ACALL INIT12 ;调用12887初始化子程序;- MOV DPTR,#600AH ;DPTR指向状态寄存器AWAIT1: MOVX A,DPTR JB ACC.7,WAI

44、T1 ;查询UIP位L1: ACALL DUS ;调用时间显示子程序;。;比较时间是否到6:30,是则打铃;。 MOV DPTR,#6004H ;DPTR指向小时时标单元 MOVX A,DPTR ;将小时时标单元值送A CJNE A,#6H,L1 ;比较A中的值是否等于6,不等则到L1 MOV DPTR,#6002H ;DPTR指向分时时标单元 MOVX A,DPTR ;将小时时标单元值送A CJNE A,#30H,L1 ;比较A中的值是否等于30,不等则到L1 ACALL DALIN0 ;调用打铃定时为5秒子程序 ACALL DALIN1 ;调用打铃定时为2秒子程序 ACALL DALIN0 ;调用打铃定时为5秒子程序 SETB P1.0 ;置P1.0为1 SJMP L1 ;返回到时间显示子程序;=;时间显示子程序;-DUS: MOV R4,#00H

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服