
'IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
'III      BASIC++  DEMO ZUM BASIC-COMPUTER UNIT M 1.2/2.0       IIIII
'IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
'--------------------------------------------------------------------
' Beispiel zum BASIC-COMPUTER    mit dem Programmer/Application-Board
'--------------------------------------------------------------------
' LIBRARY: LCD_INIT()          INIT LCD AT IICBUS (PCF8574) 
'          L1(position)        SET CURSOR TO LINE1 POSITION position    
'          L2(position)        SET CURSOR TO LINE2 POSITION position 
'          LCD_CLR             CLEAR DISPLAY     
'          LCDWRITE(CMD,DATA)  CMD=0/20h for WRITE COMMAND/WRITE DATA    
'------------------------------------------------------------------- 

'-------------------------------------------------------
'--- PCF 8574 LCD DRIVER AT ADDR 7 / EXT BYTEPORT 10 ---
'-------------------------------------------------------
FUNCTION LCD_WRITE(BUF as byte,LCDDATA as byte)
define EXTPORT  byteport[10]
define OUTBYTE as byte
'--------- ------WRITE HI NIBBLE ------------------------
OUTBYTE=BUF or (LCDDATA shr 4)
EXTPORT=OUTBYTE or 01000000b
EXTPORT=OUTBYTE and 10111111b
'--------------- WRITE LO NIBBLE ------------------------
OUTBYTE=BUF or (LCDDATA and 0Fh)
EXTPORT=OUTBYTE or 01000000b
EXTPORT=OUTBYTE and 10111111b
END FUNCTION
'-----------------------------------------------------
FUNCTION LCD_CLR()
LCD_WRITE(0,02h)
LCD_WRITE(0,01h)
pause 2
END FUNCTION
'----------------------------------------------------
FUNCTION LCD_INIT()
define EXTPORT  byteport[10]
EXTPORT=0
LCD_WRITE(0,38h)'0=WRITE CMD
EXTPORT= 00000010b
EXTPORT= 01000010b
EXTPORT= 00000010b
LCD_WRITE(0,28h)
LCD_WRITE(0,0Ch)
LCD_CLR()
END FUNCTION
'----------------------------------------------------
FUNCTION LINE1(POS as byte)
LCD_WRITE(0,7Fh+POS)
END FUNCTION
'----------------------------------------------------
FUNCTION LINE2(POS as byte)
LCD_WRITE(0,BFh+POS)
END FUNCTION
'----------------------------------------------------
