Vous êtes sur la page 1sur 16

Chương trình Led Ma Trận giao tiếp

máy tính
SVTH : Nguyễn Tiến Đạt
  Bùi V?n Giang
Lớp :  ĐHĐT3ATLT

; PHAN VUNG BO NHO RAM:
; 00­>39: LUU SO KY TU CUA LINE 1 
; 40­>79: LUU SO KY TU CUA LINE 2
; 80­>383: LUU MA CHU HIEN THI CUA LINE 1
; 384­>687: LUU MA CHU HIEN THI CUA LINE 2
;*/*/*/*/*/*/*/*/*/*/
; PHAN VUNG BO NHO ROM 24C04
; 00­>40:   TEXT 1 CUA LINE 1
; 41­>81:   TEXT 2 CUA LINE 1
; 82­>122:  TEXT 3 CUA LINE 1
; 123­>163: TEXT 1 CUA LINE 2
; 164­>204: TEXT 2 CUA LINE 2
; 205­>245: TEXT 3 CUA LINE 2
; 246: MaMau_1
; 247: MaMau_2
; 248: TextCurent1
; 249: TextCurent2
;*/*/*/*/*/*/*/*/*/*/
  $MOD51fx
ORG 00
JMP MAIN
ORG 23H
JMP INTERUP_UART
RED1 BIT P1.0
RED2 BIT P1.1
GREEN1 BIT P1.2
GREEN2 BIT P1.3 

SW1 BIT P3.2 ; CHANGE COLOR FOR LINE 1


SW2 BIT P3.3 ; CHANGE COLOR FOR LINE 2
SW3 BIT P3.4 ; CHANGE TEXT FOR LINE 1
SW4 BIT P3.5 ; CHANGE TEXT FOR LINE 2

DataLedPort EQU P0
SleLedPort EQU P2
;*/*/*/*/*/

I2C_SDA BIT P1.5


I2C_SCL BIT P1.4
ACKBIT BIT 7FH

;*/*/*/*/*/
MaxLine1_H EQU 40H
MaxLine1_L EQU 41H
MaxLine2_H EQU 42H
MaxLine2_L EQU 43H
MaMau_1 EQU 44H
MaMau_2 EQU 45H
Curent1_H EQU 46H
Curent1_L EQU 47H
Curent2_H EQU 48H
Curent2_L EQU 49H
SOKyTu_1 EQU 4AH
SOKyTu_2 EQU 4BH
TimeScan EQU 4CH
ChangeTextLine1 EQU 4DH
ChangeTextLine2 EQU 4EH
TextCurent1 EQU 4FH
TextCurent2 EQU 50H
AddRom EQU 51H
UpDateData EQU 52H
Dta equ 53h
Tam EQU 54H
T_DELAY EQU 55H
;*/*/*/*/*/*/*/*/*/*/
ORG 30H
  MAIN:
MOV TMOD,#21H
MOV TH1,#­3
SETB TR1
MOV SCON,#50H
MOV IE,#90H
MOV 8EH,#0
MOV TimeScan,#0
  MAIN1:
LCALL StartI2C
MOV A,#0A0H
LCALL SendByteI2C
MOV A,#246
LCALL SendByteI2C
LCALL StopI2C
;*/*/*/
LCALL StartI2C
MOV A,#0A1H
LCALL SendByteI2C
CLR ACKBIT

LCALL GetByteI2C
MOV MaMau_1,A
LCALL GetByteI2C
MOV MaMau_2,A
LCALL GetByteI2C
MOV TextCurent1,A
SETB ACKBIT
LCALL GetByteI2C
MOV TextCurent2,A
LCALL StopI2C
MOV ChangeTextLine1,#0
MOV ChangeTextLine2,#0
  LAP0:
MOV UpDateData,#0
LCALL LoadNewText_1
LCALL LoadNewText_2
;*/*/*/*/
  LAP1:
MOV R0,#7
  LAP2:
LCALL HIENTHI
DJNZ R0,LAP2
LCALL SCANSW
MOV A,ChangeTextLine1
CJNE A,#1,LAP2A
MOV ChangeTextLine1,#0
LCALL LoadNewText_1
  LAP2A:
