Component: LCD (BL0169) (E-blocks 2): Difference between revisions
Appearance
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
|||
| (19 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
{| style="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 | | 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. | |||
== | ==Version information== | ||
Library Version, Component Version, Date, Author, Info | |||
4, 1.0, 08-05-25, BR, Added autodetect port on Ev_PostInitialise | |||
== | ==Detailed description== | ||
'' | ''No detailed description exists yet for this component'' | ||
==Examples== | |||
Example showing the basic function of BL0169 E-blocks 2 alphanumeric Display. | |||
{{Fcfile|BL0169LCDDemo.fcfx|BL0169 LCD Demo}} | |||
==Macro reference== | |||
===Clear=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Clear''' | |||
|- | |||
| colspan="2" | Clears the entire contents of the display. | |||
|- | |||
|- | |||
| 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'' | |||
|} | |||
''' | ===ClearLine=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''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. | |||
|- | |||
|- | |||
| 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 | |||
|- | |||
| 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'' | |||
|} | |||
===Cursor=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Cursor''' | |||
|- | |||
| colspan="2" | Moves the cursor on the LCD Display | |||
|- | |||
|- | |||
| 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 | |||
|- | |||
| 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 | |||
|- | |||
| 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'' | |||
|} | |||
:'' | ===PrintAscii=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''PrintAscii''' | |||
|- | |||
| colspan="2" | Takes the ascii value for a character and prints the character | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | character | |||
|- | |||
| colspan="2" | Holds an ascii value. | |||
|- | |||
| 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'' | |||
|} | |||
=== | ===PrintFloat=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''PrintFloat''' | |||
|- | |||
| colspan="2" | Print a Float number rounded up to a specified amount of decimal places. | |||
|- | |||
|- | |||
| 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 | |||
|- | |||
| 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) | |||
|- | |||
| 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'' | |||
|} | |||
===PrintFormattedNumber=== | |||
: | {| class="mtx-class-macrotable wikitable" | ||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''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 | |||
|- | |||
|- | |||
| 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 | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL | |||
| width="90%" | Format | |||
|- | |||
| colspan="2" | 0=Signed, 1=Unsigned | |||
|- | |||
| 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 | ===PrintNumber=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''PrintNumber''' | |||
|- | |||
| colspan="2" | Based on v5 macro, will allow you to print a number. This is limited to a signed-INT, -32768 to 32767 | |||
|- | |||
|- | |||
| 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 | |||
|- | |||
| 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'' | |||
|} | |||
===PrintString=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''PrintString''' | |||
|- | |||
| colspan="2" | Breaks down a string of text and sends it to the LCD via the private RawSend(byte, mask) macro | |||
|- | |||
|- | |||
| 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 | |||
|- | |||
| 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'' | |||
|} | |||
''' | ===RAMWrite=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''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 | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | Index | |||
|- | |||
| colspan="2" | Values 0 to 7 | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | d0 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | d1 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | d2 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | d3 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | d4 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | d5 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | d6 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | d7 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| 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'' | |||
|} | |||
:[[ | ===RawSend=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''RawSend''' | |||
|- | |||
| colspan="2" | Sends data to the LCD display | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | data | |||
|- | |||
| colspan="2" | The data byte to send to the LCD | |||
|- | |||
| 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 | |||
|- | |||
| 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'' | |||
|} | |||
:[[ | ===RemapCharacter=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''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. | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | RemapIdx | |||
|- | |||
| colspan="2" | Remap Index, Range: 0 to (Remap Characters - 1) | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | SearchCharacter | |||
|- | |||
| colspan="2" | Character to look for a replace | |||
|- | |||
| 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. | |||
|- | |||
| 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'' | |||
|} | |||
===Start=== | |||
=== | {| class="mtx-class-macrotable wikitable" | ||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Start''' | |||
|- | |||
| colspan="2" | Startup routine required by the hardware device. Automatically clears the display after initialising. | |||
|- | |||
|- | |||
| 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'' | |||
|} | |||
''' | |||
Startup routine required by the hardware device. | |||
Automatically clears the display after initialising. | |||
: | |||
: | |||
== | |||
'' | |||
==Property reference== | ==Property reference== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
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" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" class="mtx-class-macrohead" | '''Properties''' | |||
|- | |||
|- | |||
| 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 | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |||
| 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 | ||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |||
| width="90%" | Data 2 (13 / 9) | |||
|- | |||
| colspan="2" | Data pin 2 - Connects to Data 6 on the hardware in 4-bit mode or Data 2 in 8-bit mode | |||
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]] | |||
| width="90%" | Data 3 (14 / 10) | |||
|- | |||
| colspan="2" | Data pin 3 - Connects to Data 7 on the hardware in 4-bit mode or Data 3 in 8-bit mode | |||
|- | |||
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) | |||
|- | |||
| colspan="2" | 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%" | Enable (6) | |||
|- | |||
| colspan="2" | Enable pin - Used to synchronise data writes to the display | |||
|- | |||
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | |||
| width="90%" class="mtx-class-propfolder" | Simulation | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Component Label | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-11-icon.png]] | |||
| width="90%" | User Label Text | |||
|- | |||
| colspan="2" | Text to display | |||
|- | |||
| 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 | |||
|- | |||
| 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 | |||
|- | |||
| 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 | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]] | |||
| width="90%" | Display Background | |||
|- | |||
| colspan="2" | Colour of the background of the display | |||
|} | |||
==Component Source Code== | |||
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_EB_LCD_BL0169.fcfx FC_Comp_Source_EB_LCD_BL0169.fcfx] | |||
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_EB_LCD_BL0169.fcfx FC_Comp_Source_EB_LCD_BL0169.fcfx] | |||
Latest revision as of 14:37, 13 July 2026
| 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.
Version information
Library Version, Component Version, Date, Author, Info 4, 1.0, 08-05-25, BR, Added autodetect port on Ev_PostInitialise
Detailed description
No detailed description exists yet for this component
Examples
Example showing the basic function of BL0169 E-blocks 2 alphanumeric Display.
Macro reference
Clear
| Clear | |
| Clears the entire contents of the display. | |
| Return | |
ClearLine
Cursor
PrintAscii
| PrintAscii | |
| Takes the ascii value for a character and prints the character | |
| character | |
| Holds an ascii value. | |
| Return | |
PrintFloat
PrintFormattedNumber
PrintNumber
| PrintNumber | |
| Based on v5 macro, will allow you to print a number. This is limited to a signed-INT, -32768 to 32767 | |
| Number | |
| Enter the number or variable to print to the LCD | |
| Return | |
PrintString
| PrintString | |
| Breaks down a string of text and sends it to the LCD via the private RawSend(byte, mask) macro | |
| Text | |
| Enter the text or variable to print to the LCD | |
| Return | |
RAMWrite
RawSend
| RawSend | |
| Sends data to the LCD display | |
| data | |
| The data byte to send to the LCD | |
| type | |
| A boolean to indicate command type: true to write data, false to write a command | |
| Return | |
RemapCharacter
Start
| Start | |
| Startup routine required by the hardware device. Automatically clears the display after initialising. | |
| Return | |
Property reference
Component Source Code
Please click here to download the component source project: FC_Comp_Source_EB_LCD_BL0169.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_EB_LCD_BL0169.fcfx