Component: LCD I2C (LCM1602) (Alphanumeric): Difference between revisions
Appearance
No edit summary |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (5 intermediate revisions by the same user not shown) | |||
| Line 88: | Line 88: | ||
===Backlight=== | ===Backlight=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Backlight''' | ||
|- | |- | ||
| colspan="2" | Controls the backlight on the display module | | colspan="2" | Controls the backlight on the display module | ||
| Line 107: | Line 107: | ||
===Clear=== | ===Clear=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Clear''' | ||
|- | |- | ||
| colspan="2" | Clears the entire contents of the display. | | colspan="2" | Clears the entire contents of the display. | ||
| Line 121: | Line 121: | ||
===ClearLine=== | ===ClearLine=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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. | | 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. | ||
| Line 140: | Line 140: | ||
===Command=== | ===Command=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''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. | | 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. | ||
| Line 159: | Line 159: | ||
===Cursor=== | ===Cursor=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Cursor''' | ||
|- | |- | ||
| colspan="2" | Moves the cursor on the LCD Display | | colspan="2" | Moves the cursor on the LCD Display | ||
| Line 183: | Line 183: | ||
===PrintAscii=== | ===PrintAscii=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''PrintAscii''' | ||
|- | |- | ||
| colspan="2" | Takes the ascii value for a character and prints the character | | colspan="2" | Takes the ascii value for a character and prints the character | ||
| Line 202: | Line 202: | ||
===PrintFloat=== | ===PrintFloat=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''PrintFloat''' | ||
|- | |- | ||
| colspan="2" | Print a Float number rounded up to a specified amount of decimal places. | | colspan="2" | Print a Float number rounded up to a specified amount of decimal places. | ||
| Line 226: | Line 226: | ||
===PrintFormattedNumber=== | ===PrintFormattedNumber=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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 | | 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 | ||
| Line 250: | Line 250: | ||
===PrintNumber=== | ===PrintNumber=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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 | | colspan="2" | Based on v5 macro, will allow you to print a number. This is limited to a signed-INT, -32768 to 32767 | ||
| Line 269: | Line 269: | ||
===PrintString=== | ===PrintString=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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 | | colspan="2" | Breaks down a string of text and sends it to the LCD via the private RawSend(byte, mask) macro | ||
| Line 288: | Line 288: | ||
===RAMWrite=== | ===RAMWrite=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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 | | 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 | ||
| Line 347: | Line 347: | ||
===RawSend=== | ===RawSend=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''RawSend''' | ||
|- | |- | ||
| colspan="2" | Sends data to the LCD display | | colspan="2" | Sends data to the LCD display | ||
| Line 371: | Line 371: | ||
===RemapCharacter=== | ===RemapCharacter=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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. | | 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. | ||
| Line 400: | Line 400: | ||
===ScrollDisplay=== | ===ScrollDisplay=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ScrollDisplay''' | ||
|- | |- | ||
| colspan="2" | Scrolls the display left or right by a number of given positions. | | colspan="2" | Scrolls the display left or right by a number of given positions. | ||
| Line 424: | Line 424: | ||
===Start=== | ===Start=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Start''' | ||
|- | |- | ||
| colspan="2" | Startup routine required by the hardware device. Automatically clears the display after initialising. | | colspan="2" | Startup routine required by the hardware device. Automatically clears the display after initialising. | ||
| Line 439: | Line 439: | ||
==Property reference== | ==Property reference== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Connections | ||
|- | |- | ||
|- | |- | ||
| Line 484: | Line 484: | ||
| colspan="2" | On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not a 10ms delay between an I2C stop event and the next I2C start event. Most modern microcontrollers will not have a problem so this property can be disabled to speed up the I2C communications. | | colspan="2" | On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not a 10ms delay between an I2C stop event and the next I2C start event. Most modern microcontrollers will not have a problem so this property can be disabled to speed up the I2C communications. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Display Settings | ||
|- | |- | ||
|- | |- | ||
| Line 528: | Line 528: | ||
| colspan="2" | Font to use for simulation, the actual hardware will have a inbuilt fixed font. | | colspan="2" | Font to use for simulation, the actual hardware will have a inbuilt fixed font. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Simulation | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:37, 13 July 2026
| Author | Matrix Ltd |
| Version | 1.0 |
| Category | Alphanumeric |
LCD I2C (LCM1602) component
Generic alphanumeric LCD display based on the standard Hitachi HD44780 controller IC. Connected using an I2C based PCF8574 IO Expander IC.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_LCD_I2C_LCM1602.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_LCD_I2C_LCM1602.fcfx
Detailed description
No detailed description exists yet for this component
Examples
No additional examples
Macro reference
Backlight
| Backlight | |
| Controls the backlight on the display module | |
| Mode | |
| 0 = Backlight Off / 1 = Backlight On | |
| Return | |
Clear
| Clear | |
| Clears the entire contents of the display. | |
| Return | |
ClearLine
Command
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
ScrollDisplay
| ScrollDisplay | |
| Scrolls the display left or right by a number of given positions. | |
| Position | |
| Holds the number of positions to shift the display | |
| Direction | |
| 0 = left, 1 = right | |
| Return | |
Start
| Start | |
| Startup routine required by the hardware device. Automatically clears the display after initialising. | |
| Return | |