LCDIN Example

BS2p icon BS2pe icon BS2px icon

Syntax: LCDIN

 

 

 

NOTE: This is written for the BS2p and will also run on the BS2pe and BS2px. Modify the $STAMP directive (as required) before downloading to the BS2pe or BS2px.

' LCDIN.BSP
' This program demonstrates initialization, printing and reading from
' a 2 x 16 character LCD display.

' {$STAMP BS2p}
' {$PBASIC 2.5}

#IF ($STAMP < BS2P) #THEN
  #ERROR "Program requires BS2p, BS2pe, or BS2px."
#ENDIF

Lcd             PIN     0

LcdCls          CON     $01             ' clear the LCD
LcdHome         CON     $02             ' move cursor home
LcdCrsrL        CON     $10             ' move cursor left
LcdCrsrR        CON     $14             ' move cursor right
LcdDispL        CON     $18             ' shift chars left
LcdDispR        CON     $1C             ' shift chars right
LcdDDRam        CON     $80             ' Display Data RAM
LcdCGRam        CON     $40             ' Character Generator RAM
LcdLine1        CON     $80             ' DDRAM address of line 1
LcdLine2        CON     $C0             ' DDRAM address of line 2

char            VAR     Byte(16)


Init_LCD:
  PAUSE 1000                            ' allow LCD to self-initialize first
  LCDCMD Lcd, %00110000                 ' send wakeup sequence to LCD
  PAUSE 5                               ' pause required by LCD specs
  LCDCMD Lcd, %00110000
  PAUSE 0                               ' pause required by LCD specs
  LCDCMD Lcd, %00110000
  PAUSE 0                               ' pause required by LCD specs
  LCDCMD Lcd, %00100000                 ' set data bus to 4-bit mode
  LCDCMD Lcd, %00101000                 ' set to 2-line mode with 5x8 font
  LCDCMD Lcd, %00001100                 ' display on without cursor
  LCDCMD Lcd, %00000110                 ' auto-increment cursor

Main:
  DO
    LCDOUT Lcd, LcdCls, ["Hello!"]
    GOSUB Read_LCD_Screen
    PAUSE 3000
    LCDOUT Lcd, LcdCls, ["I'm a 2x16 LCD!"]
    GOSUB Read_LCD_Screen
    PAUSE 3000
  LOOP
  END

Read_LCD_Screen:
  DEBUG "LCD now says: "
  LCDIN Lcd, LcdLine1, [STR char\16]
  DEBUG STR char\16, CR
  RETURN

Go to Welcome page

BASIC Stamp Help Version 2.5.4

Copyright © Parallax Inc.

8/8/2012