📄 twp.asm
字号:
MOV DPH,A
RET
ZJZH2: CLR C
MOV A,DPL
SUBB A,#30
MOV DPL,A
JNC ZJZH20
DEC DPH
ZJZH20: RET
;花样
RL00: MOV COUNT1,#00H
SETB STBOE
MOV R0,#02
MOV R1,#16
MOV R2,#16
MOV R3,#00
RL01: MOV DPTR,#TAB
CLR C
MOV A,DPL
ADD A,R3
MOV DPL,A
MOV A,#00H
ADDC A,DPH
MOV DPH,A
LCALL ST128RD
MOV A,DAT
RLC A
MOV 06H,C
RL02: MOV DPTR,#06E1H
CLR C
MOV A,DPL
ADD A,R3
MOV DPL,A
MOV A,#00H
ADDC A,DPH
MOV DPH,A
INC R3
INC R3
RL03: LCALL ST128RD
MOV A,DAT
MOV C,06H
RLC A
MOV 06H,C
MOV DAT,A
LCALL ST128WR
CLR C
MOV A,DPL
SUBB A,#01H
MOV DPL,A
JNC RL04
DEC DPH
RL04: DJNZ R0,RL03
MOV R0,#02
LCALL ZJZH2
DJNZ R1,RL03
MOV R1,#16
LCALL ZJZH
DJNZ R2,RL01
RET
RR00: MOV DPTR,#TAB
MOV COUNT1,#00H
SETB STBOE
MOV R0,#02
MOV R1,#16
MOV R2,#16
MOV R3,#00
RR01: MOV DPTR,#06E1H
CLR C
MOV A,DPL
ADD A,R3
MOV DPL,A
MOV A,#00H
ADDC A,DPH
MOV DPH,A
LCALL ST128RD
MOV A,DAT
RRC A
MOV 07H,C
RR02: MOV DPTR,#TAB
CLR C
MOV A,DPL
ADD A,R3
MOV DPL,A
MOV A,#00H
ADDC A,DPH
MOV DPH,A
INC R3
INC R3
RR03: LCALL ST128RD
MOV A,DAT
MOV C,07H
RRC A
MOV 07H,C
MOV DAT,A
LCALL ST128WR
INC DPL
DJNZ R0,RR03
MOV R0,#02
LCALL ZJZH ;前一个字
DJNZ R1,RR03
MOV R1,#16
INC COUNT1
LCALL ZJZH1
DJNZ R2,RR01
RET
;1380
Send_Byte:
CLR RST
NOP
CLR CLK2
NOP
SETB RST
NOP
MOV A,Command
MOV BitCnt,#08h
S_Byte0:
RRC A
MOV CLK1,C
NOP
SETB CLK2
NOP
CLR CLK2
DJNZ BitCnt,S_Byte0
NOP
S_Byte1:
MOV A,@R0
MOV BitCnt,#08h
S_Byte2:
RRC A
MOV CLK1,C
NOP
SETB CLK2
NOP
CLR CLK2
DJNZ BitCnt,S_Byte2
INC R0
DJNZ ByteCnt,S_Byte1
NOP
CLR RST
RET
;********************************************************************
;接收数据程序;
;名称:Receive_Byte
;描述:从被控器HT1380 接收ByteCnt 个字节数据
;命令字节地址在Command 中
;所接收数据的字节数在ByteCnt 中接收的数据在RcvDat 缓冲区中
;********************************************************************
Receive_Byte:
CLR RST
NOP
CLR CLK2
NOP
SETB RST
MOV A,Command
MOV BitCnt,#08h
R_Byte0:
RRC A
MOV CLK1,C
NOP
SETB CLK2
NOP
CLR CLK2
DJNZ BitCnt,R_Byte0
NOP
R_Byte1:
MOV BitCnt,#08h
R_Byte2:
NOP
SETB CLK1
NOP
MOV C,CLK1
RRC A
SETB CLK2
NOP
CLR CLK2
NOP
DJNZ BitCnt,R_Byte2
MOV @R1,A
INC R1
DJNZ ByteCnt,R_Byte1
NOP
CLR RST
RET
Write_Enable:
MOV Command,#8Eh
MOV ByteCnt,#1
MOV R0,#XmtDat
MOV XmtDat,#00h
ACALL Send_Byte
RET
Write_Disable:
MOV Command,#8Eh
MOV ByteCnt,#1
MOV R0,#XmtDat
MOV XmtDat,#80h
ACALL Send_Byte
RET
Osc_Enable:
MOV Command,#80h
MOV ByteCnt,#1
MOV R0,#XmtDat
MOV XmtDat,#00h
ACALL Send_Byte
RET
Osc_Disable:
MOV Command,#80h
MOV ByteCnt,#1
MOV R0,#XmtDat
MOV XmtDat,#80h
ACALL Send_Byte
RET
Read_Multiplebyte:
MOV Command,#0BFh
MOV ByteCnt,#8
MOV R1,#RcvDat
ACALL Receive_Byte
RET
Write_Singlebyte:
MOV ByteCnt,#1
MOV R0,#XmtDat
ACALL Send_Byte
RET
Write_Singlebyte1:
MOV Command,#82h
MOV ByteCnt,#1
MOV R0,#XmtDat
MOV XmtDat,#88h
ACALL Send_Byte
RET
Read_Singlebyte:
MOV ByteCnt,#1
MOV R1,#RcvDat
ACALL Receive_Byte
RET
Write_Multiplebyte:
MOV Command,#0BEh
MOV ByteCnt,#8
MOV R0,#XmtDat
MOV XmtDat,#25h
MOV XmtDat+1,#59h
MOV XmtDat+2,#13h
MOV XmtDat+3,#23h
MOV XmtDat+4,#03h
MOV XmtDat+5,#04h
MOV XmtDat+6,#00H
MOV XmtDat+7,#0
ACALL Send_Byte
RET
DELAY: PUSH PSW ;延时毫秒
DL1MS: MOV R6,#2
DL1: MOV R7,#2
DL2: DJNZ R7,DL2
DJNZ R6,DL1
POP PSW
RET
TAB1:
DB 00H,01H,00H,02H,00H,04H,00H,08H,00H,10H,00H,20H,00H,40H,00H,80H
DB 01H,00H,02H,00H,04H,00H,08H,00H,10H,00H,20H,00H,40H,00H,80H,00H
ORG 0500H
TAB:
;-- 文字: 夫 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 001H,000H,001H,000H,001H,000H,03FH,0FCH,001H,000H,001H,000H,001H,000H,07FH,0FEH
DB 001H,000H,002H,080H,002H,040H,004H,020H,008H,030H,010H,018H,020H,00EH,040H,004H
;-- 文字: 英 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 004H,020H,004H,020H,0FFH,0FEH,004H,020H,001H,000H,01FH,0F0H,011H,010H,011H,010H
DB 011H,010H,0FFH,0FEH,001H,000H,002H,080H,004H,040H,008H,030H,010H,01CH,020H,008H
;-- 文字: 雄 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 010H,0A0H,010H,090H,010H,090H,0FDH,0FEH,021H,010H,023H,010H,029H,0FCH,049H,010H
DB 051H,010H,051H,0FCH,0A1H,010H,029H,010H,045H,010H,0FDH,0FEH,005H,000H,001H,000H
;-- 文字: 者 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 001H,000H,001H,008H,03FH,0ECH,001H,010H,001H,020H,07FH,0FEH,000H,080H,003H,000H
DB 007H,0F8H,01CH,008H,0E4H,008H,007H,0F8H,004H,008H,004H,008H,007H,0F8H,004H,008H
;-- 文字: , --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H
DB 000H,000H,000H,000H,000H,000H,030H,000H,030H,000H,010H,000H,020H,000H,000H,000H
;-- 文字: 胸 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 001H,000H,079H,000H,049H,0FEH,049H,002H,07AH,022H,049H,032H,04AH,0AAH,04AH,04AH
DB 07AH,0AAH,04BH,01AH,04AH,00AH,04BH,0FAH,04AH,00AH,048H,002H,0A8H,014H,090H,008H
;-- 文字: 怀 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 010H,000H,013H,0FEH,010H,020H,010H,020H,058H,040H,054H,060H,094H,0D0H,010H,0C8H
DB 011H,04CH,012H,046H,014H,044H,010H,040H,010H,040H,010H,040H,010H,040H,000H,000H
;-- 文字: 大 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 001H,000H,001H,000H,001H,000H,001H,000H,001H,000H,0FFH,0FEH,001H,000H,002H,080H
DB 002H,080H,002H,040H,004H,040H,004H,020H,008H,010H,010H,018H,020H,00EH,040H,004H
;-- 文字: 志 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 001H,000H,001H,000H,001H,000H,07FH,0FEH,001H,000H,001H,000H,03FH,0FCH,000H,000H
DB 001H,000H,008H,088H,048H,0C4H,048H,086H,048H,014H,088H,018H,007H,0F0H,000H,000H
;-- 文字: , --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H
DB 000H,000H,000H,000H,000H,000H,030H,000H,030H,000H,010H,000H,020H,000H,000H,000H
;-- 文字: 腹 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 001H,000H,03DH,0FEH,025H,000H,027H,0FCH,03DH,004H,025H,0FCH,025H,004H,025H,0FCH
DB 03CH,080H,024H,0FCH,024H,088H,025H,050H,026H,020H,044H,050H,054H,08EH,08BH,004H
;-- 文字: 有 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 001H,000H,001H,000H,07FH,0FEH,002H,000H,004H,000H,00FH,0F0H,018H,010H,028H,010H
DB 04FH,0F0H,088H,010H,008H,010H,00FH,0F0H,008H,010H,008H,090H,008H,070H,008H,020H
;-- 文字: 良 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 002H,000H,001H,000H,01FH,0E0H,010H,020H,01FH,0E0H,010H,020H,010H,020H,01FH,0E0H
DB 012H,010H,012H,030H,011H,040H,010H,080H,010H,040H,014H,030H,038H,00EH,010H,004H
;-- 文字: 谋 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 041H,010H,021H,010H,037H,0FEH,021H,010H,001H,0F0H,0E1H,010H,021H,0F0H,021H,010H
DB 020H,040H,027H,0FEH,020H,0E0H,029H,050H,032H,048H,024H,046H,008H,044H,000H,040H
;-- 文字: , --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H
DB 000H,000H,000H,000H,000H,000H,030H,000H,030H,000H,010H,000H,020H,000H,000H,000H
;-- 文字: 有 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 001H,000H,001H,000H,07FH,0FEH,002H,000H,004H,000H,00FH,0F0H,018H,010H,028H,010H
DB 04FH,0F0H,088H,010H,008H,010H,00FH,0F0H,008H,010H,008H,090H,008H,070H,008H,020H
;-- 文字: 包 --
;-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --
DB 008H,000H,00CH,000H,008H,008H,01FH,0FCH,010H,008H,020H,008H,05FH,0C8H,090H,048H
DB 010H,048H,01FH,0C8H,010H,008H,010H,028H,010H,012H,010H,002H,00FH,0FEH,000H,000H
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -