单片机c51下的自动打铃系统

更新时间:2024-01-30 01:56:01 阅读量: 教育文库 文档下载

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

单片机课程设计

课程设计(论文)

题 目名 称 基于单片机的自动打铃系统

2010年 6月 28 日

单片机课程设计

摘 要

本次设计中的LED数码管电子时钟电路采用24小时制记时方式,本次设计采用AT89C51单片机的扩展芯片和6个PNP三极管做驱动,由三块LED数码管构成的显示系统,与传统的基于8/16位普通单片机的LED显示系统相比较,本系统在不显著地增加系统成本的情况下,可支持更多的LED数码管稳定显示。设计采用AT98C51单片机,使用5V电源供电,并且在按键的作用下可以进行调时,调分,复位功能。计时数据的更新在计算机C语言的驱动下每秒自动进行一次,但不需程序干预其输出状态。

关键词:AT89C51; 数码管 ; LED

单片机课程设计

目 录

引 言???????????????????????????????????????????????????1 第一章 设计简介及方案论述????????????????????????????????1 1.1 作息时间控制钟系统概述??????????????????????????????1

1.2 本设计任务和主要内容????????????????????????????????1

第二章 系统硬件电路设计??????????????????????????????????2 2.1单片机总体设计思路??????????????????????????????????2

2.2各功能模块程序实现原理分析???????????????????????????2 2.21七段式数码管驱动模块?????????????????????????????????2 2.22蜂鸣器驱动模块??????????????????????????????????????2 2.23按钮控制模块???????????????????????????????????????3

2.3系统主要硬件电路?????????????????????????????????????5

2.31七段式数码管驱动模块的硬件设计?????????????????????????6 2.32蜂鸣器驱动模块的硬件设计??????????????????????????????7

第三章 系统软件设计??????????????????????????????????????8

3.1 系统软件设计的主要内容??????????????????????????????8

单片机课程设计

3.2 系统软件设计的流程图????????????????????????????????8

第四章 系统调试与测试结果分析?????????????????????????????10

4.1 系统调试???????????????????????????????????????????10

4.11硬件调试??????????????????????????????????????????10 4.12软件调试??????????????????????????????????????????10 4.13硬件软件联机???????????????????????????????????????10 4.2仿真结果????????????????????????????????????????????10

第五章 附录及参考文献????????????????????????????????????12 5.1汇编程序清单????????????????????????????????????????12 5.2器材仪表????????????????????????????????????????????34 5.3参考资料????????????????????????????????????????????34

单片机课程设计

引 言

本设计是根据我们所学习的单片机课程,按照大纲要求对我们进行的一次课程检验,是进行单片机课程训练的必要任务,也对我们掌握单片机应用有很大的帮助。掌握单片机技术是一门不可或缺的技术,对我们将来的工作以及生活和学习都有很密切的联系。近年来,随着电子技术和微机计算机的迅速发展,单片机的档次不断提高,其应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到了广泛的应用,成为现代电子系统中最重要的智能化的核心部件。

当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未有的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。学习单片机的最有效的方法就是理论与实践并重,本文用AT89C51单片机设计的一个自动打铃系统。

1

单片机课程设计

该系统通过按钮控制(系统使用4只按键,3只按键用来调整时间,另一只为强制打铃按钮;调整选择键SET_KEY:P1.0通过选择键选择调整位,选中位闪烁;增加键ADD_KEY:P1.1按一次使选中位加1;减少键DEC_KEY:P1.2按一次使选中位减1;如果长按ADD_KEY或DEC_KEY,识别后则进行调时快进,此时停止闪烁)AT89C51的计时和定时,在七段数码管上显示出来(实现24小时制电子钟,8位数码管显示,显示时分秒),再通过蜂鸣器 (BEEP:P3.7)来实现打铃。 2.31七段式数码管驱动模块的硬件设计

LED数码管显示器内部有七个条形发光二极管和一个小圆点发光二极管组成,其结果图如下所示:

A

B C D E F G

com

图2-4:七段数码显示管

因而它的控制原理和发光二极管的控制原理是相同的。根据各管接线的形式,可分成共阴极型和共阳极型。其八个接口对应的字形如下表:

表一:数码管字型码表

