Difference between revisions of "Component: Combo Board (EB083) (E-blocks 1)"
From Flowcode Help
Jump to navigationJump to search| (8 intermediate revisions by the same user not shown) | |||
| Line 17: | Line 17: | ||
| ==Component Source Code== | ==Component Source Code== | ||
| − | Please click here  | + | Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_EB086_DEMO.fcfx FC_Comp_Source_EB086_DEMO.fcfx] | 
| + | |||
| + | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_EB086_DEMO.fcfx FC_Comp_Source_EB086_DEMO.fcfx] | ||
| ==Detailed description== | ==Detailed description== | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| ''No detailed description exists yet for this component'' | ''No detailed description exists yet for this component'' | ||
| ==Examples== | ==Examples== | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| Line 41: | Line 63: | ||
| :Note; Due to a limitation in the Arduino Uno hardware, portA6 & PortA7 are replicated from PortA5 in this template. | :Note; Due to a limitation in the Arduino Uno hardware, portA6 & PortA7 are replicated from PortA5 in this template. | ||
| − | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ==Macro reference== | ||
| + | |||
| + | ===Clear=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Clear''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Clears the entire contents of the display.  | 
| |- | |- | ||
| |- | |- | ||
| − | | width="10%" align="center" | [[File:Fc9- | + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | 
| − | | width="90%" |  | + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | 
| + | |} | ||
| + | |||
| + | |||
| + | ===ClearLine=== | ||
| + | {| 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.  | 
| − | |||
| |- | |- | ||
| − | |||
| |- | |- | ||
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | Line | 
| |- | |- | ||
| − | | colspan="2" |  | + | | 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="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| Line 71: | Line 108: | ||
| + | ===Command=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Command''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | 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.  | 
| |- | |- | ||
| |- | |- | ||
| − | | width="10%" align="center" | [[File:Fc9- | + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | 
| − | | width="90%" |  | + | | width="90%" | instruction | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Send a defined command to the LCD Screen. See datasheet for supported commands.  | 
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| |- | |- | ||
| | 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 94: | Line 127: | ||
| + | ===Cursor=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Cursor''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Moves the cursor on the LCD Display  | 
| |- | |- | ||
| |- | |- | ||
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | x | 
| |- | |- | ||
| − | | colspan="2" |  | + | | 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="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | y | 
| |- | |- | ||
| − | | colspan="2" |  | + | | 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="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| Line 122: | Line 151: | ||
| + | ===GetPort=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetPort''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Reads the state of a single port  | 
| |- | |- | ||
| |- | |- | ||
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | Bank | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | 0 = Top Bank of Switches, 1 = Bottom Bank of Switches  | 
| |- | |- | ||
| − | + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | ||
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| |} | |} | ||
| + | ===GetSwitchState=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetSwitchState''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Reads the state of a single switch Returns: 0 = Switch not pressed, 1 = Switch pressed  | 
| |- | |- | ||
| |- | |- | ||
| Line 156: | Line 182: | ||
| | width="90%" | Bank | | width="90%" | Bank | ||
| |- | |- | ||
| − | | colspan="2" | 0 = Top Bank of  | + | | colspan="2" | 0 = Top Bank of Switches, 1 = Bottom Bank of Switches  | 
| |- | |- | ||
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | Switch | 
| |- | |- | ||
| − | | colspan="2" |   | + | | colspan="2" | 0 = SW0, 7 = SW7  | 
| |- | |- | ||
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | 
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| |} | |} | ||
| + | ===PrintAscii=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintAscii''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Takes the ascii value for a character and prints the character  | 
| |- | |- | ||
| |- | |- | ||
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | character | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Holds an ascii value.  | 
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| |- | |- | ||
| | 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 196: | Line 213: | ||
| + | ===PrintFloat=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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 219: | Line 237: | ||
| + | ===PrintFormattedNumber=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintFormattedNumber''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | 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- | + | | width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG | 
| − | | width="90%" |  | + | | width="90%" | Number | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Enter the number or variable to print to the LCD  | 
| |- | |- | ||
| − | | width="10%" align="center | + | | width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL | 
| − | | width="90% | + | | width="90%" | Format | 
| − | |||
| − | |||
| − | |||
| − | |||
| |- | |- | ||
| − | + | | colspan="2" | 0=Signed, 1=Unsigned  | |
| − | |||
| − | |||
| − | | colspan="2" |  | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| |- | |- | ||
| | 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 260: | Line 261: | ||
| + | ===PrintNumber=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintNumber''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | 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- | + | | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT | 
| − | | width="90%" |  | + | | width="90%" | Number | 
| |- | |- | ||
| − | | colspan="2" |  | + | | 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="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| Line 283: | Line 280: | ||
| + | ===PrintString=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintString''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | 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 | + | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | 
| − | | width="90% | + | | width="90%" | Text | 
| − | |||
| − | |||
| − | |||
| − | |||
| |- | |- | ||
| − | + | | colspan="2" | Enter the text or variable to print to the LCD  | |
| − | |||
| − | |||
| − | | colspan="2" |  | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| |- | |- | ||
| | 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 314: | Line 299: | ||
| + | ===RAMWrite=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | 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  | | 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 372: | Line 358: | ||
| + | ===RawSend=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RawSend''' | 
| |- | |- | ||
| − | | colspan="2" | Reads one of the analogue components as an  | + | | 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'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | ===ReadAnalogAsByte=== | ||
| + | {| 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;" | '''ReadAnalogAsByte''' | ||
| + | |- | ||
| + | | colspan="2" | Reads one of the analogue components as an byte value  | ||
| |- | |- | ||
| |- | |- | ||
| Line 385: | Line 396: | ||
| | colspan="2" | 0 = Light Sensor, 1 = Potentiometer  | | colspan="2" | 0 = Light Sensor, 1 = Potentiometer  | ||
| |- | |- | ||
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | 
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| |} | |} | ||
| + | ===ReadAnalogAsInt=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadAnalogAsInt''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Reads one of the analogue components as an Integer value  | 
| |- | |- | ||
| |- | |- | ||
| − | | width="10%" align="center" | [[File:Fc9- | + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | 
| − | | width="90%" |  | + | | width="90%" | Channel | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | 0 = Light Sensor, 1 = Potentiometer  | 
| |- | |- | ||
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT | 
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| |} | |} | ||
| + | ===RemapCharacter=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | 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.  | ||
| |- | |- | ||
| − | |||
| |- | |- | ||
| + | | 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="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | ReplacementCharacter | 
| |- | |- | ||
| − | | colspan="2" |  | + | | 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="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| Line 426: | Line 449: | ||
| + | ===ScrollDisplay=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ScrollDisplay''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Scrolls the display left or right by a number of given positions.  | 
| |- | |- | ||
| |- | |- | ||
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | Position | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Holds the number of positions to shift the display  | 
| |- | |- | ||
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | Direction | 
| |- | |- | ||
| − | | colspan="2" | 0 =  | + | | colspan="2" | 0 = left, 1 = right  | 
| |- | |- | ||
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | + | | 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'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| |} | |} | ||
| + | ===SegShowDigit=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SegShowDigit''' | 
| + | |- | ||
| + | | colspan="2" | Displays a digit on the 7-seg display   | ||
| |- | |- | ||
| − | |||
| |- | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | Digit | ||
| + | |- | ||
| + | | colspan="2" | Which of the digits to change (0 - 3)  | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | Value | ||
| + | |- | ||
| + | | colspan="2" | The value to display (0 - 9)  | ||
| |- | |- | ||
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | DecimalPoint | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Decides if the decimal point is lit  | 
| |- | |- | ||
| − | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | + | | 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'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| |} | |} | ||
| + | ===SegShowSegments=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SegShowSegments''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Allows the individual segments of the display to be controlled.   | 
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | Digit | ||
| |- | |- | ||
| + | | colspan="2" | Which of the digits to change (0 - 3)  | ||
| |- | |- | ||
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | Segments | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | 8-bit Binary value to set the segments, bit0 = segA, bit1 = segB...  | 
| |- | |- | ||
| | 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 485: | Line 526: | ||
| + | ===SetLEDState=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetLEDState''' | 
| + | |- | ||
| + | | colspan="2" | Sets the state of a single LED  | ||
| |- | |- | ||
| − | |||
| |- | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | Bank | ||
| + | |- | ||
| + | | colspan="2" | 0 = Top Bank of LEDs, 1 = Bottom Bank of LEDs  | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | LED | ||
| |- | |- | ||
| − | | width="10%" align="center" | [[File:Fc9- | + | | colspan="2" | 0 = LED0, 7 = LED7  | 
| − | | width="90%" |  | + | |- | 
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | State | ||
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | 0 = Off, 1 = On  | 
| |- | |- | ||
| | 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 503: | Line 555: | ||
| + | ===SetPort=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetPort''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Sets the state of a single port  | 
| |- | |- | ||
| |- | |- | ||
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| − | | width="90%" |  | + | | width="90%" | Bank | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | 0 = Top Bank of LEDs, 1 = Bottom Bank of LEDs  | 
| |- | |- | ||
| − | | width="10%" align="center" | [[File:Fc9- | + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | 
| − | | width="90%" |  | + | | width="90%" | Value | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" |   | 
| |- | |- | ||
| | 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 526: | Line 579: | ||
| + | ===Start=== | ||
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| |- | |- | ||
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| − | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Start''' | 
| |- | |- | ||
| − | | colspan="2" |  | + | | colspan="2" | Startup routine required by the hardware device. Automatically clears the display after initialising.  | 
| |- | |- | ||
| |- | |- | ||
| Line 537: | Line 591: | ||
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| |} | |} | ||
| − | |||
| − | |||
Latest revision as of 13:09, 7 February 2023
| Author | Matrix TSL | 
| Version | 1.0 | 
| Category | E-blocks 1 | 
Contents
- 1 Combo Board component
- 2 Component Source Code
- 3 Detailed description
- 4 Examples
- 5 Macro reference
- 5.1 Clear
- 5.2 ClearLine
- 5.3 Command
- 5.4 Cursor
- 5.5 GetPort
- 5.6 GetSwitchState
- 5.7 PrintAscii
- 5.8 PrintFloat
- 5.9 PrintFormattedNumber
- 5.10 PrintNumber
- 5.11 PrintString
- 5.12 RAMWrite
- 5.13 RawSend
- 5.14 ReadAnalogAsByte
- 5.15 ReadAnalogAsInt
- 5.16 RemapCharacter
- 5.17 ScrollDisplay
- 5.18 SegShowDigit
- 5.19 SegShowSegments
- 5.20 SetLEDState
- 5.21 SetPort
- 5.22 Start
 
- 6 Property reference
Combo Board component
A component to drive the EB083 Combo board including LEDs, Switches, LCD, 7-Segs and analogue inputs.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_EB086_DEMO.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_EB086_DEMO.fcfx
Detailed description
No detailed description exists yet for this component
Examples
The following files provide examples of how to use this component:
 Arduino Mega 2560 & Combo Board
Arduino Mega 2560 & Combo Board
- This blank project consists of the Matrix EB083 Combo Board connected to an Arduino Mega 2560.
- This blank project consists of the Matrix EB093 Combo Board connected to an Arduino Uno R3.
- Note; Due to a limitation in the Arduino Uno hardware, portA6 & PortA7 are replicated from PortA5 in this template.
Macro reference
Clear
|   | Clear | 
| Clears the entire contents of the display. | |
|  - VOID | Return | 
ClearLine
Command
Cursor
GetPort
|   | GetPort | 
| Reads the state of a single port | |
|  - BYTE | Bank | 
| 0 = Top Bank of Switches, 1 = Bottom Bank of Switches | |
|  - BYTE | Return | 
GetSwitchState
PrintAscii
|   | PrintAscii | 
| Takes the ascii value for a character and prints the character | |
|  - BYTE | character | 
| Holds an ascii value. | |
|  - VOID | 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 | |
|  - 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
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 | 
ReadAnalogAsByte
|   | ReadAnalogAsByte | 
| Reads one of the analogue components as an byte value | |
|  - BYTE | Channel | 
| 0 = Light Sensor, 1 = Potentiometer | |
|  - BYTE | Return | 
ReadAnalogAsInt
|   | ReadAnalogAsInt | 
| Reads one of the analogue components as an Integer value | |
|  - BYTE | Channel | 
| 0 = Light Sensor, 1 = Potentiometer | |
|  - INT | Return | 
RemapCharacter
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 | 
SegShowDigit
SegShowSegments
SetLEDState
|   | SetLEDState | 
| Sets the state of a single LED | |
|  - BYTE | Bank | 
| 0 = Top Bank of LEDs, 1 = Bottom Bank of LEDs | |
|  - BYTE | LED | 
| 0 = LED0, 7 = LED7 | |
|  - BYTE | State | 
| 0 = Off, 1 = On | |
|  - VOID | Return | 
SetPort
|   | SetPort | 
| Sets the state of a single port | |
|  - BYTE | Bank | 
| 0 = Top Bank of LEDs, 1 = Bottom Bank of LEDs | |
|  - BYTE | Value | 
|  - VOID | Return | 
Start
|   | Start | 
| Startup routine required by the hardware device. Automatically clears the display after initialising. | |
|  - VOID | Return | 








