Ver antes el Tema: Mas velocidad en pantallas graficas (GLCD)
'****************************************************************
'* Name : UNTITLED.BAS *
'* Author : Miguel Noe Garcia Perez *
'* Notice : Copyright (c) 2011 Iberica 2000 *
'* : All Rights Reserved *
'* Date : 08/02/2011 *
'* Version : 1.0 *
'* Notes : *
'* : *
'****************************************************************
DEVICE 16F877a
XTAL = 4
LCD_TYPE = GRAPHIC ' Use a Graphic LCD
' Graphic LCD Pin Assignments
LCD_DTPORT = PORTD
LCD_RSPIN = PORTC.2
LCD_RWPIN = PORTE.0
LCD_ENPIN = PORTC.5
LCD_CS1PIN = PORTE.2
LCD_CS2PIN = PORTE.1
DECLARE GLCD_CS_INVERT on
DECLARE INTERNAL_FONT on ' Use an internal chr set
SCL_PIN = PORTC.3
SDA_PIN = PORTC.4
ALL_DIGITAL = True'ON ' Set PORTA and PORTE to all digital
Dim Glcd_Data1 As byte
Dim Glcd_Data As byte
Dim letter As Byte
Dim AdressRom As byte
Dim Adress As word
Dim AdressI2c As word
Dim VarLetter As Byte
Dim Plaats As Byte
DIM X AS WORD
DIM Xpos as BYTE
DIM Ypos as BYTE
DIM Ypos2 as BYTE
DIM N as byte
DIM M as word
DIM Ma as word
DIM A as word
DIM Pantalla as byte
'dim Datos4[256] as byte
delayms 500
cls '123456789012345678901
print at 0,0,"Load graf for I2C Memo"
delayms 1000
cls
inicio:
Adressrom = 0
Adressi2c = 0
Adress =0
xpos =0
Glcd_Data=0
Otro:
for ypos=0 to 7
for xpos=0 to 127
Busin $A1,Adress,[Glcd_data.lowbyte]
LCDWrite ypos,Xpos,[Glcd_data]
'EWRITE Adress ,[Glcd_data.lowbyte]'escribe en la memoria del eeprom
INC adress
next xpos
Next Ypos
n=0
m=256
ypos2 = 0
ypos = 0
a = 1
xpos = 0
ma = 0
AdressI2c=0
delayms 100
cls
' lee 255 posiciones de la memoria I2c y la pasa a la Eprom del pic
' para lugo mostrarlo en la pantalla
print at 0,0,"Lee I2C -> Eprom"
delayms 1000
cls
for pantalla = 0 to 3
for adressrom = 0 to 255
Busin $A1,AdressI2c,[Glcd_data.lowbyte]
EWRITE AdressRom ,[Glcd_data.lowbyte]'escribe en la memoria del eeprom
inc adressi2c
next adressrom
for ypos = Ma to a
for xpos= 0 to 127
Glcd_data.lowbyte = EREAD adressRom ' Lee I2c
LCDWrite ypos,Xpos,[Glcd_data.lowbyte] ' pone los 255 posicione en la pantalla.
INC adressRom
next xpos
Next Ypos
a = a + 2
ma= ma + 2
next pantalla
stop
FONT:- CData $00,$00,$00,$00,$00,$00 'Graphic character 0
CData $FF,$FF,$FF,$FF,$FF,$FF 'Graphic character 1
CData $07,$07,$07,$00,$00,$00 'Graphic character 2
CData $00,$00,$00,$07,$07,$07 'Graphic character 3
CData $E0,$E0,$E0,$00,$00,$00 'Graphic character 4
CData $00,$00,$00,$E0,$E0,$E0 'Graphic character 5
CData $FF,$FF,$FF,$00,$00,$00 'Graphic character 6
CData $00,$00,$00,$FF,$FF,$FF 'Graphic character 7
CData $07,$07,$07,$07,$07,$07 'Graphic character 8
CData $E0,$E0,$E0,$E0,$E0,$E0 'Graphic character 9
CData $E0,$E0,$E0,$07,$07,$07 'Graphic character 10
CData $07,$07,$07,$E0,$E0,$E0 'Graphic character 11
CData $FF,$FF,$FF,$E0,$E0,$E0 'Graphic character 12
CData $E0,$E0,$E0,$FF,$FF,$FF 'Graphic character 13
CData $07,$07,$07,$FF,$FF,$FF 'Graphic character 14
CData $FF,$FF,$FF,$07,$07,$07 'Graphic character 15
CData $55,$AA,$55,$AA,$55,$AA 'Graphic character 16
CData $AA,$55,$AA,$55,$AA,$55 'Graphic character 17
CData $01,$01,$01,$01,$01,$01 'Graphic character 18
CData $80,$80,$80,$80,$80,$80 'Graphic character 19
CData $FF,$00,$00,$00,$00,$00 'Graphic character 20
CData $00,$00,$00,$00,$00,$FF 'Graphic character 21
CData $FF,$01,$01,$01,$01,$01 'Graphic character 22
CData $01,$01,$01,$01,$01,$FF 'Graphic character 23
CData $FF,$80,$80,$80,$80,$80 'Graphic character 24
CData $80,$80,$80,$80,$80,$FF 'Graphic character 25
CData $00,$00,$00,$00,$F0,$F0 'User defined character 26
CData $00,$00,$00,$00,$0F,$0F 'User defined character 27
CData $00,$00,$00,$00,$00,$00 'User defined character 28
CData $00,$00,$00,$00,$00,$00 'User defined character 29
CData $00,$00,$00,$00,$00,$00 'User defined character 30
CData $00,$00,$00,$00,$00,$00 'User defined character 31
CData $00,$00,$00,$00,$00,$00 '32 - - 20
CData $00,$00,$4F,$00,$00,$00 '33 - ! - 21
CData $00,$07,$00,$07,$00,$00 '34 - " - 22
CData $14,$7F,$14,$7F,$14,$00 '35 - # - 23
CData $24,$2A,$7F,$2A,$12,$00 '36 - $ - 24
CData $23,$13,$08,$64,$62,$00 '37 - % - 25
CData $36,$49,$55,$22,$50,$00 '38 - & - 26
CData $00,$05,$03,$00,$00,$00 '39 - ' - 27
CData $1C,$22,$41,$00,$00,$00 '40 - ( - 28
CData $00,$00,$41,$22,$1C,$00 '41 - ) - 29
CData $14,$08,$3E,$08,$14,$00 '42 - * - 2A
CData $08,$08,$3E,$08,$08,$00 '43 - + - 2B
CData $00,$50,$30,$00,$00,$00 '44 - , - 2C
CData $08,$08,$08,$08,$08,$00 '45 - - - 2D
CData $00,$60,$60,$00,$00,$00 '46 - . - 2E
CData $20,$10,$08,$04,$02,$00 '47 - / - 2F
CData $3E,$51,$49,$45,$3E,$00 '48 - 0 - 30
CData $00,$42,$7F,$40,$00,$00 '49 - 1 - 31
CData $42,$61,$51,$49,$46,$00 '50 - 2 - 32
CData $21,$41,$45,$4B,$31,$00 '51 - 3 - 33
CData $18,$14,$12,$7F,$10,$00 '52 - 4 - 34
CData $27,$45,$45,$45,$39,$00 '53 - 5 - 35
CData $3C,$4A,$49,$49,$30,$00 '54 - 6 - 36
CData $01,$71,$09,$05,$03,$00 '55 - 7 - 37
CData $36,$49,$49,$49,$36,$00 '56 - 8 - 38
CData $06,$49,$49,$49,$3E,$00 '57 - 9 - 39
CData $00,$36,$36,$00,$00,$00 '58 - : - 3A
CData $00,$56,$36,$00,$00,$00 '59 - ; - 3B
CData $08,$14,$22,$41,$00,$00 '60 - < - 3C
CData $14,$14,$14,$14,$14,$00 '61 - = - 3D
CData $00,$41,$22,$14,$08,$00 '62 - > - 3E
CData $02,$01,$51,$09,$06,$00 '63 - ? - 3F
CData $32,$49,$79,$41,$3E,$00 '64 - @ - 40
CData $7E,$11,$11,$11,$7E,$00 '65 - A - 41
CData $7F,$49,$49,$49,$36,$00 '66 - B - 42
CData $3E,$41,$41,$41,$22,$00 '67 - C - 43
CData $7F,$41,$41,$22,$1C,$00 '68 - D - 44
CData $7F,$49,$49,$49,$41,$00 '69 - E - 45
CData $7F,$09,$09,$09,$01,$00 '70 - F - 46
CData $3E,$41,$49,$49,$7A,$00 '71 - G - 47
CData $7F,$08,$08,$08,$7F,$00 '72 - H - 48
CData $00,$41,$7F,$41,$00,$00 '73 - I - 49
CData $20,$40,$41,$3F,$01,$00 '74 - J - 4A
CData $7F,$08,$14,$22,$41,$00 '75 - K - 4B
CData $7F,$40,$40,$40,$40,$00 '76 - L - 4C
CData $7F,$02,$0C,$02,$7F,$00 '77 - M - 4D
CData $7F,$04,$08,$10,$7F,$00 '78 - N - 4E
CData $3E,$41,$41,$41,$3E,$00 '79 - O - 4F
CData $7F,$09,$09,$09,$06,$00 '80 - P - 50
CData $3E,$41,$51,$21,$5E,$00 '81 - Q - 51
CData $7F,$09,$19,$29,$46,$00 '82 - R - 52
CData $46,$49,$49,$49,$31,$00 '83 - S - 53
CData $01,$01,$7F,$01,$01,$00 '84 - T - 54
CData $3F,$40,$40,$40,$3F,$00 '85 - U - 55
CData $1F,$20,$40,$20,$1F,$00 '86 - V - 56
CData $3F,$40,$38,$40,$3F,$00 '87 - W - 57
CData $63,$14,$08,$14,$63,$00 '88 - X - 58
CData $07,$08,$70,$08,$07,$00 '89 - Y - 59
CData $61,$51,$49,$45,$43,$00 '90 - Z - 5A
CData $7F,$41,$41,$00,$00,$00 '91 - [ - 5B
CData $02,$04,$08,$10,$20,$00 '92 - \ - 5C
CData $00,$00,$41,$41,$7F,$00 '93 - ] - 5D
CData $04,$02,$01,$02,$04,$00 '94 - ^ - 5E
CData $40,$40,$40,$40,$40,$00 '95 - _ - 5F
CData $00,$01,$02,$04,$00,$00 '96 - ` - 60
CData $20,$54,$54,$54,$78,$00 '97 - a - 61
CData $7F,$48,$44,$44,$38,$00 '98 - b - 62
CData $38,$44,$44,$44,$20,$00 '99 - c - 63
CData $38,$44,$44,$48,$7F,$00 '100 d - 64
CData $38,$54,$54,$54,$18,$00 '101 e - 65
CData $08,$7E,$09,$01,$02,$00 '102 f - 66
CData $0C,$52,$52,$52,$3E,$00 '103 g - 67
CData $7F,$08,$04,$04,$78,$00 '104 h - 68
CData $00,$44,$7D,$40,$00,$00 '105 i - 69
CData $00,$20,$40,$44,$3D,$00 '106 j - 6A
CData $7F,$10,$28,$44,$00,$00 '107 k - 6B
CData $00,$41,$7F,$40,$00,$00 '108 l - 6C
CData $7C,$04,$18,$04,$78,$00 '109 m - 6D
CData $7C,$08,$04,$04,$78,$00 '110 n - 6E
CData $38,$44,$44,$44,$38,$00 '111 o - 6F
CData $7C,$14,$14,$14,$08,$00 '112 p - 70
CData $08,$14,$14,$18,$7C,$00 '113 q - 71
CData $7C,$08,$04,$04,$08,$00 '114 r - 72
CData $48,$54,$54,$54,$20,$00 '115 s - 73
CData $04,$3F,$44,$40,$20,$00 '116 t - 74
CData $3C,$40,$40,$20,$7C,$00 '117 u - 75
CData $1C,$20,$40,$20,$1C,$00 '118 v - 76
CData $3C,$40,$30,$40,$3C,$00 '119 w - 77
CData $44,$28,$10,$28,$44,$00 '120 x - 78
CData $0C,$50,$50,$50,$3C,$00 '121 y - 79
CData $44,$64,$54,$4C,$44,$00 '122 z - 7A
CData $08,$36,$41,$00,$00,$00 '123 { - 7B
CData $00,$00,$7F,$00,$00,$00 '124 | - 7C
CData $00,$00,$41,$36,$08,$00 '125 } - 7D
CData $00,$08,$04,$08,$04,$00 '126 ~ - 7E