显示字形 dp 0 0 0 0 0 0 0 0 0 0 0 0 g 0 0 1 1 1 1 1 0 1 1 1 1 f 1 0 0 0 1 1 1 0 1 1 1 1 e 1 0 1 0 0 0 1 0 1 0 1 1 d 1 0 1 1 0 1 1 0 1 1 0 1 c 1 1 0 1 1 1 1 1 1 1 1 1 b 1 1 1 1 1 0 0 1 1 1 1 0 6

a 1 0 1 1 0 1 1 1 1 1 1 0 共阴极字型码 0x3F 0x06 0x5B 0x4F 0x66 0x6D 0x7D 0x07 0x7F 0x6F 0x77 0x7C 共阳极字型码 0xC0 0xF9 0xA4 0xB0 0x99 0x92 0x82 0xF8 0x80 0x90 0x88 0x83 0 1 2 3 4 5 6 7 8 9 A B

单片机课程设计

C D E F 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 0 0 1 0 0 1 0 1 1 0x39 0x5E 0x79 0x71 0xC6 0xA1 0x86 0x8E 3.2.3蜂鸣器驱动模块的硬件设计

本设计中的蜂鸣器驱动模块用到了蜂鸣器(SPEAKER)、三极管、100欧姆的电阻。将蜂鸣器的一段接地,另一端接三极管的发射极,三极管的基极通过100欧姆的电阻接在三极管的P3.7引脚,三极管的集电极接+5V的电源。其电路图如下图所示:

图2-5:蜂鸣器驱动电路图

7

单片机课程设计

第三章 系统软件设计

软件是该LED显示屏控制系统的重要组成部分,在系统的软件设计中我们也才用了模块化设计,将系统的各部分功能编写成子模块的形式,这样增强了系统软件的可读性和可移植性。

3.1系统软件设计的主要内容

系统软件设计由三个模块编程组成:蜂鸣器打铃编程,七段显示管显示编程,按键编程。

3.2主程序流程设计

主程序初始化,并打开中断,然后执行中断服务程序。实现24小时制电子钟,8位数码管显示,显示时分秒显示格式:23-59-59(小时十位如果为0则不显示) 到预定时间启动蜂鸣器模拟打铃,蜂鸣器BEEP:P3.7打铃方式分起床、熄灯铃和上、下课铃两种系统使用4只按键,3只按键用来调整时间,另一只为强制打铃按钮 调整选择键SET_KEY:P1.0;通过选择键选择调整位,选中位闪烁增加键ADD_KEY:P1.1;按一次使选中位加1减少键DEC_KEY;P1.2;按一次使选中位减1,如果长按ADD_KEY或DEC_KEY,识别后则进行调时快进,此时停止闪烁。 主程序流程设计图:

8

单片机课程设计

开始初始化是否正常走时?YN打铃时间比较打铃判断,执行显示按键检测N有键按下吗?Y获取键值按键处理

图3.1

如图所示主程序开始初始化后,就跳转到中断服务程序,如正常走时,则往下进行打铃时间的比较,继续向下执行对打铃的判断程序;如不正常走时,则直接转到显示程序。这以后,继续执行按键的检测,若有键按下,则取值打铃;反之,则返回到中断服务程序的开始继续执行。

主程序清单见附录。

9

单片机课程设计

第四节 系统调试与测试结果分析

4.1系统调试

根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试和软硬件联调。由于在系统设计中采用模块设计法,所以方便对各电路模块功能进行逐级测试:LED驱动模块的调试,数据存储模块的调试,PC机通信模块的调试等,最后将各模块组合后进行整体测试。 4.11硬件调试

对各个模块的功能进行调试,主要调试各模块能否实现指定的功能。 4.12软件调试

软件调试采用单片机仿真器WAVE6000L及微机,将编好的程序进行调试,主要是检查语法错误。 4.13硬件软件联调

将调试好的硬件和软件进行联调,主要调试系统的实现功能。

4.2仿真结果

此系统的仿真效果很好,能实现设计要求和目的所规定的内容。下面是两幅仿真结果图:

