📄 init1335.asm
字号:
;********************INIT1335********************
;本程序实现液晶显示控制器SED1335的初始化。
;入口参数:图形显示区的行数在SOU中(前0~240行)。
;出口参数:无。
;占用资源:W,STATUS,RB0~RB2,RC,023H,024H,028H,029H,二重堆栈。
;说 明:1.显示屏为320*240点阵。
; 2.显示屏前128行为图形方式,后112行为文本方式
; 3.SAD1=0000H,SAD2=5000H,SAD3=3000H所有的区都开显示且不闪烁。
; 4.AP=48,显示缓冲区将被清0
WWR EQU 0
A0 EQU 2
RRD EQU 1
IFNDEF INIT13351
#DEFINE INIT13351
;*****************指令码写入子程序************
CMDIN MOVWF PORTC
BSF PORTB,A0
NOP
NOP
BCF PORTB,WWR
NOP
NOP
BSF PORTB,WWR
RETURN
;*****************数据及参数写入子程序****************
DATAIN MOVWF PORTC
BCF PORTB,A0
NOP
NOP
BCF PORTB,WWR
NOP
NOP
BSF PORTB,WWR
RETURN
;*****************数据读出子程序****************
DATAOUT BSF STATUS,RP0
MOVLW 0FFH
MOVWF TRISC
BCF STATUS,RP0
BSF PORTB,A0
NOP
NOP
BCF PORTB,RRD
NOP
NOP
MOVF PORTC,W
BSF PORTB,RRD
BSF STATUS,RP0
CLRF TRISC
BCF STATUS,RP0
RETURN
;*****************初始化程序************************
INIT1335 BSF STATUS,RP0
CLRF TRISC
CLRF TRISB
BCF STATUS,RP0
CLRF PCLATH
MOVLW 30H
MOVWF CNT
MOVLW 40H
CALL CMDIN ;写SYSTEM SET指令
MOVLW 30H ;P1(单屏结构,内部CGROM+CGRAM1)
CALL DATAIN
MOVLW 87H ;P2
CALL DATAIN
MOVLW 07H ;P3
CALL DATAIN
MOVLW 28H ;P4(320个点,40字节)
CALL DATAIN
MOVLW 42H ;P5
CALL DATAIN
MOVLW 0F0H ;P6(L/F=240行)
CALL DATAIN
MOVLW 30H ;P7(AP=48)
CALL DATAIN
MOVLW 0 ;P8
CALL DATAIN
MOVLW 44H ;写SCROLL指令
CALL CMDIN
MOVLW 00H ;P1
CALL DATAIN
MOVLW 00H ;P2(SAD1从0000H开始)
CALL DATAIN
MOVF SOU,W ;P3(SAD1占SOU行)
CALL DATAIN
MOVLW 00H ;P4
CALL DATAIN
MOVLW 50H ;P5(SAD2从5000H开始)
CALL DATAIN
MOVLW 0F0H ;P6(SAD2占240行)
CALL DATAIN
MOVLW 00H ;P7
CALL DATAIN
MOVLW 30H ;P8(SAD3从3000H开始)
CALL DATAIN
MOVLW 00H ;P9
CALL DATAIN
MOVLW 00H ;P10
CALL DATAIN
MOVLW 5BH ;OYLAY
CALL CMDIN
MOVLW 04H ;P(一区为图形属性,三区为文本属性)
CALL DATAIN
MOVLW 5AH
CALL CMDIN ;HDOT SCR
MOVLW 00H
CALL DATAIN ;点位移0
MOVLW 01001100B ;CSRDIR
CALL CMDIN
MOVLW 46H ;CSRW
CALL CMDIN
MOVLW 00H
CALL DATAIN ;P1
CALL DATAIN ;P2(光标指针设在0000h)
MOVLW 59H ;DISP ON/OFF(开显示)
CALL CMDIN
MOVLW 54H ;P(所有区显示但不闪烁)
CALL DATAIN
;**********RAM清0***************
CLR1335 CLRW
MOVWF TEMP1
MOVWF CNT
MOVLW 42H
CALL CMDIN
MOVLW 00H
LOOP96 CALL DATAIN ;RAM清0
DECFSZ CNT,F
GOTO LOOP96
DECFSZ TEMP1,F
GOTO LOOP96
RETURN
ENDIF
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -