Difference between revisions of "Component: LCD (BL0169) (E-blocks 2)"

From Flowcode Help
Jump to navigationJump to search
Line 1: Line 1:
 
+
{| style="width:50%"
 
 
{| width="50%"
 
 
|-
 
|-
| width="20%" style="color: gray;" | Author
+
| width="20%" style="color:gray;" | Author
 
| Matrix TSL
 
| Matrix TSL
 
|-
 
|-
| width="20%" style="color: gray;" | Version
+
| width="20%" style="color:gray;" | Version
| 1.0 (Release)
+
| 1.0
 
|-
 
|-
| width="20%" style="color: gray;" | Category
+
| width="20%" style="color:gray;" | Category
 
| E-blocks 2
 
| E-blocks 2
 
|}
 
|}
  
  
 +
==LCD component==
 +
LCD component to drive the E-blocks 2 BL0169 LCD board. Provides a 4 x 20 character alphanumeric display.
  
==[[File:Component Icon ee697d50_7fb5_4074_8cd6_996e5c386722.png|Image]] LCD (BL0169) component==
+
==Component Source Code==
LCD component to drive the E-blocks 2 BL0169 LCD board.
 
Provides a 4 x 20 character alphanumeric display.
 
  
Make sure each data pin is connected to the right place in flowcode, which corresponds to the port that the LCD board is connected to on your E-blocks 2 upstream board. There are component macros you can use to print things on the LCD screen, in the form of a formatted number, an integer number, a string or the character which corresponds to an inputted ascii value.
+
Please click here for the component source code: [https://www.flowcode.co.uk/wikicopy/componentsource/FC_Comp_Source_EBlocks2_LCD_BL0169.fcfx FC_Comp_Source_EBlocks2_LCD_BL0169.fcfx]
  
You must use the ‘Start’ macro in the program before you can take any data on the LCD.
+
==Detailed description==
 +
 
 +
''No detailed description exists yet for this component''
  
 
==Examples==
 
==Examples==
 +
 +
 
''<span style="color:red;">No additional examples</span>''
 
''<span style="color:red;">No additional examples</span>''
  
Line 29: Line 31:
 
==Downloadable macro reference==
 
==Downloadable macro reference==
  
===<span style="font-weight: normal;"><u><tt>Clear</tt></u></span>===
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
Clears the entire contents of the display.
+
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Clear'''
 +
|-
 +
| colspan="2" | Clears the entire contents of the display.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
'''Parameters'''
 
  
:''This macro has no parameters''
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintString'''
 +
|-
 +
| colspan="2" | Breaks down a string of text and sends it to the LCD via the private RawSend(byte, mask) macro&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
 +
| width="90%" | Text
 +
|-
 +
| colspan="2" | Enter the text or variable to print to the LCD&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
  
'''Return value'''
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintAscii'''
 +
|-
 +
| colspan="2" | Takes the ascii value for a character and prints the character&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | character
 +
|-
 +
| colspan="2" | Holds an ascii value.&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
:''This call does not return a value''
 
  
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintNumber'''
 +
|-
 +
| colspan="2" | Based on v5 macro, will allow you to print a number. This is limited to a signed-INT, -32768 to 32767&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
 +
| width="90%" | Number
 +
|-
 +
| colspan="2" | Enter the number or variable to print to the LCD&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
===<span style="font-weight: normal;"><u><tt>PrintString</tt></u></span>===
 
Breaks down a string of text and sends it to the LCD via the private RawSend(byte, mask) macro
 
  
'''Parameters'''
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RAMWrite'''
 +
|-
 +
| colspan="2" | Modifies the internal memory of the LCD to allow for up to 8 customised characters to be created and stored in the device memory&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | Index
 +
|-
 +
| colspan="2" | Values 0 to 7&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | d0
 +
|-
 +
| colspan="2" | &nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | d1
 +
|-
 +
| colspan="2" | &nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | d2
 +
|-
 +
| colspan="2" | &nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | d3
 +
|-
 +
| colspan="2" | &nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | d4
 +
|-
 +
| colspan="2" | &nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | d5
 +
|-
 +
| colspan="2" | &nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | d6
 +
|-
 +
| colspan="2" | &nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | d7
 +
|-
 +
| colspan="2" | &nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
:[[Variable Types|<- STRING]] ''Text''
 
::Enter the text or variable to print to the LCD
 
::''This parameter may be returned back to the caller''
 
  
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ClearLine'''
 +
|-
 +
| colspan="2" | 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.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | Line
 +
|-
 +
| colspan="2" | The line to clear, zero being the first (top) line of the display&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
'''Return value'''
 
  
:''This call does not return a value''
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Cursor'''
 +
|-
 +
| colspan="2" | Moves the cursor on the LCD Display&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | x
 +
|-
 +
| colspan="2" | Set the cursor position in the X plane, 0 is the left most cell&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | y
 +
|-
 +
| colspan="2" | Set the cursor position in the Y plane, 0 is the top most cell&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
  
===<span style="font-weight: normal;"><u><tt>PrintAscii</tt></u></span>===
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
Takes the ascii value for a character and prints the character
+
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Command'''
 +
|-
 +
| colspan="2" | 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.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | instruction
 +
|-
 +
| colspan="2" | Send a defined command to the LCD Screen. See datasheet for supported commands.&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
'''Parameters'''
 
  
:[[Variable Types|BYTE]] ''character''
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
::Holds an ascii value.
+
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintFormattedNumber'''
 +
|-
 +
| colspan="2" | Will allow you to print a number up to 32-bits with signed or unsigned formatting. Signed = -2147483648 to 2147483647 Unsigned = 0 to 4294967295&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
 +
| width="90%" | Number
 +
|-
 +
| colspan="2" | Enter the number or variable to print to the LCD&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL
 +
| width="90%" | Format
 +
|-
 +
| colspan="2" | 0=Signed, 1=Unsigned&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
  
'''Return value'''
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ScrollDisplay'''
 +
|-
 +
| colspan="2" | Scrolls the display left or right by a number of given positions.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | Position
 +
|-
 +
| colspan="2" | Holds the number of positions to shift the display&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | Direction
 +
|-
 +
| colspan="2" | 0 = left, 1 = right&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
:''This call does not return a value''
 
  
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RawSend'''
 +
|-
 +
| colspan="2" | Sends data to the LCD display&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | data
 +
|-
 +
| colspan="2" | The data byte to send to the LCD&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL
 +
| width="90%" | type
 +
|-
 +
| colspan="2" | A boolean to indicate command type: true to write data, false to write a command&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
===<span style="font-weight: normal;"><u><tt>PrintNumber</tt></u></span>===
 
Based on v5 macro, will allow you to print a number. This is limited to a signed-INT, -32768 to 32767
 
  
'''Parameters'''
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintFloat'''
 +
|-
 +
| colspan="2" | Print a Float number rounded up to a specified amount of decimal places.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
 +
| width="90%" | Number
 +
|-
 +
| colspan="2" | Enter the number or variable to print to the LCD&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | DecimalPlaces
 +
|-
 +
| colspan="2" | Enter how many decimal places to round up to (1 - 6)&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
:[[Variable Types|INT]] ''Number''
 
::Enter the number or variable to print to the LCD
 
  
 +
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RemapCharacter'''
 +
|-
 +
| colspan="2" | 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.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | RemapIdx
 +
|-
 +
| colspan="2" | Remap Index, Range: 0 to (Remap Characters - 1)&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | SearchCharacter
 +
|-
 +
| colspan="2" | Character to look for a replace&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 +
| width="90%" | ReplacementCharacter
 +
|-
 +
| colspan="2" | New character value to use in place of the search character.&nbsp;
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
'''Return value'''
 
  
:''This call does not return a value''
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 +
|-
 +
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 +
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Start'''
 +
|-
 +
| colspan="2" | Startup routine required by the hardware device. Automatically clears the display after initialising.&nbsp;
 +
|-
 +
|-
 +
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 +
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 +
|}
  
  
===<span style="font-weight: normal;"><u><tt>RAMWrite</tt></u></span>===
 
