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

📄 1335.asm

📁 2005年全国大学生电子设计大赛实验程序 附各个模块以及生成文件
💻 ASM
字号:

;;;;;;;;;;;;          演示程序

;320*240LCD,型号EDMMU96B0F,控制芯片SED1335
;P1为数据总线
;定义LCD控制线
  WRA       EQU   P3.1
  RDA       EQU   P3.0
  AO        EQU   P3.2
  REST      EQU   P3.6
  CSS       EQU   P3.4  
  
  TEMP    EQU  30H             ;通用变量
  ADDRL   EQU  40H             ;地址低8位
  ADDRH   EQU  41H             ;地址高8位

 CSEG   AT  0000H
 NOP
 CLR    CSS                 ;1335片选
MAIN:
  NOP
  CLR   REST
  LCALL   DELAY
  SETB  REST
  LCALL   INTLCD           ;调用LCD初始化子程序
  NOP
  LCALL  CLEAR1
  LCALL  CLEAR2
  NOP
LOOP:
  NOP
  MOV  ADDRL,#00H
  MOV  ADDRH,#28H
  LCALL  SETADDR
  MOV  R6,#5
  MOV  R7,#00H
  MOV  TEMP,#0
LKK1:
  MOV  P1,TEMP                    
  CLR  WRA
  SETB  WRA
  INC  TEMP
  DJNZ  R7,LKK1
  DJNZ  R6,LKK1
  NOP
  LCALL  DEL2S
  NOP
  LCALL  CLEAR1
  NOP
  MOV  ADDRL,#00
  MOV  ADDRH,#00
  LCALL  SETADDR
  MOV  R6,#39
  MOV  R7,#00H
LKK2:
  MOV  P1,#0FH       ;写入显示数据0FH                 
  CLR  WRA
  SETB  WRA
  DJNZ  R7,LKK2
  DJNZ  R6,LKK2
  NOP
  LCALL   DEL2S
  NOP
  LCALL  CLEAR2
  NOP
  NOP
  LJMP  LOOP

DELAY:
  MOV  R5,#0
  MOV  R6,#0
  MOV  R7,#1
DEL:
  DJNZ  R5,DEL
  DJNZ  R6,DEL
  DJNZ  R7,DEL
  RET
DEL2S:
  MOV  R5,#0
  MOV  R6,#0
  MOV  R7,#20
D2S:
  DJNZ  R5,D2S
  DJNZ  R6,D2S
  DJNZ  R7,D2S
  RET

;_______________________________________________________________________
INTLCD:                       ;初始化LCD子程序
  MOV  P1,#40H
  SETB AO
  CLR  WRA
  SETB WRA
  CLR  AO
  MOV  R6,#08
  MOV DPTR,#SYSTAB        ;初始化设置
INTR1:
  CLR  A
  MOVC  A,@A+DPTR
  MOV  P1,A
  CLR   WRA
  SETB  WRA
  INC  DPTR
  DJNZ  R6,INTR1
  MOV  P1,#44H
  SETB AO
  CLR  WRA
  SETB WRA
  CLR  AO
  MOV  R6,#10
  MOV  DPTR,#SCRTAB      ;显示域设置
INTR2:
  CLR  A
  MOVC A,@A+DPTR
  MOV  P1,A
  CLR  WRA
  SETB WRA
  INC  DPTR
  DJNZ  R6,INTR2
  MOV  P1,#5AH            ;点位移设置
  SETB AO
  CLR  WRA
  SETB WRA
  MOV  P1,#00H 
  CLR  AO 
  CLR  WRA
  SETB WRA
  MOV  P1,#4CH            ;光标移动方向设置,4CH向右,4FH向下
  SETB  AO
  CLR   WRA
  SETB  WRA
  MOV  P1,#5BH             ;显示合成设置
  SETB  AO
  CLR  WRA
  SETB WRA
  MOV  P1,#08H             ;显示一区为文本,显示二区为图形
  CLR  AO 
  CLR  WRA 
  SETB WRA
  MOV   P1,#59H            ;开LCD
  SETB  AO
  CLR   WRA
  SETB  WRA
  CLR   AO
  MOV   P1,#14H             
  CLR   WRA
  SETB  WRA
  RET

;==============================================
;清第一显示区
CLEAR1:  
  MOV    ADDRL,#00H
  MOV    ADDRH,#28H            
  LCALL  SETADDR         ;设置地址位2800H
  MOV  R6,#5
  MOV  R7,#00H
CLR11:
  MOV  P1,#00H       ;写入显示数据00H                 
  CLR  WRA
  SETB  WRA
  DJNZ  R7,CLR11
  DJNZ  R6,CLR11
  RET
;清第二显示区
CLEAR2:    
  MOV   ADDRL,#0
  MOV   ADDRH,#0          
  LCALL  SETADDR         ;设置地址为0000H
  MOV  R6,#39
  MOV  R7,#37
CLR21:
  MOV  P1,#00H       ;写入显示数据为00H
  CLR  WRA
  SETB  WRA
  DJNZ  R7,CLR21
  DJNZ  R6,CLR21
  RET
;=========================================================================

SETADDR:                        ;设置LCD地址子程序
  MOV  P1,#46H         ;光标指针设置指令
  SETB  AO
  CLR   WRA
  SETB  WRA
  MOV  P1,ADDRL
  CLR  AO
  CLR  WRA
  SETB WRA
  MOV  P1,ADDRH
  CLR  WRA
  SETB  WRA
  MOV  P1,#42H
  SETB AO 
  CLR  WRA
  SETB WRA
  CLR  AO
  RET

   
SYSTAB:DB 30H,87H,8FH,40,60,240,40,00H                    ;P1~P8 初始化设置参数
SCRTAB:DB 00H,28H,240,00H,00H,240,00H,50H,00H,50H         ;P1~P10 显示域设置参数

;参数说明
;显示一区的首地址是2800H,显示二区的首地址是0000H

END 

⌨️ 快捷键说明

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