LCD Character PICBASIC Initialization routine.
InitializeDisplay: ' Subroutine to initialize NEWHAVEN NHD-0208AZ-RN-YBW '================= ' 2x8 LCD display ' LCD DEFINES FOR USING 2x8 LCD with PortA DEFINE LCD_DREG PORTA ' Use PORTA for LCD Data DEFINE LCD_DBIT 0 ' Use lower(4) 4 bits of PORTA ' PORTA.0 thru PORTA.3 connect to ' LCD DB4 thru LCD DB-7 respectively DEFINE LCD_RSREG PORTA ' PORTA for RegisterSelect (RS) bit DEFINE LCD_RSBIT 4 ' PORTA.4 pin for LCD's RS line DEFINE LCD_RWREG PORTC ' LCD read/write port DEFINE LCD_RWBIT 2 ' LCD read/write bit DEFINE LCD_EREG PORTA ' PORTA for Enable (E) bit DEFINE LCD_EBIT 5 ' PORTA.5 pin for LCD's E line DEFINE LCD_BITS 4 ' Using 4-bit bus DEFINE LCD_LINES 2 ' Using 2 line Display DEFINE LCD_COMMANDUS 10000' Command Delay (uS) DEFINE LCD_DATAUS 100 ' Data Delay (uS) ' DEFINE LCD Control Constants Line1 CON 128 ' Point to beginning of line 1 ($80) Line2 CON 192 ' Point to beginning of line 2 ($C0) ' Test the LCD during initialization LCDOut $fe,1:FLAGS=0:Pause 250 ' Clear Display LCDOut $fe,Line1,"LCD TEST" ' Display on 1st line Pause 500 LCDOut $fe,Line2,"Power On!" ' Display on 2nd line PAUSE 1000 Return