基于51单片机的电子打铃器 - 图文(2)

2019-03-23 10:43

3.2.2 时钟和复位模块

图3.2.2 时钟和复位模块

3.2.3显示模块及芯片说明

根据设计要求系统需要4个共阳LED,数码管显示电路使用80C51的动态显示功能。4个LED八段(a、b、c、d、e、f、g、dp),数码管分别显示: “时”、“分”,用二极管的“点”作为时、分的间隔。该系统采用共阳极数码管,对于共阳极数码管,其公共端必须接高电平。当打铃的时候四个数码管中前三个不显示数据,最后一个显示课程节数。

图3.2.3 显示模块

5

3.2.4 响铃模块

打铃电路(接P3.7):当前时间与程序设定时间相同时,P3.7端输出高电平的方波,即打铃。每次响铃时间是60S。

图3.2.4 响铃模块

4.软件设计

中断服务程序通过定时器T0(工作方式为1),实现一日的24小时,首先得初始化,正常工作,主函数调用数码管显示程序显示当前时间,然后调用打铃对比函数,若当前时间与系统设定打铃时间相同是,响应打铃程序。当需要对时间校正时,可以通过按键扫描处理程序进行校时。

//////////程序初始化////////// ALB EQU 20H BUF EQU 30H

//打铃设置标志

//30-33h连续四个字节存放显示器数据

HOUR EQU 34H //存放小时变量 MIN EQU 35H // 存放分钟变量 SEC EQU 36H //存放秒钟变量 DEDA EQU 37H // 存放5ms计数值 HH EQU 38H

// 打铃设置小时变量

MM EQU 39H //打铃设置分钟变量 ;按键输入引脚

6

K1 EQU P1.1 K2 EQU P1.2 K3 EQU P1.3 K4 EQU P1.4

;蜂鸣器和指示灯引脚定义 SPK EQU P1.5

WLED EQU P1.0 //工作指示灯引脚定义 ORG 00H lJMP MAIN ORG 0BH lJMP T0_SRV

/////////////主程序入口/////////// MAIN:

CLR ALB //清除闹铃标志

MOV A,#80H //加载显示器初始值数据 MOV P0,A ACALL BZ ;ACALL BZ ACALL LED_BL

ACALL DELAY1 ;定时器T0的初始化

ACALL INIT LOOP: ACALL CONV ACALL DISP LOOP2: ACALL CONV

7

`

ACALL LD1 //查询打铃时间

MOV A,MIN

CJNE A,#10,AGN JMP LOOP2 AGN:

CJNE A,#55,LOOP3 JMP LOOP2 LOOP3: JB K1,M1

JNB K1,$

ACALL SETTIME

M1: JMP LOOP jmp loop

ACALL DISP LD1:

MOV A,HOUR CLR C SUBB A,#8 MOV DPTR,#TALE

8

MOVC A,@A+DPTR CJNE A,HOUR,LL MOV A,MIN CJNE A,#10,L ACALL BZ MOV A,HOUR CLR C SUBB A,#8

MOV DPTR,#TABLE2 MOVC A,@A+DPTR MOV P0,A ACALL DELAY L:

CJNE A,#55,LL ACALL BZ

MOV A,HOUR

CLR C SUBB A,#8

MOV DPTR,#TABLE2 MOVC A,@A+DPTR MOV P0,A ACALL DELAY LL: RET TALE:

DB 08H,09H,0AH,0BH TABLE2:

DB 0F9H,0A4H,0B0H,99H

9


基于51单片机的电子打铃器 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:学校突发水污染事件应急预案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: