⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fl24m.asm

📁 这是一个Led条屏的文字流水汇编程序源码
💻 ASM
字号:
name     fl24m
;
public   fl24m
public   ?fl24m?byte
;public   delay60
public   delay20
;
;ddr11   equ  0a000h
addr12   equ  0e07fh;;;;;;0f834h 0e473h   0e873h
fw10     equ  30h        ;text buffer wide
;fw11     equ  30h           ;screen flow length(wide)=text buffer wide + screen wide
                             ;or stay in screen       =text buffer wide
fw12     equ  0e0h  ;0b0h         ;text buffer wide + 80h

bytes segment  data
prog  segment  code

;
         rseg bytes
?fl24m?byte:
  x:    ds  1
  y:    ds  1
  z:    ds  2
          rseg prog

fl24m:    mov a,x
          add a,#fw10
          mov r4,a       ; 60h
          mov r5,#08h        ;
          mov r2,#18h        ;
          mov r6,x
          mov r0,y  ;y--.a(10h)
  kgn00:  mov a,#00h
          movx @r0,a
          inc r0
          djnz r2,kgn00
          mov r0,y
          ;mov dptr,#addr11        ;#0a000h
         mov r5,#01h
kgn62:   mov dph,z
          mov dpl,z+1
          mov a,dpl
          clr c
          addc a,r6
          dec a
          mov dpl,a
          mov a,dph
          addc a,#00h
          mov r7,dph     ;push dph
          mov r3,dpl     ;push dpl
          mov r2,#10h
 kgn52:   mov r1,x
          clr c
 kgn51:   movx a,@dptr
          rlc a
          movx @dptr,a
          dec dpl;
          djnz r1,kgn51
          movx a,@r0
          rlc a
          movx @r0,a
          inc r0
          clr c
          mov a,dpl
          addc a, x
          addc a,#80h
          mov dpl,a
          mov a,dph
          addc a,#00h
          mov dph,a
          djnz r2,kgn52
          mov r2,#08h
          mov dpl,r3
          mov dph,r7
 kgn54:   mov r1,x
          clr c
 kgn53:   movx a,@dptr
          rlc a
          movx @dptr,a
          dec dpl;
          djnz r1,kgn53
          movx a,@r0
          rlc a
          movx @r0,a
          inc r0
          clr c
          mov a,dpl
          addc a, x
          addc a,#80h
          mov dpl,a
          mov a,dph
          addc a,#00h
          mov dph,a
          djnz r2,kgn54
          djnz r5,kgn62
          mov dph,z
          mov dpl,z+1
          mov r3,dpl
          mov r7,dph
          mov r5,#08h
;***********************************************************************
wait18:   jnb p1.7,wait18    ;24t
wait19:   jb p1.7,wait19     ;24t
          cpl p1.1          ;12t
;+++++++++++++++++++++++++++++++++++++++++++
page11:   mov dptr, #addr12  ;#0c473h;#0f034h ;24t  (4): #0e838h+09h=#0e841h!!!
          mov r0,y         ;
          mov r2,#18h       ;12t   line-num:18h=24
   lop12: mov r1,x; #fw10    ;#24h       ;12t  (12): 36byte+1=24h+1=25h!!! r1=25h
          movx a,@r0;
          rlc a;
          movx @r0,a
          inc r0;
   lop11: movx a,@dptr       ;24t   10w:  total 6.57ms
          rlc a              ;12t   9w :  total 5.95ms
          movx @dptr,a       ;24t   8w :  total 5.32ms    6w:  total 4.06ms
          dec dpl;
          djnz r1,lop11       ;24t         total 4.82ms    (24 Mhz)
          clr c              ;12t
          mov a,dpl          ;12t  dpl=#37h
          addc a, x           ;#fw12 ;#0a4h ;12t  (12):(#80h+#24h)=#97h!!!
          addc a,#80h         ;  x+#80h
          mov dpl,a          ;12t
          mov a,dph          ;12t              dph
          addc a,#00h        ;12t
          mov dph,a          ;12t
          djnz r2,lop12       ;24t    r2=18h=24(rows)
wait11:   jnb p1.7,wait11     ;24t
wait12:   jb p1.7,wait12      ;24t
          cpl p1.1           ;12t
          djnz r5, page11    ;24t    r5=8
          ;+++++++++++++++++++++++++++++++++++++++++++++++
          mov r5,#08h        ;12t  *****************
          mov r2,#18h
          mov r0,y  ;y--.a(10h)
          dec r6             ;
          cjne r6,#00h,kgn11
          mov r6,#01h
   kgn10: mov @r0,#00h
          inc r0
          djnz r2,kgn10
          sjmp  kgn13
   kgn11: mov dpl,r3   ;pop dpl
          mov dph,r7   ;pop dph
          inc dptr
          mov r7,dph   ;push dph
          mov r3,dpl   ;push dpl
   kgn12: movx a,@dptr
          movx @r0,a
          inc r0
          clr c
          mov a,dpl
          addc a, #80h  ;r7
          mov dpl, a
          mov a,dph
          addc a,#00h
          mov dph,a
          djnz r2,kgn12
   kgn13: djnz  r4, page11 ;24t  !!rout6w!!     (r4)=
;*************************************************************************
          ret
; USING 1
; delay60: ;11.0592Mhz
;          push acc
;          mov a,r3
;          push acc
;          mov a,r4
;          push acc
;          mov r3,#32h
;          mov r4,#0ah
; delay10: nop
;          nop
;          djnz r4,delay10
;          pop acc
;          mov r4,a
;          pop acc
;          mov r3,a
;          pop acc
;          ret
 using 1
 delay20: ;24Mhz
          push acc
          mov a,r3
          push acc
          mov a,r4
          push acc
          mov r3,#32h
          mov r4,#1ah
          nop
          nop
 delay21: nop
          nop
          nop
          djnz r4,delay21
          pop acc
          mov r4,a
          pop acc
          mov r3,a
          pop acc
          ret
;delay70:
;push acc       ;24
;         mov a,r3       ;12
 ;        push acc       ;24
;         mov a,r4       ;12
 ;        push acc       ;24
;         mov r3,#32h    ;12
;         mov r4,#0ah    ;12
;delay11: nop            ;12
;         nop            ;12
;         djnz r4,delay11  ;24
;         pop acc          ;24
;         mov r4,a         ;12
;         pop acc          ;24
;         mov r3,a         ;12
;         pop acc          ;24
;         ;nop;
;         ;nop;
;         ;nop
;         ;nop
;         ;nop
;         ;nop
;        ;push acc;
;        ;pop  acc;
;        ;push acc;
;        ;pop  acc;
;        ;nop
;delay71: push acc       ;24
;         mov a,r3       ;12
;         push acc       ;24
;         mov a,r4       ;12
;         push acc       ;24
 ;        mov r3,#32h    ;12
;         mov r4,#15h    ;12
;delay12: nop            ;12
;         nop            ;12
;         djnz r4,delay12  ;24
;         pop acc          ;24
;         mov r4,a         ;12
;         pop acc          ;24
;         mov r3,a         ;12
;         pop acc          ;24
;        ret
          end;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -