你好!欢迎来到 !
语言
当前位置: 首页>> 技术中心>> 单片机入门>> 51 汇编语言编程:走道灯控制程序

51 汇编语言编程:走道灯控制程序

关键字: 51单片机 编程 作者:admin 来源:不详 发布时间:2018-05-19 浏览:2

按一下按键灯就亮,延时 10s 后自动灭。在亮灯期间再按一下键,灯立即就灭。

用定时器及中断实现。

题目链接:http://zhidao.baidu.com/question/1302357964153805259.html

提问者采纳 2013-12-09 13:47

LED EQU P3.3

KEY EQU P3.7

ORG 0000H

LJMP START

ORG 000BH

LJMP T0_INT

ORG 0030H

;--------------------------------

START:

MOV TMOD, #01H

MOV TH0, #HIGH(65536-62500)

MOV TL0, #LOW(65536-62500)

MOV IE, #82H

;--------------------------------

LP1:

SETB LED ;关灯

JB KEY, LP1 ;等待第一次按键

CALL DELAY

JB KEY, LP1

JNB KEY, $

;-------------------

MOV R2, #160 ;10s

SETB TR0 ;启动定时器

CLR LED ;开灯

LP2:

JNB TR0, LP1 ;如果已经定时结束,就去等待第一次按键

JB KEY, LP2 ;等待第二次按键

CALL DELAY

JB KEY, LP2

JNB KEY, $

SJMP LP1 ;如果发生了第二次按键,就去等待第一次按键

;--------------------------------

T0_INT:

MOV TH0, #HIGH(65536-62500)

MOV TL0, #LOW(65536-62500)

DJNZ R2, T0_E ;定时10s

CLR LED ;时间到了,关灯

CLR TR0

T0_E:

RETI

;--------------------------------

DELAY: ;延时约10ms(fosc=12MHz)

MOV R6, #20

DJNZ R7, $

DJNZ R6, $ - 2

RET

;--------------------------------

END

编辑:admin 最后修改时间:2018-10-08

联系方式

0755-82591179

传真:0755-82591176

邮箱:vicky@yingtexin.net

地址:深圳市龙华区民治街道民治大道973万众润丰创业园A栋2楼A08

Copyright ? 2014-2023 All Rights Reserved.粤ICP备14043402号-4

Baidu
map