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

📄 61503b-8bit.asm

📁 TFT IC RS61503B的程序,按接口定义,8080-8BIT接口,能够点亮用RS61503B驱动的TFT屏.接口定义可以改动.
💻 ASM
字号:
;*******************************************
;driver ic:rs61503b
;interface:8080-8BIT
;DOTS:240*320
;author:KING
;*******************************************
cs     EQU  p1.4
res    EQU  P1.5
rs     EQU  P1.6
wr_rw  EQU  P1.7
e_rd   EQU  P1.3
;*******************************************
;主程序
;*******************************************
      ORG  0030H
MAIN:
      call initinal      
disp:
      mov 30h,#22h
      call write_command
      mov 30h,#0f8h
      mov 31h,#00h
      call display
      CALL DELAY1
      call waitkey

      mov 30h,#22h
      call write_command
      mov 30h,#007h
      mov 31h,#0e0h
      call display
      CALL DELAY1
      call waitkey

      mov 30h,#22h
      call write_command
      mov 30h,#00h
      mov 31h,#1fh
      call display
      CALL DELAY1
      call waitkey

      mov 30h,#22h
      call write_command
      mov 30h,#00h
      mov 31h,#00h
      call display
      CALL DELAY1
      call waitkey

      mov 30h,#22h
      call write_command
      mov 30h,#0ffh
      mov 31h,#0ffh
      call display
      CALL DELAY1
      call waitkey

      call display_graphics
      CALL DELAY1
      call waitkey

      jmp disp
;*******************************************
;初始化CODE子程序
;*******************************************
initinal:
       CLR CS
       setb res
       call delay
       clr res
       call delay
       setb res
       call delay

       mov 30h,#01h
       call write_command
       mov 30h,#02h
       mov 31h,#08h
       call write_data

       mov 30h,#02h
       call write_command
       mov 30h,#07h
       mov 31h,#00h
       call write_data

       mov 30h,#03h
       call write_command
       mov 30h,#10h
       mov 31h,#30h
       call write_data

       mov 30h,#08h
       call write_command
       mov 30h,#03h
       mov 31h,#06h
       call write_data

       mov 30h,#70h
       call write_command
       mov 30h,#1bh
       mov 31h,#00h
       call write_data

       mov 30h,#71h
       call write_command
       mov 30h,#00h
       mov 31h,#03h
       call write_data

       mov 30h,#7ah
       call write_command
       mov 30h,#00h
       mov 31h,#00h
       call write_data

       mov 30h,#07h
       call write_command
       mov 30h,#00h
       mov 31h,#21h
       call write_data

       mov 30h,#18h
       call write_command
       mov 30h,#00h
       mov 31h,#01h
       call write_data

       mov 30h,#10h
       call write_command
       mov 30h,#10h
       mov 31h,#90h
       call write_data

       mov 30h,#11h
       call write_command
       mov 30h,#00h
       mov 31h,#07h
       call write_data

       mov 30h,#12h
       call write_command
       mov 30h,#11h
       mov 31h,#02h
       call write_data

       mov 30h,#13h
       call write_command
       mov 30h,#00h
       mov 31h,#0fh
       call write_data

       mov 30h,#14h
       call write_command
       mov 30h,#80h
       mov 31h,#00h
       call write_data

       mov 30h,#18h
       call write_command
       mov 30h,#00h
       mov 31h,#01h
       call write_data
       call delay

       mov 30h,#07h
       call write_command
       mov 30h,#00h
       mov 31h,#01h
       call write_data
       lcall delay1

       mov 30h,#07h
       call write_command
       mov 30h,#00h
       mov 31h,#21h
       call write_data
       lcall delay1

       mov 30h,#12h
       call write_command
       mov 30h,#11h
       mov 31h,#32h
       call write_data
       lcall delay1

       mov 30h,#07h
       call write_command
       mov 30h,#02h
       mov 31h,#33h
       call write_data
       lcall delay1

       ret
;*******************************************
;写命令子程序
;*******************************************
write_command:
       ;clr cs
       clr rs
       ;setb e_rd
       ;setb wr_rw

       clr a
       mov p2,a

       clr wr_rw
       setb wr_rw

       mov p2,30h

       clr wr_rw
       setb wr_rw

       ret
;*******************************************
;写数据子程序
;*******************************************
write_data:
       ;clr cs
       setb rs
       ;setb e_rd
       setb wr_rw

       mov p2,30h

       clr wr_rw
       setb wr_rw

       mov p2,31h

       clr wr_rw
       setb wr_rw

       ret
;*******************************************
;显示RGB子程序
;*******************************************
display:
        mov r2,#1
TEST2:  mov r1,#176
TEST1:  mov r0,#220
TEST0:  call    write_data
        DJNZ    R0,TEST0
        DJNZ    R1,TEST1
        DJNZ    R2,TEST2

        ret