MOV A,ChangeTextLine2
CJNE A,#1,LAP2B
MOV ChangeTextLine2,#0
LCALL LoadNewText_2
  LAP2B:
INC Curent1_L
MOV A,Curent1_L
CJNE A,#0,LAP3
INC Curent1_H
  LAP3:
MOV A,Curent1_L
CJNE A,MaxLine1_L,LAP4
MOV A,Curent1_H
CJNE A,MaxLine1_H,LAP4
MOV Curent1_L,#80
MOV Curent1_H,#0
  LAP4:
INC Curent2_L
MOV A,Curent2_L
CJNE A,#0,LAP5
INC Curent2_H
  LAP5:
MOV A,Curent2_L
CJNE A,MaxLine2_L,LAP1
MOV A,Curent2_H
CJNE A,MaxLine2_H,LAP1
MOV Curent2_L,#LOW(384)
MOV Curent2_H,#HIGH(384)
  LAP6:
MOV A,UpDateData
CJNE A,#1,LAP1
JMP MAIN1
;*/*/*/*/*/*/*/*/*/*/*/*/
  LoadNewText_1:
MOV A,TextCurent1
CJNE A,#1,LoadNewText_1A
MOV AddRom,#0
JMP LoadNewText_1C
;*/*/*/*/
  LoadNewText_1A:
CJNE A,#2,LoadNewText_1B
MOV AddRom,#41
JMP LoadNewText_1C
  LoadNewText_1B:
MOV AddRom,#82
  LoadNewText_1C:
MOV R1,#SOKyTu_1
MOV R0,#0
LCALL LOADTEXT
LCALL LOAD_HEX_1
MOV Curent1_L,#80
MOV Curent1_H,#0

RET
;*/*/*/*/*/*/*/*/*/*/*/*/
  LoadNewText_2:
MOV A,TextCurent2
CJNE A,#1,LoadNewText_2A
MOV AddRom,#123
JMP LoadNewText_2C
;*/*/*/*/
  LoadNewText_2A:
CJNE A,#2,LoadNewText_2B
MOV AddRom,#164
JMP LoadNewText_2C
  LoadNewText_2B:
MOV AddRom,#205
  LoadNewText_2C:
MOV R1,#SOKyTu_2
MOV R0,#40
LCALL LOADTEXT
LCALL LOAD_HEX_2
MOV Curent2_L,#LOW(384)
MOV Curent2_H,#HIGH(384)
RET
;*/*/*/*/*/*/*/*/*/
  WriteRom1Byte:
LCALL StartI2C
MOV A,#0A0H
LCALL SendByteI2C
MOV A,Addrom
LCALL SendByteI2C
MOV A,Dta
LCALL SendByteI2C
LCALL StopI2C
RET
;*/*/*/*/*/*/*/*/*/
  SendByteI2C:
PUSH 07
MOV R7,#8
  SendByteI2C_Loop:
RLC A
MOV I2C_SDA,C
NOP
NOP
SETB I2C_SCL
LCALL DelayI2C
CLR I2C_SCL
DJNZ R7,SendByteI2C_Loop
LCALL AckI2C
POP 07
RET
;*/*/*/*/*/*/*/*/*/
  GetByteI2C:
PUSH 07
SETB I2C_SDA
CLR I2C_SCL
MOV R7,#8
  GetByteI2C_Loop:
SETB I2C_SCL
NOP
NOP
MOV C,I2C_SDA
RLC A
LCALL DelayI2C
CLR I2C_SCL
DJNZ R7,GetByteI2C_Loop
MOV C,ACKBIT
MOV I2C_SDA,C
LCALL AckI2C
POP 07
RET
;*/*/*/*/*/*/*/*/*/
  StartI2C:
SETB I2C_SDA
SETB I2C_SCL
LCALL DelayI2C
CLR I2C_SDA
CLR I2C_SCL
RET
;*/*/*/*/*/*/*/*/*/
  StopI2C:
CLR I2C_SDA
SETB I2C_SCL
LCALL DelayI2C
SETB I2C_SDA
CLR I2C_SCL
RET
;*/*/*/*/*/*/*/*/*/
  AckI2C:
SETB I2C_SCL
LCALL DelayI2C
CLR I2C_SCL
RET
;*/*/*/*/*/*/*/*/*/
  DelayI2C:
PUSH 07
MOV R7,#20
DJNZ R7,$
POP 07
RET
;*/*/*/*/*/*/*/*/*/*/*/*/
  HIENTHI:
PUSH 02
PUSH 03
PUSH Curent1_H
PUSH Curent1_L
PUSH Curent2_H
PUSH Curent2_L
MOV R2,#0
MOV R3,#0F7H
  SCAN:
LCALL DISP_LINE
MOV A,UpDateData
CJNE A,#1,SCAN_1
JMP SCAN_2A
  SCAN_1:
MOV A,R2
ORL A,#0F8H
ANL A,R3
MOV P2,A
LCALL DELAY
MOV P0,#0FFH
MOV P2,#0FFH
NOP
CLR RED1
CLR GREEN1
CLR RED2
CLR GREEN2
INC R2
CJNE R2,#8,SCAN
MOV R2,#0
MOV A,R3
RL A
MOV R3,A
CJNE R3,#07FH,SCAN
  SCAN_2A:
POP Curent2_L
POP Curent2_H
POP Curent1_L
POP Curent1_H
POP 03
POP 02
LCALL SCANSW
RET
;*/*/*/*/*/*/*/*/*/
  DISP_LINE:
MOV DPH,Curent1_H
MOV DPL,Curent1_L
MOVX A,@DPTR
RL A
ORL A,#01
MOV P0,A
;*/*/*/
MOV A,MaMau_1
CJNE A,#1,SCAN_1R
SETB GREEN1
NOP
CLR GREEN1
MOV P0,#0FFH
SETB RED1
NOP
CLR RED1
JMP SCAN_2
  SCAN_1R:
CJNE A,#2,SCAN_1Y
SETB RED1
NOP
CLR RED1
MOV P0,#0FFH
SETB GREEN1
NOP
CLR GREEN1
JMP SCAN_2
  SCAN_1Y:
SETB RED1
SETB GREEN1
CLR RED1
CLR GREEN1
  SCAN_2:
INC DPTR
MOV Curent1_H,DPH
MOV Curent1_L,DPL
;*/*/*/*/*/*/
MOV DPH,Curent2_H
MOV DPL,Curent2_L
MOVX A,@DPTR
MOV P0,A
;*/*/*/
MOV A,MaMau_2
CJNE A,#1,SCAN_2R
SETB GREEN2
NOP
CLR GREEN2
MOV P0,#0FFH
SETB RED2
NOP
CLR RED2
JMP SCAN_3
  SCAN_2R:
CJNE A,#2,SCAN_2Y
SETB RED2
NOP
CLR RED2
MOV P0,#0FFH
SETB GREEN2
NOP
CLR GREEN2
JMP SCAN_3
  SCAN_2Y:
SETB RED2
SETB GREEN2
CLR RED2
CLR GREEN2
  SCAN_3:
INC DPTR
MOV Curent2_H,DPH
MOV Curent2_L,DPL
RET
;*/*/*/*/*/*/*/*/*/*/*/*/
  LOADTEXT: ; CHUONG TRINH CON LAY CHUOI KY TU TU ROM
PUSH 02
LCALL StartI2C
MOV A,#0A0H
LCALL SendByteI2C
MOV A,Addrom ;;;;;;;;;;;;;;;;;;;;;;;;
LCALL SendByteI2C
LCALL StopI2C
;*/*/*/
LCALL StartI2C
MOV A,#0A1H
LCALL SendByteI2C
CLR ACKBIT
LCALL GetByteI2C
MOV @R1,A ; MA DAU LUU SO KY TU CUA CHUOI
MOV R2,A
  LOADTEXT1:
