Jump to content

Component: LCD SPI (MiniClick) (Alphanumeric): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(18 intermediate revisions by 2 users not shown)
Line 16: Line 16:


==Detailed description==
==Detailed description==




Line 26: Line 42:


==Examples==
==Examples==




Line 35: Line 67:
''<span style="color:red;">No additional examples</span>''
''<span style="color:red;">No additional examples</span>''


==Downloadable macro reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
 
 
 
 
 
 
 
 
==Macro reference==
 
===Clear===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Clear'''
| width="90%" class="mtx-class-macrohead" | '''Clear'''
|-
|-
| colspan="2" | Clears the entire contents of the display.&nbsp;
| colspan="2" | Clears the entire contents of the display.&nbsp;
Line 50: Line 93:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ClearLine===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintString'''
| width="90%" class="mtx-class-macrohead" | '''ClearLine'''
|-
|-
| colspan="2" | Breaks down a string of text and sends it to the LCD via the private RawSend(byte, mask) macro&nbsp;
| 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-string-icon.png]] - STRING
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Text
| width="90%" | Line
|-
|-
| colspan="2" | Enter the text or variable to print to the LCD&nbsp;
| 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="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 68: Line 112:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Command===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintAscii'''
| width="90%" class="mtx-class-macrohead" | '''Command'''
|-
|-
| colspan="2" | Takes the ascii value for a character and prints the character&nbsp;
| 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="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | character
| width="90%" | instruction
|-
|-
| colspan="2" | Holds an ascii value.&nbsp;
| 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="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 86: Line 131:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===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&nbsp;
|-
|-
| 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-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-s16-icon.png]] - INT
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Number
| width="90%" | y
|-
|-
| colspan="2" | Enter the number or variable to print to the LCD&nbsp;
| 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="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 104: Line 155:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===PrintAscii===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RAMWrite'''
| width="90%" class="mtx-class-macrohead" | '''PrintAscii'''
|-
|-
| 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;
| 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="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Index
| width="90%" | character
|-
|-
| colspan="2" | Values 0 to 7&nbsp;
| colspan="2" | Holds an ascii value.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" | d0
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
===PrintFloat===
{| class="mtx-class-macrotable wikitable"
|-
|-
| colspan="2" | &nbsp;
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''PrintFloat'''
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| colspan="2" | Print a Float number rounded up to a specified amount of decimal places.&nbsp;
| width="90%" | d1
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | d2
| width="90%" | Number
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | Enter the number or variable to print to the LCD&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | d3
| width="90%" | DecimalPlaces
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | Enter how many decimal places to round up to (1 - 6)&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" | d4
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
===PrintFormattedNumber===
{| class="mtx-class-macrotable wikitable"
|-
|-
| colspan="2" | &nbsp;
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''PrintFormattedNumber'''
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| 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="90%" | d5
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
| width="90%" | d6
| width="90%" | Number
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | Enter the number or variable to print to the LCD&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL
| width="90%" | d7
| width="90%" | Format
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | 0=Signed, 1=Unsigned&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 162: Line 222:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===PrintNumber===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ClearLine'''
| width="90%" class="mtx-class-macrohead" | '''PrintNumber'''
|-
|-
| 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;
| 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-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Line
| width="90%" | Number
|-
|-
| colspan="2" | The line to clear, zero being the first (top) line of the display&nbsp;
| 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="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 180: Line 241:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===PrintString===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Cursor'''
| width="90%" class="mtx-class-macrohead" | '''PrintString'''
|-
|-
| colspan="2" | Moves the cursor on the LCD Display&nbsp;
| 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-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | x
| width="90%" | Text
|-
|-
| colspan="2" | Set the cursor position in the X plane, 0 is the left most cell&nbsp;
| colspan="2" | Enter the text or variable to print to the LCD&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="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 203: Line 260:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===RAMWrite===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Command'''
| width="90%" class="mtx-class-macrohead" | '''RAMWrite'''
|-
|-
| 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;
| 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="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | instruction
| width="90%" | Index
|-
|-
| colspan="2" | Send a defined command to the LCD Screen. See datasheet for supported commands.&nbsp;
| colspan="2" | Values 0 to 7&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | d0
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" | &nbsp;
| 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-u8-icon.png]] - BYTE
| width="90%" | d1
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Number
| width="90%" | d2
|-
|-
| colspan="2" | Enter the number or variable to print to the LCD&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Format
| width="90%" | d3
|-
|-
| colspan="2" | 0=Signed, 1=Unsigned&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | d4
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" | &nbsp;
| 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%" | d5
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Position
| width="90%" | d6
|-
|-
| colspan="2" | Holds the number of positions to shift the display&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Direction
| width="90%" | d7
|-
|-
| colspan="2" | 0 = left, 1 = right&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 267: Line 319:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===RawSend===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RawSend'''
| width="90%" class="mtx-class-macrohead" | '''RawSend'''
|-
|-
| colspan="2" | Sends data to the LCD display&nbsp;
| colspan="2" | Sends data to the LCD display&nbsp;
Line 290: Line 343:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===RemapCharacter===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RemapCharacter'''
| 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.&nbsp;
| 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;
Line 318: Line 372:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ScrollDisplay===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ScrollDisplay'''
|-
| colspan="2" | Scrolls the display left or right by a number of given positions.&nbsp;
|-
|-
| 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" | [[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="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 331: Line 396:




===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.&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''
|}




==Property reference==
==Property reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
| width="90%" class="mtx-class-macrohead" | '''Properties'''
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
|-
|-
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" class="mtx-class-propfolder" | Connections
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | External Address
|-
| colspan="2" | Selects the value of the three address pins for the MCP23S17.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Rows
| width="90%" | Channel
|-
|-
| colspan="2" | Number of lines of characters the LCD can display.&nbsp;
| colspan="2" | SPI Channel selector&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Columns
| width="90%" | Prescale
|-
| colspan="2" | Prescale option selector&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | MOSI
|-
|-
| colspan="2" | Number of characters the LCD can display on a single line.&nbsp;
| colspan="2" | SPI Data Out Pin SDO - Also Known as Master Out Slave In (MOSI) when used in Master mode.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Remap Characters
| width="90%" | MOSI Remap Pin
|-
|-
| colspan="2" | Used to allow characters to be replaced with alternate characters. Custom characters or characters from the LCD memory map can be used as replacements. Each replacement consumes two bytes of RAM memory and is applied automatically when printing strings.&nbsp;
| colspan="2" | Select which the target pin to assign the MOSI hardware pin functionality.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | Delay Timings
| width="90%" | MISO
|-
|-
| colspan="2" | Delay in microseconds used in the display send function. Most displays will work with the default value of 100us. Some displays may need a slightly longer delay, 166us is known to work well.&nbsp;
| colspan="2" | SPI Data In Pin SDI - Also Known as Master In Slave Out (MISO) when used in Master mode.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Background Color
| width="90%" | MISO Remap Pin
|-
|-
| colspan="2" | Simulation only background colour, the actual hardware will have a fixed colour&nbsp;
| colspan="2" | Select which the target pin to assign the MISO hardware pin functionality.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | Line Color
| width="90%" | CLK
|-
|-
| colspan="2" | Simulation only line colour, the actual hardware will have a fixed colour&nbsp;
| colspan="2" | SPI Clock Pin CLK - The Clock signal is driven by the SPI master.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Text Color
| width="90%" | CLK Remap Pin
|-
|-
| colspan="2" | Simulation only text colour, the actual hardware will have a fixed colour&nbsp;
| colspan="2" | Select which the target pin to assign the CLK hardware pin functionality.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-3-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | Font
| width="90%" | CS / SS
|-
|-
| colspan="2" | Font to use for simulation, the actual hardware will have a inbuilt fixed font.&nbsp;
| colspan="2" | Chip Select / Slave Select Pin  Master Mode: General purpose output pin used to select the remote SPI device. Slave Mode: Hardware chip select pin input used to select the SPI device. &nbsp;
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Connections'''
| width="90%" class="mtx-class-propfolder" | Display Settings
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | External Address
| width="90%" | Rows
|-
|-
| colspan="2" | Selects the value of the three address pins for the MCP23S17.&nbsp;
| colspan="2" | Number of lines of characters the LCD can display.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Channel
| width="90%" | Columns
|-
| colspan="2" | Number of characters the LCD can display on a single line.&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | Remap Characters
|-
| colspan="2" | Used to allow characters to be replaced with alternate characters. Custom characters or characters from the LCD memory map can be used as replacements. Each replacement consumes two bytes of RAM memory and is applied automatically when printing strings.&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | Delay Timings
|-
| colspan="2" | Delay in microseconds used in the display send function. Most displays will work with the default value of 100us. Some displays may need a slightly longer delay, 166us is known to work well.&nbsp;
|-
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" class="mtx-class-propfolder" | Simulation
|-
|-
| colspan="2" | SPI Channel selector&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Prescale
| width="90%" | Component Label
|-
|-
| colspan="2" | Prescale option selector&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-11-icon.png]]
| width="90%" | MOSI
| width="90%" | User Label Text
|-
|-
| colspan="2" | SPI Data Out Pin SDO - Also Known as Master Out Slave In (MOSI) when used in Master mode.&nbsp;
| colspan="2" | Text to display&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
| width="90%" | MISO
| width="90%" | Component Label Scale
|-
|-
| colspan="2" | SPI Data In Pin SDI - Also Known as Master In Slave Out (MISO) when used in Master mode.&nbsp;
| 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-5-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="90%" | CLK
| width="90%" | Text Colour
|-
|-
| colspan="2" | SPI Clock Pin CLK - The Clock signal is driven by the SPI master.&nbsp;
| colspan="2" | Colour of the font characters drawn on the display&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="90%" | CS
| width="90%" | Text Background
|-
|-
| colspan="2" | Chip Select / Slave Select Pin  Master Mode: General purpose output pin used to select the remote SPI device. Slave Mode: Hardware chip select pin input used to select the SPI device. &nbsp;
| colspan="2" | Colour surrounding the font characters drawn on the display&nbsp;
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Simulations'''
| width="90%" | Display Background
|-
|-
| colspan="2" | Colour of the background of the display&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
Line 436: Line 542:
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | API
| width="90%" | API
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" class="mtx-class-propfolder" | Connections
|-
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Channel
|-
| colspan="2" | SPI Channel selector&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
| width="90%" | Use Auto CS
|-
| colspan="2" | Allow the SPI component to manage the CS pin for us in Master mode. On initialise the CS pin is automatically set high to disable the remote SPI device. Set to No if you want to create a component with multiple CS pins or if you want to manage the CS pin yourself.&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | CS Polarity
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|}
|}
==Component Source Code==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_LCD_SPI_MiniClick.fcfx FC_Comp_Source_LCD_SPI_MiniClick.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_LCD_SPI_MiniClick.fcfx FC_Comp_Source_LCD_SPI_MiniClick.fcfx]

Latest revision as of 14:37, 13 July 2026

Author Matrix Ltd
Version 1.0
Category Alphanumeric


LCD SPI (MiniClick) component

Generic alphanumeric LCD display based on the standard Hitachi HD44780 controller IC. Connected using an SPI based MCP23S17 SPI IO Expander IC as used on the LCD Mini Click.

Detailed description

No detailed description exists yet for this component

Examples

No additional examples






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
External Address
Selects the value of the three address pins for the MCP23S17. 
Channel
SPI Channel selector 
Prescale
Prescale option selector 
MOSI
SPI Data Out Pin SDO - Also Known as Master Out Slave In (MOSI) when used in Master mode. 
MOSI Remap Pin
Select which the target pin to assign the MOSI hardware pin functionality. 
MISO
SPI Data In Pin SDI - Also Known as Master In Slave Out (MISO) when used in Master mode. 
MISO Remap Pin
Select which the target pin to assign the MISO hardware pin functionality. 
CLK
SPI Clock Pin CLK - The Clock signal is driven by the SPI master. 
CLK Remap Pin
Select which the target pin to assign the CLK hardware pin functionality. 
CS / SS
Chip Select / Slave Select Pin Master Mode: General purpose output pin used to select the remote SPI device. Slave Mode: Hardware chip select pin input used to select the SPI device.  
Display Settings
Rows
Number of lines of characters the LCD can display. 
Columns
Number of characters the LCD can display on a single line. 
Remap Characters
Used to allow characters to be replaced with alternate characters. Custom characters or characters from the LCD memory map can be used as replacements. Each replacement consumes two bytes of RAM memory and is applied automatically when printing strings. 
Delay Timings
Delay in microseconds used in the display send function. Most displays will work with the default value of 100us. Some displays may need a slightly longer delay, 166us is known to work well. 
Simulation
Component Label
 
User Label Text
Text to display 
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 
Scope Traces
Selects if the scope traces are automatically generated or not 
Console Data
Selects if the console data is automatically generated or not 
API
 
Connections
Channel
SPI Channel selector 
Use Auto CS
Allow the SPI component to manage the CS pin for us in Master mode. On initialise the CS pin is automatically set high to disable the remote SPI device. Set to No if you want to create a component with multiple CS pins or if you want to manage the CS pin yourself. 
CS Polarity
 

Component Source Code

Please click here to download the component source project: FC_Comp_Source_LCD_SPI_MiniClick.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_LCD_SPI_MiniClick.fcfx