Modifies the internal memory of the LCD to allow for up to 8 customised characters to be created and stored in the device memory
 
 
'''Parameters'''
 
 
:[[Variable Types|BYTE]] ''Index''
 
::Values 0 to 7
 
 
:[[Variable Types|BYTE]] ''d0''
 
 
:[[Variable Types|BYTE]] ''d1''
 
 
:[[Variable Types|BYTE]] ''d2''
 
 
:[[Variable Types|BYTE]] ''d3''
 
 
:[[Variable Types|BYTE]] ''d4''
 
 
:[[Variable Types|BYTE]] ''d5''
 
 
:[[Variable Types|BYTE]] ''d6''
 
 
:[[Variable Types|BYTE]] ''d7''
 
 
 
'''Return value'''
 
 
:''This call does not return a value''
 
 
 
===<span style="font-weight: normal;"><u><tt>ClearLine</tt></u></span>===
 
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.
 
 
'''Parameters'''
 
 
:[[Variable Types|BYTE]] ''Line''
 
::The line to clear, zero being the first (top) line of the display
 
 
 
'''Return value'''
 
 
:''This call does not return a value''
 
 
 
===<span style="font-weight: normal;"><u><tt>Cursor</tt></u></span>===
 
Moves the cursor on the LCD Display
 
 
'''Parameters'''
 
 
:[[Variable Types|BYTE]] ''x''
 