LCALL GetByteI2C
MOVX @R0,A ; CAC MA TIEP THEO LUU KY TU TRONG CHUOI
INC R0
DJNZ R2,LOADTEXT1
SETB ACKBIT
LCALL GetByteI2C
LCALL StopI2C
POP 02
RET
;*/*/*/*/*/*/*/*/*/*/*/*/
  LOAD_HEX_1: ; CHUONG TRINH CON LUU MA HEX CUA CHUOI CAN HIEN THI CHO LINE 1
MOV DPTR,#80
MOV R2,#32
  LOAD_HEX_10:
MOV A,#0FFH
MOVX @DPTR,A ; LUU 32 COT TRANG DAU
INC DPTR
DJNZ R2,LOAD_HEX_10
;*/*/*/*/
MOV R2,SOKyTu_1 ; SO KY TU DA LAY
MOV R0,#0 ; KY TU DAU CUA LINE 1
  LOAD_HEX_11:
MOVX A,@R0
MOV B,#6
MUL AB
PUSH DPH
PUSH DPL
MOV DPTR,#CODEDISP
ADD A,DPL
MOV DPL,A
MOV A,B
ADDC A,DPH
MOV DPH,A
;*/*/*/
MOV R4,#0
MOV R1,#60H ; LAY 6 BYTE TU VUNG ROM LUU VAO VUNG RAM TU 60H­>65H
  LOAD_HEX_13:
MOV A,R4
MOVC A,@A+DPTR
MOV @R1,A
INC R1
INC R4
CJNE R4,#6,LOAD_HEX_13
POP DPL
POP DPH
MOV R1,#60H
;*/*/*/
  LOAD_HEX_14:
MOV A,@R1
MOVX @DPTR,A ; LUU 6 BYTE TU VUNG RAM 60H­>65H VAM VUNG RAM HIEN THI CUA 
LINE 1
INC R1
INC DPTR
CJNE R1,#66H,LOAD_HEX_14
;*/*/*/
INC R0 ; LAY KY TU TIEP THEO CUA CHUOI 1
DJNZ R2,LOAD_HEX_11 ; KIEM TRA XEM DA LAY HET KY TU TRONG CHUOI CHUA
MOV MaxLine1_L,DPL
MOV MaxLine1_H,DPH
;*/*/*/
MOV R2,#32
  LOAD_HEX_15:
MOV A,#0FFH
MOVX @DPTR,A ; LUU 32 COT TRANG SAU
INC DPTR
DJNZ R2,LOAD_HEX_15
RET
;*/*/*/*/*/*/*/*/*/*/*/*/
  LOAD_HEX_2: ; CHUONG TRINH CON LUU MA HEX CUA CHUOI CAN HIEN THI CHO LINE 2
MOV DPTR,#384
MOV R2,#32
  LOAD_HEX_20:
MOV A,#0FFH
MOVX @DPTR,A ; LUU 32 COT TRANG DAU
INC DPTR
DJNZ R2,LOAD_HEX_20
;*/*/*/*/
MOV R2,SOKyTu_2 ; SO KY TU DA LAY
MOV R0,#40 ; KY TU DAU CUA LINE 2
  LOAD_HEX_21:
MOVX A,@R0
MOV B,#6
MUL AB
PUSH DPH
PUSH DPL
MOV DPTR,#CODEDISP
ADD A,DPL
MOV DPL,A
MOV A,B
ADDC A,DPH
MOV DPH,A
;*/*/*/
MOV R4,#0
MOV R1,#60H ; LAY 6 BYTE TU VUNG ROM LUU VAO VUNG RAM TU 60H­>65H
  LOAD_HEX_23:
MOV A,R4
MOVC A,@A+DPTR
MOV @R1,A
INC R1
INC R4
CJNE R4,#6,LOAD_HEX_23
POP DPL
POP DPH
MOV R1,#60H
;*/*/*/
  LOAD_HEX_24:
MOV A,@R1
MOVX @DPTR,A ; LUU 6 BYTE TU VUNG RAM 60H­>65H VAM VUNG RAM HIEN THI CUA 
LINE 2
INC R1
INC DPTR
CJNE R1,#66H,LOAD_HEX_24
;*/*/*/
INC R0 ; LAY KY TU TIEP THEO CUA CHUOI 2
DJNZ R2,LOAD_HEX_21 ; KIEM TRA XEM DA LAY HET KY TU TRONG CHUOI CHUA
MOV MaxLine2_L,DPL
MOV MaxLine2_H,DPH
;*/*/*/
MOV R2,#32
  LOAD_HEX_25:
