找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4307|回复: 0
打印 上一主题 下一主题
收起左侧

单片机制作之—LED闪烁 汇编程序+电路图

[复制链接]
跳转到指定楼层
楼主
ID:85192 发表于 2015-7-14 16:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式



11 04 17  E:\DPJ\OTHER\LED闪烁\LED.ASM
;P1.0 P1.1接2LED,P2.0接一按键。上电,2LED不亮,按第1 次键2LED同时以1S周期闪烁,按第2 次
;2LED轮流1S闪烁...同此循环。
;LED闪烁程序本不用这么写,但本程序的思路可作为单按键多功能(较复杂功能)选择时参考。

ORG 00H
AJMP MAIN
ORG 0BH
AJMP T0INT
ORG 30H
MAIN:
MOV TMOD,#01H ;定时器0工作方式1
MOV TH0,#3CH ;50ms中断
MOV TL0,#0B0H
SETB EA
SETB ET0
MOV R0,#10  ;500ms

KEY:
ACALL DISP  ;这里作防抖用,一般取10ms 。实物时,可在DISP子程序中多次调用,得到10ms延时
JB P2.0,$-2
ACALL DISP
JNB P2.0,$-2
SETB TR0
INC R1  ;R1为按键按下次数
CJNE R1,#2,KEY0
AJMP KEY
KEY0:
MOV R1,#1
AJMP KEY

DISP:
CJNE R1,#1,DISP0
AJMP DISP1
DISP0:
CJNE R1,#2,RT
AJMP DISP2

DISP1:   ;一起闪
JNB F0,DISP11 ;F0为0.5S到标志,每0.5S求反一次
SETB P1.0
SETB P1.1
RET
DISP11:
CLR P1.0
CLR P1.1
RT:
RET
DISP2:   ;交替闪
JNB F0,DISP21 ;F0为0.5S到标志,每0.5S求反一次
SETB P1.0
CLR P1.1
RET
DISP21:
CLR P1.0
SETB P1.1
RET

T0INT:
MOV TH0,#3CH
MOV TL0,#0B0H
DJNZ R0,RTI
MOV R0,#10
CPL F0
RTI:
RETI

END



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表