::Set the cursor position in the X plane, 0 is the left most cell
 
 
:[[Variable Types|BYTE]] ''y''
 
::Set the cursor position in the Y plane, 0 is the top most cell
 
 
 
'''Return value'''
 
 
:''This call does not return a value''
 
 
 
===<span style="font-weight: normal;"><u><tt>Command</tt></u></span>===
 
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.
 
 
'''Parameters'''
 
 
:[[Variable Types|BYTE]] ''instruction''
 
::Send a defined command to the LCD Screen. See datasheet for supported commands.
 
 
 
'''Return value'''
 
 
:''This call does not return a value''
 
 
 
===<span style="font-weight: normal;"><u><tt>PrintFormattedNumber</tt></u></span>===
 
Will allow you to print a number up to 32-bits with signed or unsigned formatting.
 
 
Signed = -2147483648 to 2147483647
 
 
Unsigned = 0 to 4294967295
 
 
'''Parameters'''
 
 
:[[Variable Types|ULONG]] ''Number''
 
::Enter the number or variable to print to the LCD
 
 
:[[Variable Types|BOOL]] ''Format''
 
::0=Signed, 1=Unsigned
 
 
 
'''Return value'''
 
 
:''This call does not return a value''
 
 
 
===<span style="font-weight: normal;"><u><tt>ScrollDisplay</tt></u></span>===
 
Scrolls the display left or right by a number of given positions.
 
 
'''Parameters'''
 
 
:[[Variable Types|BYTE]] ''Position''
 
::Holds the number of positions to shift the display
 
 
:[[Variable Types|BYTE]] ''Direction''
 
::0 = left, 1 = right
 
 
 
'''Return value'''
 
 
:''This call does not return a value''
 
 
 
===<span style="font-weight: normal;"><u><tt>RawSend</tt></u></span>===
 
Sends data to the LCD display
 
 
'''Parameters'''
 
 
:[[Variable Types|BYTE]] ''data''
 
::The data byte to send to the LCD
 
 
:[[Variable Types|BOOL]] ''type''
 
::A boolean to indicate command type: true to write data, false to write a command
 
 
 
'''Return value'''
 
 
:''This call does not return a value''
 
 
 
===<span style="font-weight: normal;"><u><tt>RemapCharacter</tt></u></span>===
 
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.
 
 
'''Parameters'''
 
 
:[[Variable Types|BYTE]] ''RemapIdx''
 
::Remap Index, Range: 0 to (Remap Characters - 1)
 
 
:[[Variable Types|BYTE]] ''SearchCharacter''
 
::Character to look for a replace
 
 
:[[Variable Types|BYTE]] ''ReplacementCharacter''
 
::New character value to use in place of the search character.
 
 
 
'''Return value'''
 
 
:''This call does not return a value''
 
 
 
===<span style="font-weight: normal;"><u><tt>Start</tt></u></span>===
 
Startup routine required by the hardware device.
 
 
Automatically clears the display after initialising.
 
 
'''Parameters'''
 
 
:''This macro has no parameters''
 
 
 
'''Return value'''
 
 
:''This call does not return a value''
 
 
 
 
==Simulation macro reference==
 
 
''This component does not contain any simulation macros''
 
  
  
 
==Property reference==
 
==Property reference==
<span style="font-weight: normal;"><u>Data 0 (11 / 7)</u></span>
 
  
This property is of type ''Single digital pin'' and can be referenced with the variable name ''LCD1::Pin_Data_0''.
+
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
+
|-
Data pin 0 - Connects to Data 4 on the hardware in 4-bit mode or Data 0 in 8-bit mode
+
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
<span style="font-weight: normal;"><u>Data 1 (12 / 8)</u></span>
+
|-
 
