The CharLCDPlate Class is designed to work with the Adafruit Character LCD Plate. This page documents the public API of the GPS Class.
Note: the CharLCDPlate Class is dependent on the MCP23017 Class.


Constructor
The class has a single constructor, CharLCDPlate(), which takes no arguments.
The constructor creates an instance of the MCP23017 class.
public CharLCDPlate()
Methods
BeginAsync
This is an asynchronous method that initializes the MCP23017 and the Character LCD.
The method takes three integer arguments (the third argument is optional): cols, which specifies the number of columns on the LCD, lines, which specifies the number of lines on the LCD, and the optional argument dotsize, which specifies the dor matrix size of each character. Default is 5x8.
Constant values for the third argument are defined:
- public const byte LCD_5x10DOTS = 0x04;
- public const byte LCD_5x8DOTS = 0x00;
public async Task BeginAsync(int cols, int lines, int dotsize = LCD_5x8DOTS)
clear
This method takes no arguments and clears the LCD display
public void clear()
home
This method takes no arguments and moves the cursor to the 0,0 (home) position
public void home()
setCursor
This methof positions the cursor at the specified column and line. It takes two integer arguments, col and line.
public void setCursor(byte col, byte line)
createChar
The createChar method allows the host program to define a custom character. Up to 8 custom characters can be defined.
The method takes as arguments a location and an array of bytes. The location is the number of the custom character (0 through 7). The array is a set of bfitmapped bytes representing the dots of the character. For more information on defining custom characters, please see this page.
public void createChar(byte location, byte[] charmap)
readButtons
This method reads the state of the 5 buttons on the plate. It retutns a byte containing a bitmap of the button states (1=pressed/0=unpressed).
The class contains bitmask definitions for the 5 buttons:
- public const byte BUTTON_UP = 0x08;
- public const byte BUTTON_DOWN = 0x04;
- public const byte BUTTON_LEFT = 0x10;
- public const byte BUTTON_RIGHT = 0x02;
- public const byte BUTTON_SELECT = 0x01;
public byte readButtons()
setBacklight
This method controls the color of the RGB backlight on LCDs with a color backlight. It takes a single integer argument, color, which is a bitmap of the three colors.
- Red : 0x04
- Green : 0x02
- Blue : 0x01
Backlights are either on or off. There is no shading.
public void setBacklight(int color)
There are three overloads of the print method. The first overload takes a string as an argument, the second overload takes an integer as an argument, and the third overload takes a double as an argument.
All three overloads write characters to the display beginning at the current cursor location.
public void print(string str) public void print(int number) public void print(double number)
Additional methods
The following methods are also available:
- noDisplay : turn display off
- display : turn display on
- noCursor : turn underline cursor off
- cursor : turn underline cursor on
- noBlink : turn cursor blink off
- blink : turn cursor blink on
- scrollDisplayLeft : scroll display left
- scrollDisplayRight : scroll display right
- leftToRight : sets text to flow from left to right
- rightToLeft : sets text to flow from right to left
- autoscroll : when printing, characters fill from right (right justify)
- noAutoscroll: when printing, characters fill from left (left justify)
public void noDisplay() public void display() public void noCursor() public void cursor() public void noBlink() public void blink() public void scrollDisplayLeft() public void scrollDisplayRight() public void leftToRight() public void rightToLeft() public void autoscroll() public void noAutoscroll()