微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 简单的单片机的流水灯程序

简单的单片机的流水灯程序

时间:10-31 来源:互联网 点击:


;----- 主程序开始 -----
START: CLR   P1.0       ;P1.0输出低电平,使LED1点亮
    ACALL  DELAY      ;调用延时子程序
    SETB  P1.0       ;P1.0输出高电平,使LED1熄灭
    CLR   P1.1       ;P1.1输出低电平,使LED2点亮
    ACALL  DELAY      ;调用延时子程序
    SETB  P1.1       ;P1.1输出高电平,使LED2熄灭
    CLR   P1.2       ;P1.2输出低电平,使LED3点亮
    ACALL  DELAY      ;调用延时子程序
    SETB  P1.2       ;P1.2输出高电平,使LED3熄灭
    CLR   P1.3       ;P1.3输出低电平,使LED4点亮
    ACALL  DELAY      ;调用延时子程序
    SETB  P1.3       ;P1.3输出高电平,使LED4熄灭
    CLR   P1.4       ;P1.4输出低电平,使LED5点亮
    ACALL  DELAY      ;调用延时子程序
    SETB  P1.4       ;P1.4输出高电平,使LED5熄灭
    CLR   P1.5       ;P1.5输出低电平,使LED6点亮
    ACALL  DELAY      ;调用延时子程序
    SETB  P1.5       ;P1.5输出高电平,使LED6熄灭
    CLR   P1.6       ;P1.6输出低电平,使LED7点亮
    ACALL  DELAY      ;调用延时子程序
    SETB  P1.6       ;P1.6输出高电平,使LED7熄灭
    CLR   P1.7       ;P1.7输出低电平,使LED8点亮
    ACALL  DELAY      ;调用延时子程序
    SETB  P1.7       ;P1.7输出高电平,使LED8熄灭
    ACALL  DELAY      ;调用延时子程序
    AJMP  START      ;8个LED流了一遍后返回到标号START处再循环

  ;----- 延时子程序 -----
DELAY: MOV   R0,#255     ;延时一段时间
D1:   MOV   R1,#255
    DJNZ  R1,$
    DJNZ  R0,D1
    RET            ;子程序返回

  END           ;程序结束

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top