+
|-
This property is of type ''Single digital pin'' and can be referenced with the variable name ''LCD1::Pin_Data_1''.
+
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
+
| width="90%" | Data 0 (11 / 7)
Data pin 1 - Connects to Data 5 on the hardware in 4-bit mode or Data 1 in 8-bit mode
+
|-
 
+
| colspan="2" | Data pin 0 - Connects to Data 4 on the hardware in 4-bit mode or Data 0 in 8-bit mode&nbsp;
<span style="font-weight: normal;"><u>Data 2 (13 / 9)</u></span>
+
|-
 
+
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
This property is of type ''Single digital pin'' and can be referenced with the variable name ''LCD1::Pin_Data_2''.
+
| width="90%" | Data 1 (12 / 8)
 
+
|-
Data pin 2 - Connects to Data 6 on the hardware in 4-bit mode or Data 2 in 8-bit mode
+
| colspan="2" | Data pin 1 - Connects to Data 5 on the hardware in 4-bit mode or Data 1 in 8-bit mode&nbsp;
 
+
|-
<span style="font-weight: normal;"><u>Data 3 (14 / 10)</u></span>
+
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
+
| width="90%" | Data 2 (13 / 9)
This property is of type ''Single digital pin'' and can be referenced with the variable name ''LCD1::Pin_Data_3''.
+
|-
 
+
| colspan="2" | Data pin 2 - Connects to Data 6 on the hardware in 4-bit mode or Data 2 in 8-bit mode&nbsp;
Data pin 3 - Connects to Data 7 on the hardware in 4-bit mode or Data 3 in 8-bit mode
+
|-
 
+
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
<span style="font-weight: normal;"><u>Register Select (4)</u></span>
+
| width="90%" | Data 3 (14 / 10)
 
+
|-
This property is of type ''Single digital pin'' and can be referenced with the variable name ''LCD1::Pin_RS''.
+
| colspan="2" | Data pin 3 - Connects to Data 7 on the hardware in 4-bit mode or Data 3 in 8-bit mode&nbsp;
 
+
|-
Register Select Pin - Informs the display if a command or data is about to be sent.
+
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
+
| width="90%" | Register Select (4)
<span style="font-weight: normal;"><u>Enable (6)</u></span>
+
|-
 
+
| colspan="2" | Register Select Pin - Informs the display if a command or data is about to be sent.&nbsp;
This property is of type ''Single digital pin'' and can be referenced with the variable name ''LCD1::Pin_E''.
+
|-
 
+
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
Enable pin - Used to synchronise data writes to the display
+
| width="90%" | Enable (6)
 +
|-
 +
| colspan="2" | Enable pin - Used to synchronise data writes to the display&nbsp;
 +
|-
 +
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 +
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation
 +
|-
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 +
| width="90%" | Component Label
 +
|-
 +
| colspan="2" | &nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-11-icon.png]]
 +
| width="90%" | User Label Text
 +
|-
 +
| colspan="2" | Text to display&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 +
| width="90%" | Component Label Scale
 +
|-
 +
| colspan="2" | The label scale can be change if the amout of text is too wide for the display &nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
 +
| width="90%" | Text Colour
 +
|-
 +
| colspan="2" | Colour of the font characters drawn on the display&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
 +
| width="90%" | Text Background
 +
|-
 +
| colspan="2" | Colour surrounding the font characters drawn on the display&nbsp;
 +
|-
 +
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
 +
| width="90%" | Display Background
 +
|-
 +
| colspan="2" | Colour of the background of the display&nbsp;
 +
|}

Revision as of 14:40, 16 January 2023

Author Matrix TSL
Version 1.0
Category E-blocks 2


LCD component

LCD component to drive the E-blocks 2 BL0169 LCD board. Provides a 4 x 20 character alphanumeric display.

Component Source Code

Please click here for the component source code: FC_Comp_Source_EBlocks2_LCD_BL0169.fcfx

Detailed description

No detailed description exists yet for this component

Examples

No additional examples


Downloadable macro reference