MOV A,#0FFH
MOVX @DPTR,A ; LUU 32 COT TRANG SAU
INC DPTR
DJNZ R2,LOAD_HEX_25
RET
;*/*/*/*/*/*/*/*/*/*/*/*/
  DELAY: ; Time Delay ~ 670us
PUSH 5
PUSH 6
MOV R5,#3
  DL1:
MOV R6,#110
DJNZ R6,$
DJNZ R5,DL1
POP 6
POP 5
RET
;*/*/*/*/*
 DELAY_MS:
MOV TH0,#HIGH(­10000)
MOV TL0,#LOW(­10000)
CLR TF0
SETB TR0
JNB TF0,$
CLR TR0
DJNZ T_DELAY,DELAY_MS
RET

;*/*/*/*/*/*/*/*
  SCANSW:
PUSH 05
MOV R5,TimeScan
CJNE R5,#0,SCANSW_0 ; NEU TimeScan #0: GIAM TimeScan XUONG 1 : KHONG QUET
NUT NHAN
JB SW1,SCANSW_2 ; NEU TimeScan =0: QUET NUT NHAN
MOV TimeScan,#20 ; KHI CO 1 NUT DUOC NHAN: NAP GIA TRI CHO TimeScan = 100.
INC MaMau_1
MOV R5,MaMau_1
CJNE R5,#4,SCANSW_1A
MOV MaMau_1,#1
  SCANSW_1A:
MOV Addrom,#246
MOV Dta,MaMau_1
LCALL WriteRom1Byte
JMP SCANSW_1
;*/*/*/
  SCANSW_2:
JB SW2,SCANSW_3
MOV TimeScan,#20
INC MaMau_2
MOV R5,MaMau_2
CJNE R5,#4,SCANSW_1B
MOV MaMau_2,#1
  SCANSW_1B:
MOV Addrom,#247
MOV Dta,MaMau_2
LCALL WriteRom1Byte
JMP SCANSW_1
;*/*/*/
  SCANSW_3:
JB SW3,SCANSW_4
MOV TimeScan,#20
INC TextCurent1
MOV R5,TextCurent1
CJNE R5,#4,SCANSW_3A
MOV TextCurent1,#1
  SCANSW_3A:
MOV Addrom,#248
MOV Dta,TextCurent1
LCALL WriteRom1Byte
MOV ChangeTextLine1,#1

JMP SCANSW_1
  SCANSW_4:
JB SW4,SCANSW_1
MOV TimeScan,#20
INC TextCurent2
MOV R5,TextCurent2
CJNE R5,#4,SCANSW_4A
MOV TextCurent2,#1
  SCANSW_4A:
MOV Addrom,#249
MOV Dta,TextCurent2
LCALL WriteRom1Byte
MOV ChangeTextLine2,#1
  SCANSW_1:
POP 05
RET
  SCANSW_0:
DEC TimeScan
POP 05
RET

;*/*/*/*/*/*/*/*/*/*/*/*/
  INTERUP_UART:
PUSH ACC
MOV IE,#0
CLR RI
MOV A,SBUF
CJNE A,#11,INTERUP_UART_1
MOV SBUF,A
JNB TI,$
CLR TI
INC MaMau_1
MOV A,MaMau_1
CJNE A,#4,INTERUP_UART_1A
MOV MaMau_1,#1
  INTERUP_UART_1A:

MOV Addrom,#246
MOV Dta,MaMau_1
LCALL WriteRom1Byte
MOV IE,#90H
POP ACC
RETI
;*/*/*/
  INTERUP_UART_1:
CJNE A,#21,INTERUP_UART_2
MOV SBUF,A
JNB TI,$
CLR TI
INC MaMau_2
MOV A,MaMau_2
CJNE A,#4,INTERUP_UART_2A
MOV MaMau_2,#1
  INTERUP_UART_2A:
MOV Addrom,#247
MOV Dta,MaMau_2
LCALL WriteRom1Byte
  INTERUP_UART_2B:
MOV IE,#90H
POP ACC
RETI
;*/*/*/
  INTERUP_UART_2:
CJNE A,#12,INTERUP_UART_3
MOV SBUF,A
JNB TI,$
CLR TI
INC TextCurent1
MOV A,TextCurent1
CJNE A,#4,INTERUP_UART_2C
MOV TextCurent1,#1
  INTERUP_UART_2C:
MOV Addrom,#248
MOV Dta,TextCurent1
LCALL WriteRom1Byte
MOV ChangeTextLine1,#1
MOV IE,#90H
POP ACC
RETI
;*/*/*/
  INTERUP_UART_3:
CJNE A,#22,INTERUP_UART_4
MOV SBUF,A
JNB TI,$
CLR TI
INC TextCurent2
MOV A,TextCurent2
CJNE A,#4,INTERUP_UART_3C
MOV TextCurent2,#1
  INTERUP_UART_3C:
MOV Addrom,#249
MOV Dta,TextCurent2
LCALL WriteRom1Byte
MOV ChangeTextLine2,#1
MOV IE,#90H
POP ACC
RETI
;*/*/*/
  INTERUP_UART_4:
CJNE A,#1,INTERUP_UART_2B
MOV R0,#0
  CLEAR:
MOV A,#0
MOVX @R0,A
INC R0
CJNE R0,#246,CLEAR
;*/*/*/ NHAN CHUOI 1
MOV R0,#0
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
MOV R1,A
  INTERUP_UART_4B:
INC R0
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
DJNZ R1,INTERUP_UART_4B
;*/*/*/ NHAN CHUOI 2
  INTERUP_UART_5:
MOV R0,#41
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
MOV R1,A
  INTERUP_UART_5B:
INC R0
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
DJNZ R1,INTERUP_UART_5B
;*/*/*/ NHAN CHUOI 3
  INTERUP_UART_6:
MOV R0,#82
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
MOV R1,A
  INTERUP_UART_6B:
INC R0
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
DJNZ R1,INTERUP_UART_6B
;*/*/*/ NHAN CHUOI 4
  INTERUP_UART_7:
MOV R0,#123
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
MOV R1,A
  INTERUP_UART_7B:
INC R0
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
DJNZ R1,INTERUP_UART_7B
;*/*/*/ NHAN CHUOI 5
  INTERUP_UART_8:
MOV R0,#164
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
MOV R1,A
  INTERUP_UART_8B:
INC R0
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
DJNZ R1,INTERUP_UART_8B
;*/*/*/ NHAN CHUOI 6
  INTERUP_UART_9:
MOV R0,#205
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
MOV R1,A
  INTERUP_UART_9B:
INC R0
JNB RI,$
CLR RI
MOV A,SBUF
MOVX @R0,A
DJNZ R1,INTERUP_UART_9B
;*/*/*/ GHI DU LIEU VAO ROM
  INTERUP_UART_10:
MOV P2,#0FFH
MOV R0,#0
  INTERUP_UART_10A:
MOV AddRom,R0
MOVX A,@R0
MOV Dta,A
LCALL WriteRom1Byte
MOV T_DELAY,#1
LCALL DELAY_MS
INC R0
CJNE R0,#246,INTERUP_UART_10A
MOV UpDateData,#1
MOV IE,#90H
POP ACC
RETI
;*/*/*/*/*/*/*/*/*/*/*/*/
   CODEDISP:
