登录|立即注册|使用QQ帐号登录
论坛 > 51单片机
发帖|
看8371|回0|收藏
楼主 ID:128229 只看他
2016-6-27 21:49
ORG   0              ;程序从0地址开始
START:    MOV   DPTR,#TAB      ;将DPTR指向编码表位置
LOOP:     CLR   A              ;清空ACC
          MOVC  A,@A+DPTR      ;根据ACC的内容取出编码表里的编码
          CJNE  A,#0FFH,SHOW   ;若ACC的内容不等于0FFH,则跳至SHOW处执行
          AJMP  START          ;跳到START处执行
SHOW:     MOV   P2,A           ;让P1口输出ACC的内容
          ACALL DELAY          ;调用延时子程序
          INC   DPTR           ;将DPTR寄存器的内容加1
          AJMP  LOOP           ;跳到LOOP处执行
;0.25秒延时子程序(12MHz晶振)===========================
DELAY:     MOV      R5,#2            ;R5寄存器加载8次
D0:        MOV      R7,#250          ;R7寄存器加载250次数
D1:        MOV      R6,#250          ;R6寄存器加载250次数
D2:        DJNZ     R6,D2            ;D2循环执行R6次
           DJNZ     R7,D1            ;D1循环执行R7次
           DJNZ     R5,D0            ;D0循环执行R5次
           RET                       ;返回主程序
TAB:       ;流水灯花样可以任意编写(最后一组为11111111)
    DB       10010101B
    DB       01101010B
    DB       10100101B
    DB       01010101B
    DB       10001010B
    DB       01101000B
    DB       10110101B
    DB       01000010B
    DB       10000000B
    DB       01000000B
    DB       00100000B
    DB       00010000B
    DB       00001000B
    DB       00000100B
    DB       00000010B
    DB       00000001B
    DB       00000000B
    DB       11010111B
    DB       11001001B
    DB       11001101B
    DB       11001001B
    DB       00110111B  
    DB       00000001B
    DB       00000010B
    DB       00000100B
    DB       00001000B
    DB       00010000B
    DB       00100000B
    DB       01000000B
    DB       10000000B
    DB       11011101B
    DB       11101011B
    DB       11101101B
    DB       11101011B
    DB       11011011B
    DB       10111111B
    DB       01111011B
    DB       10111011B
    DB       11011111B
    DB       11101011B
    DB       10110101B
    DB       11011011B
    DB       01101101B
    DB       0FFH       ;11111111
END                         ;主程序结束

51黑电子论坛

Powered by Discuz! X3.1

首页|标准版|触屏版|电脑版