Fc9-comp-macro.png Clear
Clears the entire contents of the display. 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png PrintString
Breaks down a string of text and sends it to the LCD via the private RawSend(byte, mask) macro 
Fc9-string-icon.png - STRING Text
Enter the text or variable to print to the LCD 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png PrintAscii
Takes the ascii value for a character and prints the character 
Fc9-u8-icon.png - BYTE character
Holds an ascii value. 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png PrintNumber
Based on v5 macro, will allow you to print a number. This is limited to a signed-INT, -32768 to 32767 
Fc9-s16-icon.png - INT Number
Enter the number or variable to print to the LCD 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png 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 
Fc9-u8-icon.png - BYTE Index
Values 0 to 7 
Fc9-u8-icon.png - BYTE d0
 
Fc9-u8-icon.png - BYTE d1
 
Fc9-u8-icon.png - BYTE d2
 
Fc9-u8-icon.png - BYTE d3
 
Fc9-u8-icon.png - BYTE d4
 
Fc9-u8-icon.png - BYTE d5
 
Fc9-u8-icon.png - BYTE d6
 
Fc9-u8-icon.png - BYTE d7
 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png 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. 
Fc9-u8-icon.png - BYTE Line
The line to clear, zero being the first (top) line of the display 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Cursor
Moves the cursor on the LCD Display 
Fc9-u8-icon.png - BYTE x
Set the cursor position in the X plane, 0 is the left most cell 
Fc9-u8-icon.png - BYTE y
Set the cursor position in the Y plane, 0 is the top most cell 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png 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. 
Fc9-u8-icon.png - BYTE instruction
Send a defined command to the LCD Screen. See datasheet for supported commands. 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png 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 
Fc9-u32-icon.png - ULONG Number
Enter the number or variable to print to the LCD 
Fc9-bool-icon.png - BOOL Format
0=Signed, 1=Unsigned 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png ScrollDisplay
Scrolls the display left or right by a number of given positions. 
Fc9-u8-icon.png - BYTE Position
Holds the number of positions to shift the display 
Fc9-u8-icon.png - BYTE Direction
0 = left, 1 = right 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png RawSend
Sends data to the LCD display 
Fc9-u8-icon.png - BYTE data
The data byte to send to the LCD 
Fc9-bool-icon.png - BOOL type
A boolean to indicate command type: true to write data, false to write a command 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png PrintFloat
Print a Float number rounded up to a specified amount of decimal places. 
Fc9-f32-icon.png - FLOAT Number
Enter the number or variable to print to the LCD 
Fc9-u8-icon.png - BYTE DecimalPlaces
Enter how many decimal places to round up to (1 - 6) 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png 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. 
Fc9-u8-icon.png - BYTE RemapIdx
Remap Index, Range: 0 to (Remap Characters - 1) 
Fc9-u8-icon.png - BYTE SearchCharacter
Character to look for a replace 
Fc9-u8-icon.png - BYTE ReplacementCharacter
New character value to use in place of the search character. 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Start
Startup routine required by the hardware device. Automatically clears the display after initialising. 
Fc9-void-icon.png - VOID Return



Property reference

Fc9-prop-icon.png Properties
Fc9-type-5-icon.png Data 0 (11 / 7)
Data pin 0 - Connects to Data 4 on the hardware in 4-bit mode or Data 0 in 8-bit mode 
Fc9-type-5-icon.png Data 1 (12 / 8)
Data pin 1 - Connects to Data 5 on the hardware in 4-bit mode or Data 1 in 8-bit mode 
Fc9-type-5-icon.png Data 2 (13 / 9)
Data pin 2 - Connects to Data 6 on the hardware in 4-bit mode or Data 2 in 8-bit mode 
Fc9-type-5-icon.png Data 3 (14 / 10)
Data pin 3 - Connects to Data 7 on the hardware in 4-bit mode or Data 3 in 8-bit mode 
Fc9-type-5-icon.png Register Select (4)
Register Select Pin - Informs the display if a command or data is about to be sent. 
Fc9-type-5-icon.png Enable (6)
Enable pin - Used to synchronise data writes to the display 
Fc9-conn-icon.png Simulation
Fc9-type-16-icon.png Component Label
 
Fc9-type-11-icon.png User Label Text
Text to display 
Fc9-type-15-icon.png Component Label Scale
The label scale can be change if the amout of text is too wide for the display  
Fc9-type-1-icon.png Text Colour
Colour of the font characters drawn on the display 
Fc9-type-1-icon.png Text Background
Colour surrounding the font characters drawn on the display 
Fc9-type-1-icon.png Display Background
Colour of the background of the display