RP1RESPACK-8123456789L1L2L3L4C130PFU1X119XTAL1CRYSTAL18XTAL2P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314151617L1L2L3L4L5L6L7L8C330PFR110k9RSTC210uF293031PSENALEEAS1S2S1S2S3S4R3R4R5R610k10k10k10k12345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51R2100Q1BU208S3S4LS1SPEAKER

图4-1

10

L5L6L7L8

单片机课程设计

RP1RESPACK-8123456789L1L2L3L4C130PFU1X119XTAL1CRYSTAL18XTAL2P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314151617L1L2L3L4L5L6L7L8C330PFR110k9RSTC210uF293031PSENALEEAS1S2S1S2S3S4R3R4R5R610k10k10k10k12345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51R2100Q1BU208S3S4LS1SPEAKER 图4-2

L5L6L7L8

11

单片机课程设计

附录:

5.1汇编程序清单:

BEEP EQU P3.7 ;定义蜂鸣器(电铃)控制信号输出口

ORG

0000H ;程序入口地址

LJMP START

ORG 000BH ;定时器0中断入口地址 LJMP TIMER_0 ORG 0100H

;/*****程序开始,初始化*****/

START:

SETB BEEP ;关闭蜂鸣器(电铃)

SETB 48H ;使用一个bit位用于调时闪烁标志

SETB 47H ;使用一个bit位用于产生脉冲用于调时快进时基 CLR CLR

45H ;关闭响铃方式1标志 44H ;关闭响铃方式2标志

MOV R1,#0 ;调整选择键功能标志:0正常走时、1调时、2调分、3调秒 MOV 20H,#00H ;用于控制秒基准时钟源的产生 MOV 21H,#00H ;清零秒寄存器 MOV 22H,#00H ;清零分寄存器 MOV 23H,#00H ;清零时寄存器

MOV 24H,#00H ;用于控制调时闪烁的基准时钟的产生 MOV R2,#00H ;强制打铃标志 MOV R3,#00H ;强制打铃时长标志

MOV IP,#02H ;IP,IE初始化 MOV IE,#82H

MOV TMOD,#01H ;设定定时器0工作方式1 MOV TH0,#3CH

MOV TL0,#0B0H ;赋定时初值,定时50ms SETB TR0 ;启动定时器0 MOV SP,#40H ;重设堆栈指针

12

单片机课程设计

;/*****主程序*****/

MAIN:

CJNE R1,#00H,MAIN1 ;是否为正常走时状态 LCALL BIJIAO1 ;调用起床、熄灯打铃比较子程序 LCALL BIJIAO2 ;调用上、下课打铃比较子程序 LCALL DALING1 ;调用响铃方式1执行子程序 LCALL DALING2 ;调用响铃方式2执行子程序 LCALL DALING3

MAIN1:

LCALL DISPLAY ;调用显示子程序 LCALL KEY_SCAN ;调用按键检测子程序 JZ MAIN ;无键按下则返回重新循环 LCALL SET_KEY ;调用选择键处理子程序

JB 46H,MAIN ;如果已进行长按调整(调时快进),则不再执行下面的单步调整 LCALL ADD_KEY ;调用增加键处理子程序 LCALL DEC_KEY ;调用减少键处理子程序

LCALL DALING_KEY ;处理强制打铃/强制关闭铃声键 LJMP MAIN ;重新循环

;/*****定时中断服务程序*****/

TIMER_0:

PUSH ACC PUSH PSW ;保护现场 MOV TH0,#3CH

MOV TL0,#0B0H ;重新赋定时初值 CPL 47H ;产生脉冲用于调时快进时基 INC 24H

MOV A,24H

CJNE A,#10,ADD_TIME ;产生0.5秒基准时钟,用于调时闪烁 CPL 48H

;取反调时闪烁标志位

13

单片机课程设计

MOV 24H,#00H

ADD_TIME:

INC 20H MOV A,20H

CJNE A,#20,RETI1 ;产生1秒基准时钟 MOV 20H,#00H

;一秒钟时间到,清零20H

CJNE R2,#01H,ADD_M INC R3

ADD_M:

MOV A,21H ADD A,#01H DA A

;作十进制调整

MOV 21H,A

CJNE A,#60H,RETI1 MOV 21H,#00H MOV A,22H ADD A,#01H DA A MOV 22H,A

CJNE A,#60H,RETI1 MOV 22H,#00H MOV A,23H

