📄 hgs12864zs.asm
字号:
CD1 EQU P3.0
CS1 EQU P3.3
SCLK EQU P1.0
SDIN EQU P1.1
RES EQU P3.4
M8068 EQU P3.5
MS EQU P3.6
COM EQU 50H
DAT EQU 51H
GRAYB EQU 52H ; 前景灰度等级寄存器 D7,D6 D5,D4
; 背景灰度等级寄存器 D3,D2, D1,D0
GRAYH3 EQU 53H
GRAYH2 EQU 54H
GRAYH1 EQU 55H
GRAYH0 EQU 56H
DAT1 EQU 57H
DAT2 EQU 58H
COUNT1 EQU 59H
O_XL EQU 60H
O_YL EQU 61H
COD EQU 62H
COUN0 EQU 63H
;
;
;
;
;
;
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN: LCALL MSS ;时序选择s时序
CLR CS1
CLR SCLK
LCALL LCD_Reset ;复位
LCALL LCD_Int
MAIN1:
MOV DAT,#000H
LCALL LCD_Clear
LCALL CW1616PR
LCALL DELAY1
MOV COM,#0A7H ;设置显示模式 A4:正常,A5:全亮, A6: 全不亮,A7:反显
LCALL W_C
LCALL DELAY1
MOV DAT,#022H;
LCALL LCD_Clear
MOV GRAYB,#0F2H
LCALL CW8PR
LCALL CC190PR
LCALL DELAY1
MOV COM,#0A4H ;设置显示模式 A4:正常,A5:全亮, A6: 全不亮,A7:反显
LCALL W_C
LCALL DELAY1
LCALL CC4096PR
LCALL DELAY1
MOV COM,#0A7H ;设置显示模式 A4:正常,A5:全亮, A6: 全不亮,A7:反显
LCALL W_C
LCALL DELAY1
MOV COM,#0A5H ;设置显示模式 A4:正常,A5:全亮, A6: 全不亮,A7:反显
LCALL W_C
LCALL DELAY1
MOV COM,#0A4H ;设置显示模式 A4:正常,A5:全亮, A6: 全不亮,A7:反显
LCALL W_C
MOV DAT1,#0AAH ;测试灰度生成子程序
MOV GRAYB,#0F1H
LCALL GRAYC
LCALL DELAY1
MOV DAT1,#00FH ;测试灰度生成子程序
MOV GRAYB,#0FAH
LCALL GRAYC
LCALL DELAY1
LJMP MAIN1
;*******************16*16汉字演示程序*********************
CW1616PR:
MOV GRAYB,#0F0H
MOV O_XL,#16;16*16汉字测试程序 清
MOV O_YL,#4
MOV COD,#0
LCALL CC16PR
MOV O_XL,#24;16*16汉字测试程序 达
MOV O_YL,#4
MOV COD,#1
LCALL CC16PR
MOV O_XL,#32;16*16汉字测试程序 光
MOV O_YL,#4
MOV COD,#2
LCALL CC16PR
MOV O_XL,#40;16*16汉字测试程序 电
MOV O_YL,#4
MOV COD,#3
LCALL CC16PR
MOV O_XL,#4;16*16汉字测试程序 图
MOV O_YL,#24
MOV COD,#4
LCALL CC16PR
MOV O_XL,#12;16*16汉字测试程序 形
MOV O_YL,#24
MOV COD,#5
LCALL CC16PR
MOV O_XL,#20;16*16汉字测试程序 点
MOV O_YL,#24
MOV COD,#6
LCALL CC16PR
MOV O_XL,#28;16*16汉字测试程序 阵
MOV O_YL,#24
MOV COD,#7
LCALL CC16PR
MOV O_XL,#36;16*16汉字测试程序 显
MOV O_YL,#24
MOV COD,#8
LCALL CC16PR
MOV O_XL,#44;16*16汉字测试程序 示
MOV O_YL,#24
MOV COD,#9
LCALL CC16PR
MOV O_XL,#52;16*16汉字测试程序 屏
MOV O_YL,#24
MOV COD,#10
LCALL CC16PR
MOV O_XL,#16;16*16汉字测试程序 测
MOV O_YL,#44
MOV COD,#11
LCALL CC16PR
MOV O_XL,#24;16*16汉字测试程序 测
MOV O_YL,#44
MOV COD,#12
LCALL CC16PR
MOV O_XL,#32;16*16汉字测试程序 测
MOV O_YL,#44
MOV COD,#13
LCALL CC16PR
MOV O_XL,#40;16*16汉字测试程序 测
MOV O_YL,#44
MOV COD,#14
LCALL CC16PR
RET
;*******************8*8字符演示程序********************* WELCOME TO TSINGTEK DISPLAY
CW8PR: ; MOV GRAYB,#0F2H
MOV R1,#00H
MOV R2,#0
CW8PR0:
MOV DPTR,#CTAB0
MOV A,R1
MOVC A,@A+DPTR
MOV O_XL,R2
MOV O_YL,#0
MOV COD,A
LCALL CC8PR
INC R1
MOV A,R2
ADD A,#04
MOV R2,A
CJNE R1,#16,CW8PR0
MOV R1,#00H
MOV R2,#0
CW8PR1:
MOV DPTR,#CTAB1
MOV A,R1
MOVC A,@A+DPTR
MOV O_XL,R2
MOV O_YL,#48
MOV COD,A
LCALL CC8PR
INC R1
MOV A,R2
ADD A,#04
MOV R2,A
CJNE R1,#16,CW8PR1
MOV R1,#00H
MOV R2,#0
CW8PR2:
MOV DPTR,#CTAB2
MOV A,R1
MOVC A,@A+DPTR
MOV O_XL,R2
MOV O_YL,#56
MOV COD,A
LCALL CC8PR
INC R1
MOV A,R2
ADD A,#04
MOV R2,A
CJNE R1,#16,CW8PR2
RET
;单色图形程序 40*38点阵
;******************清屏子程序**************************
CC190PR:
MOV COM,#015H ;设置列地址
LCALL W_C
MOV COM,#22
LCALL W_C
MOV COM,#41
LCALL W_C
MOV A,#8
ADD A,#0CH
MOV DAT1,A
ADD A,#37
MOV DAT2,A
MOV COM,#075H ;设置行地址
LCALL W_C
MOV COM,DAT1
LCALL W_C
MOV COM,DAT2
LCALL W_C
; MOV A,DAT1
MOV DPTR,#CCTAB190
MOV R4,#38
CC190PR0: MOV R5,#5
CC190PR1: ; MOV GRAYB,#000H ;前景色背景色均为0
MOV A,#0
MOVC A,@A+DPTR
INC DPTR
LCALL GRAY
DJNZ R5,CC190PR1
DJNZ R4,CC190PR0
RET
CTAB0:;
DB 034H,033H,029H,02EH,027H,034H,025H,02BH,000H,024H,029H,033H,030H,02CH,021H,039H ;TSINGTEK DISPLAY
CTAB1:
DB 034H,025H,02CH,01AH,010H,011H,010H,00DH,016H,012H,010H,015H,011H,012H,010H,019H ;TEL:010-62051209
CTAB2:
DB 026H,021H,038H,01AH,010H,011H,010H,00DH,016H,012H,013H,016H,016H,018H,017H,011H ;FAX:010-62366871
;***********以下时序选择子程序*******************
M80: ;80时序选择
SETB M8068
SETB MS
RET
M68: ;68时序选择
CLR M8068
SETB MS
RET
MSS: ;串口时序选择
CLR M8068
CLR MS
RET
;***********以上时序选择子程序*******************
;***********延时子程序***************************
;***********程序用变量R7******************
;***********程序用常量R4,R5***************
DELAY:
DDLOOP1:
MOV R5,#02H
DDLOOP:
MOV R4,#0FFH
DJNZ R4,$
DJNZ R5,DDLOOP
DJNZ R7,DDLOOP1
RET
DELAY1: MOV R6,#006H
DEL1:
MOV R7,#0FFH
LCALL DELAY
DJNZ R6,DEL1
RET
;***********延时子程序***************************
;***********复位子程序***************************
LCD_Reset:
CLR RES
MOV R7,#0fH
LCALL DELAY
SETB RES
MOV R7,#0fH
LCALL DELAY
RET
;***********复位子程序***************************
;***********初始化***************************
LCD_Int: MOV COM,#15H ;设置列地址
LCALL W_C
MOV COM,#00H ;起始地址 0~127列,
LCALL W_C
MOV COM,#3FH ;结束地址 3F代表128列,一个字节负责两列
LCALL W_C
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -