Advertisement
Guest User

Untitled

a guest
May 25th, 2015
252
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.50 KB | None | 0 0
  1. LJMP START
  2. P5 EQU 0F8H
  3. P7 EQU 0DBH
  4. WR_CMD EQU 0FF2CH
  5. WR_DATA EQU 0FF2DH
  6. RD_STATUS EQU 0FF2EH
  7. RD_DATA EQU 0FF2FH
  8. #define INITDISP 038H
  9. #define CLEAR 001H
  10. #define LCDON 00EH
  11. ORG 0100H
  12.  
  13. START:
  14. LCALL LCD_INIT
  15.  
  16. MOV A,P5
  17. ANL A,#0FH
  18. MOV P5,A
  19.  
  20. MOV DPTR, #08077H
  21. MOV A,#'1'
  22. MOVX @DPTR,A
  23.  
  24. MOV DPTR, #0807bH
  25. MOV A,#'2'
  26. MOVX @DPTR,A
  27.  
  28. MOV DPTR, #0807dH
  29. MOV A,#'3'
  30. MOVX @DPTR,A
  31.  
  32. MOV DPTR, #0807eH
  33. MOV A,#'A'
  34. MOVX @DPTR,A
  35.  
  36. MOV DPTR, #080b7H
  37. MOV A,#'4'
  38. MOVX @DPTR,A
  39.  
  40. MOV DPTR, #080bbH
  41. MOV A,#'5'
  42. MOVX @DPTR,A
  43.  
  44. MOV DPTR, #080bdH
  45. MOV A,#'6'
  46. MOVX @DPTR,A
  47.  
  48. MOV DPTR, #080beH
  49. MOV A,#'B'
  50. MOVX @DPTR,A
  51.  
  52. MOV DPTR, #080d7H
  53. MOV A,#'7'
  54. MOVX @DPTR,A
  55.  
  56. MOV DPTR, #080dbH
  57. MOV A,#'8'
  58. MOVX @DPTR,A
  59.  
  60. MOV DPTR, #080ddH
  61. MOV A,#'9'
  62. MOVX @DPTR,A
  63.  
  64. MOV DPTR, #080deH
  65. MOV A,#'C'
  66. MOVX @DPTR,A
  67.  
  68. MOV DPTR, #080e7H
  69. MOV A,#'*'
  70. MOVX @DPTR,A
  71.  
  72. MOV DPTR, #080ebH
  73. MOV A,#'0'
  74. MOVX @DPTR,A
  75.  
  76. MOV DPTR, #080edH
  77. MOV A,#'#'
  78. MOVX @DPTR,A
  79.  
  80. MOV DPTR, #080eeH
  81. MOV A,#'D'
  82. MOVX @DPTR,A
  83.  
  84. MOV R0, #010H
  85. MOV R1, #020H
  86. MOV R4, #0FFH
  87. MOV R3, #00H
  88. LOOP:
  89. MOV R2, #0FFH
  90.  
  91. MOV A, R4
  92. MOV P1, A
  93.  
  94. J1:
  95. MOV P5,#01110000B
  96. MOV A,P7
  97. ANL A,#00001111B
  98. MOV B, A
  99. CLR C
  100. SUBB A,#0FH
  101. JZ J2
  102. MOV A, B
  103. ORL A,#01110000B
  104. MOV DPH,#080H
  105. MOV DPL, A
  106. MOV R3, DPL
  107. MOVX A, @DPTR
  108. MOV R2, A
  109. MOV R3, A
  110.  
  111. J2:
  112. MOV P5,#10110000B
  113. MOV A,P7
  114. ANL A,#00001111B
  115. MOV B, A
  116. CLR C
  117. SUBB A,#0FH
  118. JZ J3
  119. MOV A, B
  120. ORL A,#10110000B
  121. MOV DPH,#080H
  122. MOV DPL, A
  123. MOV R3, DPL
  124. MOVX A, @DPTR
  125. MOV R2, A
  126. MOV R3, A
  127.  
  128. J3:
  129. MOV P5,#11010000B
  130. MOV A,P7
  131. ANL A,#00001111B
  132. MOV B, A
  133. CLR C
  134. SUBB A,#0FH
  135. JZ J4
  136. MOV A, B
  137. ORL A,#11010000B
  138. MOV DPH,#080H
  139. MOV DPL, A
  140. MOV R3, DPL
  141. MOVX A, @DPTR
  142. MOV R2, A
  143. MOV R3, A
  144.  
  145. J4:
  146. MOV P5,#11100000B
  147. MOV A,P7
  148. ANL A,#00001111B
  149. MOV B, A
  150. CLR C
  151. SUBB A,#0FH
  152. JZ J5
  153. MOV A, B
  154. ORL A,#11100000B
  155. MOV DPH,#080H
  156. MOV DPL, A
  157. MOV R3, DPL
  158. MOVX A, @DPTR
  159. MOV R2, A
  160. MOV R3, A
  161.  
  162. J5:
  163. MOV A, R2
  164. CLR C
  165. SUBB A,#0FFH
  166. JZ LOOP
  167. MOV A, R3
  168. MOV R4, A
  169. LCALL LCD_PUT_CHAR
  170.  
  171.  
  172. DJNZ R0, SECOND
  173. LCALL LCD_SEC_LN
  174. MOV R1, #010H
  175. SECOND:
  176. DJNZ R1, SKOK
  177. LCALL LCD_CLEAR
  178. MOV R0, #011H
  179. SKOK:
  180.  
  181.  
  182. MOV R7, #003H
  183. TUTU1:
  184. MOV R6, #0FFH
  185. TAMTAM:
  186. MOV R5, #0FFH
  187. TUTU:
  188. DJNZ R5, TUTU
  189. DJNZ R6, TAMTAM
  190. DJNZ R7, TUTU1
  191.  
  192. JMP LOOP
  193.  
  194.  
  195. LCD_INIT:
  196. MOV A, #INITDISP
  197. LCALL LCD_WR_CMD
  198.  
  199. MOV A, #CLEAR
  200. LCALL LCD_WR_CMD
  201.  
  202. MOV A, #LCDON
  203. LCALL LCD_WR_CMD
  204.  
  205. RET
  206.  
  207. LCD_CLEAR:
  208. MOV A, #CLEAR
  209. LCALL LCD_WR_CMD
  210.  
  211. MOV A, #LCDON
  212. LCALL LCD_WR_CMD
  213.  
  214. RET
  215.  
  216. LCD_WR_CMD:
  217. PUSH ACC
  218. MOV DPTR, #RD_STATUS
  219. PETLA:
  220. MOVX A, @DPTR
  221. JB ACC.7, PETLA
  222. MOV DPTR, #WR_CMD
  223. POP ACC
  224. MOVX @DPTR, A
  225. RET
  226.  
  227. LCD_WR_DATA:
  228. PUSH ACC
  229. MOV DPTR, #RD_STATUS
  230. PETLA1:
  231. MOVX A, @DPTR
  232. JB ACC.7, PETLA1
  233. MOV DPTR, #WR_DATA
  234. POP ACC
  235. MOVX @DPTR, A
  236. RET
  237.  
  238. LCD_PUT_CHAR:
  239. LCALL LCD_WR_DATA
  240. RET
  241.  
  242. LCD_SEC_LN:
  243. MOV A, #0xc0
  244. LCALL LCD_WR_CMD
  245. RET
  246.  
  247. NOP
  248. NOP
  249. NOP
  250. JMP $
  251. END START
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement