'**************************************************************** '* Name : GLCD FOR PIC 18 DEMO * '* Author : Richard * '* Notice : * '* : * '* Date : 16/3/2021 * '* Version : 1.0 * '* Notes : GLCD KS0108 20 pin or I2C 3 WIRE I/F * '* :18f26k22 @64Mhz * '**************************************************************** #CONFIG CONFIG FOSC = INTIO67 CONFIG PLLCFG = ON CONFIG PRICLKEN = ON CONFIG FCMEN = OFF CONFIG IESO = OFF CONFIG PWRTEN = ON CONFIG BOREN = SBORDIS CONFIG BORV = 190 CONFIG WDTEN = ON CONFIG WDTPS = 32768 CONFIG CCP2MX = PORTC1 CONFIG PBADEN = OFF CONFIG CCP3MX = PORTB5 CONFIG T3CMX = PORTC0 CONFIG HFOFST = ON CONFIG P2BMX = PORTB5 CONFIG MCLRE = EXTMCLR CONFIG STVREN = ON CONFIG LVP = OFF CONFIG XINST = OFF CONFIG DEBUG = OFF CONFIG CP0 = OFF CONFIG CP1 = OFF CONFIG CP2 = OFF CONFIG CP3 = OFF CONFIG CPB = OFF CONFIG CPD = OFF CONFIG WRT0 = OFF CONFIG WRT1 = OFF CONFIG WRT2 = OFF CONFIG WRT3 = OFF CONFIG WRTC = OFF CONFIG WRTB = OFF CONFIG WRTD = OFF CONFIG EBTR0 = OFF CONFIG EBTR1 = OFF CONFIG EBTR2 = OFF CONFIG EBTR3 = OFF CONFIG EBTRB = OFF #ENDCONFIG DEFINE OSC 64 reset var PORTA.1 ;not ESSENTIAL just tie reset to vcc or mclr rs var PORTA.2 en var PORTA.3 rw var PORTA.4 cs1 var PORTA.5 cs2 var PORTA.6 GLCDPORT var PORTB GLCDDIR var TRISB #DEFINE colours 1 ;1 mono 2 rg or 3 rgb width con 128 ;32 64 96 ok height con 64 ;16 ,32 only tested cs_on con 1 ;adkom didplay 0 ks0108 1 include "grx.pbpMOD" include "glcd.pbpMOD" include "font.bas" include "bignum.bas" include "bigchr.bas" BUFF VAR BYTE[10] ANSELB=0 ANSELC=0 ANSELA=0 OSCCON=$70 OSCTUNE.6=1 TRISA= 0 gosub glcd_init SETFONT FONT5x7 gosub grf_clr DRAWLINE 27,12,127,63,1 DRAWRECT 1,2,26,11 DRAWCIRCLE 64,32,12 ARRAYWRITE BUFF,["GLCD",0] DMDSTR 3,4,buff,1 SETFONT bignum DMDSTR 40,50,"1234",1 SETFONT bigchr DMDSTR 60,2,"ABCD",1 gosub show main: goto main