;*******************************************
;显示图片子程序
;*******************************************
display_graphics:
        mov dptr,#0000h
        clr p3.0
        clr p3.1
        
        clr p1.0
        clr p1.1
        clr p1.2

        mov r0,#2
loop10: mov r1,#128
loop11: mov r2,#128
loop12:
        clr a
        movx a,@dptr
        mov 30h,a
        inc dptr
        movx a,@dptr
        mov 31h,a
        inc dptr
        call write_data
        djnz r2,loop12
        djnz r1,loop11
        djnz r0,loop10

        setb p1.0
        clr p1.1
        clr p1.2

        mov r1,#186
loop21: mov r2,#32
loop22:
        clr a
        movx a,@dptr
        mov 30h,a
        inc dptr
        movx a,@dptr
        mov 31h,a
        inc dptr
        call write_data
        djnz r2,loop22
        djnz r1,loop21
        call delay1
        call waitkey
        
        clr p1.0
        setb p1.1
        clr p1.2
        mov dptr,#0000h

        mov r0,#2
loop30: mov r1,#128
loop31: mov r2,#128
loop32:
        clr a
        movx a,@dptr
        mov 30h,a
        inc dptr
        movx a,@dptr
        mov 31h,a
        inc dptr
        call write_data
        djnz r2,loop32
        djnz r1,loop31
        djnz r0,loop30

        setb p1.0
        setb p1.1
        clr p1.2

        mov r1,#186
loop41: mov r2,#32
loop42:
        clr a
        movx a,@dptr
        mov 30h,a
        inc dptr
        movx a,@dptr
        mov 31h,a
        inc dptr
        call write_data
        djnz r2,loop42
        djnz r1,loop41
        call delay1
        call waitkey
        
        clr p1.0
        clr p1.1
        setb p1.2
        mov dptr,#0000h

        mov r0,#2
loop50: mov r1,#128
loop51: mov r2,#128
loop52:
        clr a
        movx a,@dptr
        mov 30h,a
        inc dptr
        movx a,@dptr
        mov 31h,a
        inc dptr
        call write_data
        djnz r2,loop52
        djnz r1,loop51
        djnz r0,loop50

        setb p1.0
        clr p1.1
        setb p1.2

        mov r1,#186
loop61: mov r2,#32
loop62:
        clr a
        movx a,@dptr
        mov 30h,a
        inc dptr
        movx a,@dptr
        mov 31h,a
        inc dptr
        call write_data
        djnz r2,loop62
        djnz r1,loop61
        call delay1
        call waitkey
        
        clr p1.0
        setb p1.1
        setb p1.2
        mov dptr,#0000h

        mov r0,#2
loop70: mov r1,#128
loop71: mov r2,#128
loop72:
        clr a
        movx a,@dptr
        mov 30h,a
        inc dptr
        movx a,@dptr
        mov 31h,a
        inc dptr
        call write_data
        djnz r2,loop72
        djnz r1,loop71
        djnz r0,loop70

        setb p1.0
        setb p1.1
        setb p1.2

        mov r1,#186
loop81: mov r2,#32
loop82:
        clr a
        movx a,@dptr
        mov 30h,a
        inc dptr
        movx a,@dptr
        mov 31h,a
        inc dptr
        call write_data
        djnz r2,loop82
        djnz r1,loop81

        ret
;*******************************************
;延时子程序(10ms)
;*******************************************
 delay: mov r3,#20
 loop7: mov r4,#248
 loop6: djnz r4,loop6
        djnz r3,loop7
        ret
;*******************************************
;延时子程序
;*******************************************
 delay1: MOV R2,#10
 KK:    CALL DELAY
        djnz r2,KK
        ret
;*******************************************
;waitkey子程序
;*******************************************
WAITKEY:
	MOV	44H,#05FH
DEL1:   LCALL   DELAY
        DJNZ    44H,DEL1
        SETB    P3.3
        lcall   delay
STATUS1:MOV     C,P3.3
        lcall   delay
        JNC     STATUS1
        lcall   delay
        RET        
;*******************************************
;图片数据
;*******************************************
graphics:
DB    0FCH,004H,000H,004H,0FCH,044H,0E0H,014H,00CH,004H,000H,000H,008H,008H,0FCH,000H
DB    000H,000H,000H,000H,008H,008H,0FCH,000H,000H,000H,000H,000H,0FCH,084H,044H,044H
DB    084H,004H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H
DB    000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H
DB    000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H
DB    000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,0FFH
DB    0FFH,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H
DB    080H,080H,080H,080H,080H,080H,080H,080H,080H,080H,080H,080H,080H,080H,080H,0FFH
;*******************************************
end
;*******************************************

⌨️ 快捷键说明

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