DB     0FFH,0FFH,0FFH,0FFH,0FFH,0FFH ;Space 
DB     0FFH,0FFH,82H,0FFH,0FFH,0FFH   ;!
DB     0FFH,0FFH,8FH,8FH,0FFH,0FFH   ;"
DB     0EBH,80H,0EBH,80H,0EBH,0FFH   ;#
DB     0EDH,0D5H,94H,0D5H,0DBH,0FFH   ;$
DB     0CDH,0CBH,0F7H,0E9H,0D9H,0FFH ;%
DB     0C9H,0B6H,0AAH,0DDH,0FAH,0FFH ;&
DB     0FFH,0FFH,8FH,0FFH,0FFH,0FFH   ;'
DB     0E3H,0DDH,0BEH,0FFH,0FFH,0FFH   ;(
DB     0FFH,0FFH,0BEH,0DDH,0E3H,0FFH  ;)
DB     0DBH,0E7H,81H,0E7H,0DBH,0FFH  ;*
DB     0F7H,0F7H,0C1H,0F7H,0F7H,0FFH  ;+
DB     0FFH,0FEH,0F9H,0FFH,0FFH,0FFH   ;,
DB     0FFH,0F7H,0F7H,0F7H,0F7H,0FFH  ;­
DB     0FFH,0FFH,0FEH,0FFH,0FFH,0FFH ;.
  DB     0FDH,0FBH,0F7H,0EFH,0DFH,0FFH   ;/
DB     0C1H,0AEH,0B6H,0BAH,0C1H,0FFH ;0
    DB     0FEH,0DEH,80H,0FEH,0FEH,0FFH    ;1
  DB     0DEH,0BCH,0BAH,0B6H,0CEH,0FFH ;2
DB     0DDH,0BEH,0B6H,0B6H,0C9H,0FFH   ;3
  DB     0F3H,0EBH,0DBH,80H,0FBH,0FFH ;4
   DB     8DH,0AEH,0AEH,0AEH,0B1H,0FFH ;5
    DB     0C1H,0B6H,0B6H,0B6H,0D9H,0FFH ;6
   DB     0BFH,0BFH,0B0H,0AFH,9FH,0FFH ;7
  DB     0C9H,0B6H,0B6H,0B6H,0C9H,0FFH ;8
  DB     0CDH,0B6H,0B6H,0B6H,0C1H,0FFH ;9