;一分钟到

;一小时到

ADD A,#01H DA A MOV 23H,A CJNE A,#24H,RETI1

MOV 23H,#00H ;到24点,清零小时

RETI1:

POP PSW POP ACC ;恢复现场

14

单片机课程设计

RETI ;中断返回

;/*****显示处理*****/

DISPLAY:

MOV A,21H ;秒

ANL A,#0FH

MOV 2FH,A ;转换出秒个位,存入2FH

MOV A,21H

ANL A,#0F0H SWAP A

MOV 2EH,A ;转换出秒十位,存入2EH

JB 46H,MIN

;如果长按按键(调时快进),则跳过闪烁处理

;如果R1为3,闪烁秒位待调整

CJNE R1,#3,MIN JB 48H,MIN

MOV 2FH,#0AH ;使该位为10,查表得到使该位不显示的输出

MOV 2EH,#0AH

MIN:

MOV A,22H ;分

ANL A,#0FH

MOV 2DH,A ;转换出分个位,存入2DH

MOV A,22H

ANL A,#0F0H SWAP A

MOV 2CH,A ;转换出分十位,存入2CH

JB 46H,HOUR

;如果长按按键(调时快进),则跳过闪烁处理

;如果R1为2,闪烁分位待调整

CJNE R1,#2,HOUR JB 48H,HOUR

MOV 2DH,#0AH ;使该位为10,查表得到使该位不显示的输出

MOV 2CH,#0AH

HOUR:

MOV A,23H ;时

ANL A,#0FH

15

单片机课程设计

MOV 2BH,A ;转换出时个位,存入2BH

MOV A,23H

ANL A,#0F0H SWAP A

MOV 2AH,A ;转换出时十位,存入2AH

JB 46H,DISP

;如果长按按键(调时快进),则跳过闪烁处理

;如果R1为1,闪烁时位待调整

CJNE R1,#1,DISP

JB 48H,DISP

MOV 2BH,#0AH ;使该位为10,查表得到使该位不显示的输出

MOV 2AH,#0AH ;/*****数码管动态扫描显示*****/

DISP:

MOV DPTR,#TABLE MOV A,2FH MOVC A,@A+DPTR MOV P0,A CLR P2.7 LCALL DELAY SETB P2.7 ;显示秒个位

MOV A,2EH

MOVC A,@A+DPTR MOV P0,A CLR P2.6 LCALL DELAY SETB P2.6 ;显示秒十位

MOV A,#40H

MOV P0,A CLR P2.5 LCALL DELAY SETB P2.5 ;显示“-”

MOV A,2DH

16

单片机课程设计

MOVC A,@A+DPTR MOV P0,A CLR P2.4 LCALL DELAY SETB P2.4 ;显示分个位

MOV A,2CH

MOVC A,@A+DPTR MOV P0,A CLR P2.3 LCALL DELAY SETB P2.3 ;显示分十位

MOV A,#40H

MOV P0,A CLR P2.2 LCALL DELAY SETB P2.2 ;显示“-”

MOV A,2BH

MOVC A,@A+DPTR MOV P0,A CLR P2.1 LCALL DELAY SETB P2.1 ;显示时个位

MOV DPTR,#TABLE1 ;该位使用TABLE1以消除前置0

MOV A,2AH

MOVC A,@A+DPTR MOV P0,A CLR P2.0 LCALL DELAY SETB P2.0 ;显示时十位

RET

17

单片机课程设计

;/*****按键检测子程序*****/

KEY_SCAN:

CLR 46H ;关闭长按调整(调时快进)标志

MOV P1,#0FFH MOV A,P1

;将P1口设置成输入状态

CPL A

ANL A,#0FH ;P1口低4位连接4个按键,只判断该4位

JZ EXIT_KEY

;无键按下则返回 ;延时去抖动

LCALL DELAY

MOV A,P1 ;重新判断

CPL A

ANL A,#0FH

JZ EXIT_KEY ;键盘去抖动

MOV R5,A

;临时将键值存入R5

;用于控制调时快进速度

MOV R4,#00H

;设置为00H是为了在进入长按处理前加长延时区分用户的长按与短按,防止误快进

LOOP: ;进入长按处理

LCALL DISPLAY ;使长按时显示正常

MOV A,P1

CPL A ANL A,#0FH JB 47H,LOOP1

INC R4 ;调时快进间隔时间基准加1 LOOP1:

CJNE R1,#03H,LOOP2 ;如果调秒时长按,则不处理

LJMP LOOP3

LOOP2:

CJNE R4,#99H,LOOP3

MOV R4,#70H SETB 46H

;确认用户长按后,重新设定起始值,加快调时快进速度

;长按调整(调时快进)标志

18

单片机课程设计

LCALL ADD_KEY

LCALL DEC_KEY LOOP3:

JNZ LOOP ;等待键释放

MOV A,R5 RET

;输出键值

EXIT_KEY: RET

;/*****延时子程序*****/

DELAY: MOV R7,#150 DJNZ R7,$ RET

;/*****选择键处理子程序*****/

SET_KEY:

CJNE R5,#01H,EXIT ;选择键键值

INC R1

;调整选择功能标志加一

SETB BEEP

CJNE R1,#4,EXIT MOV R1,#0

MOV 24H,#00H ;调时闪烁基准清零

RET

;/*****增加键处理子程序*****/

ADD_KEY:

CJNE R5,#02H,EXIT ;增加键键值

CJNE R1,#01H,NEXT1 ;选择键功能标志为1,调时,否则跳出 MOV A,23H

ADD A,#01H

DA A

MOV 23H,A

19

单片机课程设计

CJNE A,#24H,EXIT MOV 23H,#00H NEXT1:

CJNE R1,#02H,NEXT2 ;选择键功能标志为2,调分,否则跳出

MOV A,22H

ADD A,#01H DA A MOV 22H,A CJNE A,#60H,EXIT MOV 22H,#00H NEXT2:

CJNE R1,#03H,EXIT ;选择键功能标志为3,调秒,否则跳出

MOV 21H,#00H RET

;/*****减少键处理子程序*****/

;如增加键按下直接清零秒

DEC_KEY:

CJNE R5,#04H,EXIT ;减少键键值

CJNE R1,#01H,NEXT3 ;选择键功能标志为1,调时,否则跳出 MOV A,23H

ADD A,#99H DA A MOV 23H,A CJNE A,#99H,EXIT MOV 23H,#23H NEXT3:

CJNE R1,#02H,NEXT4 ;选择键功能标志为2,调分,否则跳出

MOV A,22H

ADD A,#99H

DA A

MOV 22H,A

20

单片机课程设计

CJNE A,#99H,EXIT MOV 22H,#59H NEXT4:

CJNE R1,#03H,EXIT ;选择键功能标志为3,调秒,否则跳出

MOV 21H,#00H

;如较少键按下直接清零秒

RET

;/*****强制响铃键处理子程序*****/

DALING_KEY:

CJNE R5,#08H,EXIT ;选择键键值

JNB 45H,LP1 CLR 45H

;判断是否正在响铃

RET LP1:

JNB 44H,LP2 CLR 44H RET LP2:

MOV R2,#01H RET

;/*****万用返回程序*****/

EXIT: RET

;/*****数码管字形编码表*****/

TABLE:

DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H ;字形显示编码 TABLE1:

DB 00H,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H ;小时位的十位数编

码,该位如果为0则不显示

;/*****打铃时间对比程序(起床、熄灯)*****/

BIJIAO1:

21

单片机课程设计

MOV A,23H CJNE A,#00H,B0 MOV A,22H

CJNE A,#01H,B0 ;6:00到

SETB 45H ;开启响铃方式1

RET

B0: MOV A,23H CJNE A,#22H,EXIT_1 MOV A,22H

CJNE A,#30H,EXIT_1 ;22:30到

SETB 45H ;开启响铃方式1

RET

EXIT_1: CLR 45H RET

;/*****打铃时间对比程序(上、下课)*****/

BIJIAO2: MOV A,23H CJNE A,#07H,B1 MOV A,22H

CJNE A,#30H,B1 ;7:30 SETB 44H ;开启响铃方式2

RET

B1: MOV A,23H CJNE A,#08H,B2 MOV A,22H

CJNE A,#20H,B2 ;8:20 SETB 44H RET

