| Author
 | 
Matrix TSL
 | 
| Version
 | 
1.1
 | 
| Category
 | 
Alphanumeric
 | 
LCD (Generic, 16x2) component
LCD based on the unit used in the Matrix EB005 E-block
Component Source Code
Please click here to download the component source project: FC_Comp_Source_temp/LCD_16X2.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_temp/LCD_16X2.fcfx
Detailed description
No detailed description exists yet for this component
Examples
Example of a typical LCD pinout.
Connections
For the LCDs to work with the Flowcode LCD component they need to be connected up in 4-bit data mode.
The 4 data signals actually go to the upper data nibble on the LCD as shown below.
A simple example that shows how to use some common functions.
LCD Example
Macro reference
Clear
 
 | 
Clear
 | 
| Clears the entire contents of the display. 
 | 
  - VOID
 | 
Return
 | 
ClearLine
 
 | 
ClearLine
 | 
| Clears a single line on the display and then moves the cursor to the start of the line to allow you to start populating the line with data. 
 | 
  - BYTE
 | 
Line
 | 
| The line to clear, zero being the first (top) line of the display 
 | 
  - VOID
 | 
Return
 | 
Command
 
 | 
Command
 | 
| Use this method/macro to send a specific command to the LCD. Refer to the Matrix Multimedia EB006 datasheet for a list of supported instructions. For Non-Matrix LCD's refer to the manufacturers datasheet. 
 | 
  - BYTE
 | 
instruction
 | 
| Send a defined command to the LCD Screen. See datasheet for supported commands. 
 | 
  - VOID
 | 
Return
 | 
Cursor
 
 | 
Cursor
 | 
| Moves the cursor on the LCD Display 
 | 
  - BYTE
 | 
x
 | 
| Set the cursor position in the X plane, 0 is the left most cell 
 | 
  - BYTE
 | 
y
 | 
| Set the cursor position in the Y plane, 0 is the top most cell 
 | 
  - VOID
 | 
Return
 | 
PrintAscii
 
 | 
PrintAscii
 | 
| Takes the ascii value for a character and prints the character 
 | 
  - BYTE
 | 
character
 | 
| Holds an ascii value. 
 | 
  - VOID
 | 
Return
 | 
PrintFloat
 
 | 
PrintFloat
 | 
| Print a Float number rounded up to a specified amount of decimal places. 
 | 
  - FLOAT
 | 
Number
 | 
| Enter the number or variable to print to the LCD 
 | 
  - BYTE
 | 
DecimalPlaces
 | 
| Enter how many decimal places to round up to (1 - 6) 
 | 
  - VOID
 | 
Return
 | 
PrintFormattedNumber
 
 | 
PrintFormattedNumber
 | 
| Will allow you to print a number up to 32-bits with signed or unsigned formatting. Signed = -2147483648 to 2147483647 Unsigned = 0 to 4294967295 
 | 
  - ULONG
 | 
Number
 | 
| Enter the number or variable to print to the LCD 
 | 
  - BOOL
 | 
Format
 | 
| 0=Signed, 1=Unsigned 
 | 
  - VOID
 | 
Return
 | 
PrintNumber
 
 | 
PrintNumber
 | 
| Based on v5 macro, will allow you to print a number. This is limited to a signed-INT, -32768 to 32767 
 | 
  - INT
 | 
Number
 | 
| Enter the number or variable to print to the LCD 
 | 
  - VOID
 | 
Return
 | 
PrintString
 
 | 
PrintString
 | 
| Breaks down a string of text and sends it to the LCD via the private RawSend(byte, mask) macro 
 | 
  - STRING
 | 
Text
 | 
| Enter the text or variable to print to the LCD 
 | 
  - VOID
 | 
Return
 | 
RAMWrite
 
 | 
RAMWrite
 | 
| Modifies the internal memory of the LCD to allow for up to 8 customised characters to be created and stored in the device memory 
 | 
  - BYTE
 | 
Index
 | 
| Values 0 to 7 
 | 
  - BYTE
 | 
d0
 | 
|  
 | 
  - BYTE
 | 
d1
 | 
|  
 | 
  - BYTE
 | 
d2
 | 
|  
 | 
  - BYTE
 | 
d3
 | 
|  
 | 
  - BYTE
 | 
d4
 | 
|  
 | 
  - BYTE
 | 
d5
 | 
|  
 | 
  - BYTE
 | 
d6
 | 
|  
 | 
  - BYTE
 | 
d7
 | 
|  
 | 
  - VOID
 | 
Return
 | 
RawSend
 
 | 
RawSend
 | 
| Sends data to the LCD display 
 | 
  - BYTE
 | 
data
 | 
| The data byte to send to the LCD 
 | 
  - BOOL
 | 
type
 | 
| A boolean to indicate command type: true to write data, false to write a command 
 | 
  - VOID
 | 
Return
 | 
RemapCharacter
 
 | 
RemapCharacter
 | 
| Assigns a remap character allowing the PrintString function to automatically swap between pre-defined characters.  The characters can be custom (in the range 0-9) or can point to an existing character in the LCD character map. 
 | 
  - BYTE
 | 
RemapIdx
 | 
| Remap Index, Range: 0 to (Remap Characters - 1) 
 | 
  - BYTE
 | 
SearchCharacter
 | 
| Character to look for a replace 
 | 
  - BYTE
 | 
ReplacementCharacter
 | 
| New character value to use in place of the search character. 
 | 
  - VOID
 | 
Return
 | 
ScrollDisplay
 
 | 
ScrollDisplay
 | 
| Scrolls the display left or right by a number of given positions. 
 | 
  - BYTE
 | 
Position
 | 
| Holds the number of positions to shift the display 
 | 
  - BYTE
 | 
Direction
 | 
| 0 = left, 1 = right 
 | 
  - VOID
 | 
Return
 | 
Start
 
 | 
Start
 | 
| Startup routine required by the hardware device. Automatically clears the display after initialising. 
 | 
  - VOID
 | 
Return
 | 
Property reference
 
 | 
Properties
 | 
 
 | 
Connections
 | 
 
 | 
Data 0 (11)
 | 
|  
 | 
 
 | 
Data 1 (12)
 | 
|  
 | 
 
 | 
Data 2 (13)
 | 
|  
 | 
 
 | 
Data 3 (14)
 | 
|  
 | 
 
 | 
Register Select (4)
 | 
|  
 | 
 
 | 
Enable (6)
 | 
|  
 | 
 
 | 
Simulation
 | 
 
 | 
Component Label
 | 
|  
 | 
 
 | 
Component Label Scale
 | 
| The label scale can be change if the amout of text is too wide for the display  
 | 
 
 | 
Text Colour
 | 
| Colour of the font characters drawn on the display 
 | 
 
 | 
Text Background
 | 
| Colour surrounding the font characters drawn on the display 
 | 
 
 | 
Display Background
 | 
| Colour of the background of the display 
 |