DB     0FFH,0FFH,0C9H,0FFH,0FFH,0FFH   ;:
DB     0FFH,0FEH,0E9H,0FFH,0FFH,0FFH    ;;
DB     0F7H,0EBH,0DDH,0BEH,0FFH,0FFH   ;<
DB     0EBH,0EBH,0EBH,0EBH,0EBH,0FFH   ;=
DB     0FFH,0BEH,0DDH,0EBH,0F7H,0FFH   ;>
DB     0DFH,0BFH,0BAH,0B7H,0CFH,0FFH   ;?
DB     0C1H,0BEH,0AEH,96H,0C5H,0FFH  ;@
DB     0E0H,0D7H,0B7H,0D7H,0E0H,0FFH   ;A
DB     80H,0B6H,0B6H,0B6H,0C9H,0FFH   ;B
DB     0C1H,0BEH,0BEH,0BEH,0DDH,0FFH   ;C
DB     80H,0BEH,0BEH,0BEH,0C1H,0FFH   ;D
DB     80H,0B6H,0B6H,0B6H,0BEH,0FFH   ;E
DB     80H,0B7H,0B7H,0B7H,0BFH,0FFH   ;F
DB     0C1H,0BEH,0BEH,0B6H,0D1H,0FFH   ;G
DB     80H,0F7H,0F7H,0F7H,80H,0FFH   ;H
DB     0BEH,0BEH,80H,0BEH,0BEH,0FFH   ;I
DB     0BDH,0BEH,81H,0BFH,0BFH,0FFH   ;J
DB     80H,0E7H,0DBH,0BDH,0FEH,0FFH   ;K
DB     80H,0FEH,0FEH,0FEH,0FDH,0FFH   ;L
DB     80H,0DFH,0EFH,0DFH,80H,0FFH   ;M
DB     80H,0DFH,0EFH,0F7H,80H,0FFH   ;N
DB     0C1H,0BEH,0BEH,0BEH,0C1H,0FFH   ;O
DB     80H,0B7H,0B7H,0B7H,0CFH,0FFH   ;P
DB     0C1H,86H,0BAH,0BDH,0C2H,0FFH   ;Q
DB     80H,0B7H,0B3H,0B5H,0CEH,0FFH   ;R
DB     0CDH,0B6H,0B6H,0B6H,0D9H,0FFH   ;S
DB     0BFH,0BFH,80H,0BFH,0BFH,0FFH   ;T
DB     81H,0FEH,0FEH,0FEH,81H,0FFH   ;U
DB     83H,0FDH,0FEH,0FDH,83H,0FFH   ;V
DB     81H,0FEH,0F1H,0FEH,81H,0FFH   ;W
DB     9CH,0EBH,0F7H,0EBH,9CH,0FFH   ;X
DB     8FH,0F7H,0F8H,0F7H,8FH,0FFH   ;Y
DB     0BCH,0BAH,0B6H,0AEH,9EH,0FFH ;Z
DB     80H,0BEH,0BEH,0FFH,0FFH,0FFH   ;[
DB     0DFH,0EFH,0F7H,0FBH,0FDH,0FFH   ;\
DB     0FFH,0FFH,0BEH,0BEH,80H,0FFH   ;]
DB     0EFH,0DFH,0BFH,0DFH,0EFH,0FFH   ;^
DB     0FFH,0FEH,0FEH,0FEH,0FEH,0FFH   ;_
DB     0FFH,0BFH,0DFH,0FFH,0FFH,0FFH   ;`
DB     0FDH,0EAH,0EAH,0EAH,0F0H,0FFH   ;a
DB     80H,0F5H,0EEH,0EEH,0F1H,0FFH   ;b
DB     0F1H,0EEH,0EEH,0EEH,0EEH,0FFH   ;c
DB     0F1H,0EEH,0EEH,0EEH,80H,0FFH   ;d
DB     0F1H,0EAH,0EAH,0EAH,0F2H,0FFH   ;e
DB     0F6H,0E0H,0D6H,0D6H,0DFH,0FFH   ;f
DB     0E6H,0DAH,0DAH,0DAH,0C1H,0FFH   ;g
DB     80H,0F7H,0EFH,0EFH,0F0H,0FFH   ;h
DB     0FFH,0EEH,0A0H,0FEH,0FFH,0FFH   ;i
DB     0FEH,0EEH,0A1H,0FFH,0FFH,0FFH   ;j
DB     80H,0FBH,0F5H,0EEH,0FFH,0FFH   ;k
DB     0FFH,0BEH,80H,0FEH,0FFH,0FFH   ;l
DB     0F0H,0EFH,0F0H,0EFH,0F0H,0FFH   ;m
DB     0E0H,0F7H,0EFH,0EFH,0F0H,0FFH   ;n
DB     0F1H,0EEH,0EEH,0EEH,0F1H,0FFH   ;o
DB     0E0H,0EBH,0EBH,0EBH,0F7H,0FFH     ;p
DB     0F7H,0EBH,0EBH,0EBH,0E0H,0FFH     ;q
DB     0EEH,0E0H,0F6H,0EEH,0EFH,0FFH    ;r
DB     0F6H,0EAH,0EAH,0EAH,0EDH,0FFH   ;s
DB  0EFH,81H,0EEH,0EEH,0FDH,0FFH   ;t
DB     0E1H,0FEH,0FEH,0FDH,0E0H,0FFH   ;u
DB     0E3H,0FDH,0FEH,0FDH,0E3H,0FFH   ;v
DB     0E1H,0FEH,0F9H,0FEH,0E1H,0FFH   ;w
DB     0EEH,0E0H,0F6H,0EEH,0EFH,0FFH   ;x
DB     0EFH,0F6H,0F9H,0F7H,0EFH,0FFH   ;y
DB     0EEH,0ECH,0EAH,0E6H,0EEH,0FFH   ;z
DB     0F7H,0C9H,0BEH,0FFH,0FFH,0FFH   ;{
DB     0FFH,80H,0FFH,0FFH,0FFH,0FFH   ;|
DB     0FFH,0FFH,0BEH,0C9H,0F7H,0FFH   ;}
DB     0F7H,0EFH,0E7H,0F7H,0EFH,0FFH  ;~
END

Vous aimerez peut-être aussi