daily pastebin goal
65%
SHARE
TWEET

Untitled

a guest Nov 1st, 2018 152 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. E equ p1.0
  2. cseg at 8000h
  3.  
  4. jmp SHOW
  5.  
  6. ;???????????? ?????? ??????? ? ?????????? ???
  7.  
  8. WRITE_COMMAND:
  9.     call    WAIT_BF     ; ???????? ???? ?????????
  10.     push    acc
  11.     push    b
  12.    
  13.     mov b,a     ; ????????? ???????? ??? ???????
  14.         anl a,#11110000b    ; ???????? ??????? ??????? ? ????????????? C/D=0,R/W=0,E=0
  15.     mov p1,a            ; ????? ??????(??.???????)
  16.    
  17.     setb    E       ; ????????? E=1
  18.     nop
  19.     clr E       ; ????????? E=0
  20.  
  21.     mov a, b        ; ??????????????? ???????? ??? ???????
  22.     swap    a       ; ?????? ??????? ???????(?????.->?????.)                                   
  23.     anl a, #11110000b   ; ???????? ??????? ??????? ? ????????????? C/D=0,R/W=0,E=0
  24.     mov p1,a            ; ????? ??????(??.???????)
  25.    
  26.     setb    E       ; ????????? E=1
  27.     nop
  28.     clr E       ; ????????? E=0
  29.  
  30.     mov p1, #11110000b
  31.     pop     b
  32.     pop     acc
  33. ret
  34.  
  35. ;???????????? ?????? ????? ?????? ? ?????????? ???
  36.  
  37. WRITE_DATA:
  38.     push    acc
  39.     push    b
  40.     call    WAIT_BF     ; ???????? ???? ?????????
  41.    
  42.     mov b, a        ; ????????? ???????? ??????        
  43.     anl a, #11110000b   ; ???????? ??????? ???????
  44.     orl     a, #00000010b   ; ? ????????????? C/D=1, R/W=0,E=0
  45.     mov p1, a           ; ????? ??????(??.???????)
  46.  
  47.     setb    E       ; ????????? E=1
  48.     nop
  49.     clr E       ; ????????? E=0
  50.    
  51.     mov a, b            ; ??????????????? ???????? ??? ???????
  52.     swap    a               ; ?????? ??????? ???????(?????.->?????.)
  53.     anl a, #11110000b   ; ??????? ??????? ???????
  54.     orl     a, #00000010b  
  55.     mov p1, a           ; ????? ??????(??.???????)
  56.  
  57.     setb    E       ; ????????? E=1
  58.     nop
  59.     clr E       ; ????????? E=0
  60.  
  61.     mov p1, #11110000b
  62.     pop  b
  63.     pop acc
  64. ret
  65.  
  66. ;???????????? ????????????? ???
  67.  
  68. LCD_INIT:
  69.     clr E
  70.  
  71.     mov a, #28h         ; ??????? ??? ? 4-? ?????????, 2???????? ????? 00101000
  72.     call    WRITE_COMMAND
  73.  
  74.     mov a, #03h         ; ?????? ?????? ????????????? ?????? DRAM, AC=0  00000011
  75.     call    WRITE_COMMAND
  76.  
  77.     mov a, #0Dh     ; ??????????? ???????? ???????? ? ????????
  78.                 ; ??????????? ??????? ? ???? ?????????? ??????????
  79.     call    WRITE_COMMAND
  80.  
  81.     mov a, #06h     ; ????? ??????????????? ??????????? ??????? ?????
  82.                 ; ??????? ????? ?????? ??????? ???????
  83.     call    WRITE_COMMAND  
  84.  
  85.     mov     a, #01h         ; ??????? ??????
  86.     call    WRITE_COMMAND
  87.  
  88.         mov p1, #11110000b
  89.  
  90. ret
  91.  
  92. ;------------------------------------------------------------------------------------------------
  93.  
  94. ;???????????? ???????? ???? ?????????
  95.  
  96. WAIT_BF:
  97.     push    acc
  98. WAIT_LL:      
  99.     mov p1,#11110100b   ; ????????? C/D=0, R/W=1,E=0
  100.     setb    E           ; ????????? E=1
  101.     mov a, p1       ; ?????? ??????? ??????? ???????? IR
  102.     clr E           ; ????????? E=0
  103.     mov b, a        ; ????????? ???????? ??????? ???????
  104.     setb    E           ; ????????? E=1
  105.     mov a, p1           ; ?????? ??????? ???????
  106.     clr E
  107.     mov a, b
  108.     jb  acc.7, wait_ll  ; ???????? ???? ????????? BF
  109.     pop acc
  110. ret
  111. ;------------------------------------------------------------------------------------------------
  112.  
  113. ;???????????? ?????? ???
  114.  
  115. SHOW:
  116.  
  117.     call    LCD_INIT
  118.  
  119.     push    acc        
  120.     push    b
  121.                 ; ??? ??????? ????????? ?? ??????? ? ???????? ????
  122.     mov a,#44h          ; ?
  123.     call write_data
  124.     mov a,#04Ah         ; ?
  125.     call write_data
  126.     mov a,#20h          ; ?
  127.     call write_data
  128.     mov a,#04Dh         ; ?
  129.     call write_data
  130.     mov a,#49h          ; ?
  131.     call write_data
  132.     mov a,#54h          ; ?
  133.     call write_data
  134.     mov a,#43h          ; ?
  135.     call write_data
  136.     mov a, #48h
  137.     call write_data
  138.    
  139.     mov a,#11000000b    ; ??????? ?? 2?? ??????
  140.     call write_command
  141.    
  142.     mov a,#59h          ; ?
  143.     call write_data
  144.     mov a,#75h          ; -
  145.     call write_data
  146.     mov a,#6Eh          ; 0
  147.     call write_data
  148.     mov a,#67h          ; 7
  149.     call write_data
  150.     mov a,#20h          ; -
  151.     call write_data
  152.     mov a,#4Eh          ; 1
  153.     call write_data
  154.     mov a,#49h          ; 5
  155.     call write_data
  156.     mov a,#67h          ; 1
  157.     call write_data
  158.     mov a,#6Fh          ; 5
  159.     call write_data
  160.     mov a,#72h          ; 5
  161.     call write_data
  162.     pop b
  163.     pop acc
  164.     m1: jmp m1 ; --------------
  165. end
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top