B2: MOV A,23H CJNE A,#08H,B3

22

单片机课程设计

MOV A,22H

CJNE A,#30H,B3 ;8:30 SETB 44H RET

B3: MOV A,23H CJNE A,#09H,B4 MOV A,22H

CJNE A,#20H,B4 ;9:20 SETB 44H RET

B4: MOV A,23H CJNE A,#09H,B5 MOV A,22H

CJNE A,#40H,B5 ;9:40 SETB 44H RET

B5: MOV A,23H CJNE A,#10H,B6 MOV A,22H

CJNE A,#30H,B6 ;10:30 SETB 44H RET

B6: MOV A,23H CJNE A,#10H,B7 MOV A,22H

CJNE A,#40H,B7 ;10:40 SETB 44H RET

B7: MOV A,23H CJNE A,#11H,EXIT_2 MOV A,22H

23

单片机课程设计

CJNE A,#30H,EXIT_2 ;11:30 SETB 44H RET EXIT_2: CLR 44H RET

;/*****响铃方式1程序(响5秒停2秒再响5秒)*****/

DALING1:

JNB 45H,EXIT_DALING

MOV A,21H ;响铃起始时间由秒实时控制

CJNE A,#05H,L1

RET L1: JNC L2 CPL BEEP LCALL DELAY1 RET L2:

MOV A,21H CJNE A,#07H,L3 CPL BEEP LCALL DELAY1 RET L3: JNC L4 SETB BEEP LCALL DELAY1 RET L4:

MOV A,21H CJNE A,#12H,L5

24

单片机课程设计

SETB BEEP LCALL DELAY1 RET L5:

JNC EXIT_DALING CPL BEEP LCALL DELAY1 RET

;/*****响铃方式2程序(响5秒)*****/

DALING2:

JNB 44H,EXIT_DALING

MOV A,21H ;响铃起始时间由秒实时控制

CJNE A,#05H,L6

SETB BEEP RET L6:

JNC EXIT_DALING CPL BEEP LCALL DELAY1 RET

;/*****响铃方式3程序*****/

DALING3:

CJNE R2,#01H,EXIT_DALING CJNE R3,#05H,DL3 MOV R2,#00H MOV R3,#00H SETB BEEP RET DL3: CPL BEEP LCALL DELAY1

25

单片机课程设计

RET EXIT_DALING: RET

DELAY1:MOV R6,#10 ;短延时子程序

X1:MOV R7,#80

X2:DJNZ R7,X2 DJNZ R6,X1 RET END ;程序结束

5.2器材仪表:

仪器:单片机仿真器或程序固化设置 一台;PC机一台;万用表一块;

主要元器件:89C51一片,键盘或按键一套,显示屏LCD或LED一块,喇叭一个。

5.3参考资料:

《单片机原理及接口技术》 李朝青 北京航空航天大学出版社 2005年第三版 《模拟电子技术基础》 胡宴如、耿苏燕 高等教育出版社 2004年第一版 《数字电子技术基础》张克农 高等教育出版社 2003年第一版

《单片机课程设计指导》北京航空航天大学出版社,楼然苗等2007年7月 《单片机实验与实践教程》北京航空航天大学出版社,何立民等2004年7月

http://www.docin.com/p-404060887.html

26

单片机课程设计

RET EXIT_DALING: RET

DELAY1:MOV R6,#10 ;短延时子程序

X1:MOV R7,#80

X2:DJNZ R7,X2 DJNZ R6,X1 RET END ;程序结束

5.2器材仪表:

仪器:单片机仿真器或程序固化设置 一台;PC机一台;万用表一块;

主要元器件:89C51一片,键盘或按键一套,显示屏LCD或LED一块,喇叭一个。

5.3参考资料:

《单片机原理及接口技术》 李朝青 北京航空航天大学出版社 2005年第三版 《模拟电子技术基础》 胡宴如、耿苏燕 高等教育出版社 2004年第一版 《数字电子技术基础》张克农 高等教育出版社 2003年第一版

《单片机课程设计指导》北京航空航天大学出版社,楼然苗等2007年7月 《单片机实验与实践教程》北京航空航天大学出版社,何立民等2004年7月

http://www.docin.com/p-404060887.html

26

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

Top