Code:
Include "LCD_D.bas"
INCLUDE "ADC_Default.bas"
EEPROM 0,[0,0,4,8,16,0,0,0] ' Cust Char #0
EEPROM 8,[0,0,28,0,0,0,0,0] ' Cust Char #1
EEPROM 16,[16,8,4,0,0,0,0,0] ' Cust Char #2
EEPROM 24,[4,4,4,0,0,0,0,0] ' Cust Char #3
EEPROM 32,[1,2,4,0,0,0,0,0] ' Cust Char #4
EEPROM 40,[0,0,7,0,0,0,0,0] ' Cust Char #5
EEPROM 48,[0,0,4,2,1,0,0,0] ' Cust Char #6
CGLOAD VAR WORD : CGLOAD = 0 ' Variable for holding Character # to Load
CGLLOC VAR BYTE : CGLLOC = 0 ' LCD Location to Store Character (0 to 7)
CGLOOP VAR BYTE ' Variable for Selecting Data Bits
CGDATA VAR BYTE ' Variable to Hold Character Data
Position Var WORD : Position = 0
LCDOUT $FE, 2
Pause 1000
MainLoop:
ADCIN 0, Position ' Read ADC Channel 0 (16 bit)
position = position / 10000
CGLOAD = position
CGLLOC = 0
gosub SETCGLCD
LCDOUT $FE, $80 ' This locations characters will change after charater update
LCDOUT 0
Pause 50
goto mainloop
END
SETCGLCD:
CGLOAD = CGLOAD * 8 ' Converts your Character Selection to EEPROM Address
CGLLOC = (CGLLOC * 8) + 64 ' Converts LCD Slot to LCD Memory Address
LCDOUT $FE, CGLLOC
FOR CGLOOP = CGLOAD to (CGLOAD + 7) 'Sets 1st Memory Address to Read + Next 7
read CGLOOP, CGDATA ' Retrieve byte from EEPROM
LCDOUT CGDATA
next CGLOOP
Return
Bookmarks