Difference between revisions of "Component: Combo (BL0114) (E-blocks 2)"
From Flowcode Help
Jump to navigationJump to search| (12 intermediate revisions by 2 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 | ||
| |} | |} | ||
| + | ==Combo component== | ||
| + | A component to drive the BL0114 Combo board including LEDs, Switches, LCD, 7-Segs  and analogue inputs.  | ||
| − | == | + | ==Detailed description== | 
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | '' | + | ''No detailed description exists yet for this component'' | 
| − | + | ==Examples== | |
| − | + | Creates a standard stopwatch with 0.01 second accuracy complete with start/stop/restart functionality.<br> | |
| − | + | Displays using the 7-segment displays on the BL0114 Combo<br> | |
| + | Combo connected to Ports A and B<br> | ||
| + | A4 Start / Stop - A5 Reset<br> | ||
| + | {{Fcfile|BL0114_Combo_7-seg_Timer_PIC.fcfx|Combo 7-Seg Timer}}<br> | ||
| − | + | ==Macro reference== | |
| − | + | ===IO_GetPort=== | |
| + | {| 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;" | '''IO_GetPort''' | ||
| + | |- | ||
| + | | colspan="2" | Reads the state of a single port  | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | Bank | ||
| + | |- | ||
| + | | 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="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| − | |||
| − | :[[ | + | ===IO_GetSwitchState=== | 
| − | :: | + | {| 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;" | '''IO_GetSwitchState''' | ||
| + | |- | ||
| + | | colspan="2" | Reads the state of a single switch Returns: 0 = Switch not pressed, 1 = Switch pressed  | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | Bank | ||
| + | |- | ||
| + | | colspan="2" | 0 = Top Bank of Switches, 1 = Bottom Bank of Switches  | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | Switch | ||
| + | |- | ||
| + | | colspan="2" | 0 = SW0, 7 = SW7  | ||
| + | |- | ||
| + | | 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'' | ||
| + | |} | ||
| − | |||
| − | |||
| + | ===IO_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;" | '''IO_ReadAnalogAsByte''' | ||
| + | |- | ||
| + | | colspan="2" | Reads one of the analogue components as an byte value  | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | Channel | ||
| + | |- | ||
| + | | colspan="2" | 0 = Light Sensor, 1 = Potentiometer  | ||
| + | |- | ||
| + | | 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'' | ||
| + | |} | ||
| − | |||
| − | :'' | + | ===IO_ReadAnalogAsInt=== | 
| + | {| 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;" | '''IO_ReadAnalogAsInt''' | ||
| + | |- | ||
| + | | colspan="2" | Reads one of the analogue components as an Integer value  | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | Channel | ||
| + | |- | ||
| + | | colspan="2" | 0 = Light Sensor, 1 = Potentiometer  | ||
| + | |- | ||
| + | | 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'' | ||
| + | |} | ||
| − | === | + | ===IO_SetLEDState=== | 
| − | + | {| 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;" | '''IO_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 | ||
| + | |- | ||
| + | | colspan="2" | 0 = LED0, 7 = LED7  | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | State | ||
| + | |- | ||
| + | | colspan="2" | 0 = Off, 1 = On  | ||
| + | |- | ||
| + | | 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'' | ||
| + | |} | ||
| − | |||
| − | ''' | + | ===IO_SetPort=== | 
| + | {| 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;" | '''IO_SetPort''' | ||
| + | |- | ||
| + | | colspan="2" | Sets the state of a single port  | ||
| + | |- | ||
| + | |- | ||
| + | | 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%" | Value | ||
| + | |- | ||
| + | | 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'' | ||
| + | |} | ||
| − | |||
| − | |||
| − | :[[ | + | ===LCD_Clear=== | 
| − | :: | + | {| 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;" | '''LCD_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'' | ||
| + | |} | ||
| − | |||
| − | |||
| + | ===LCD_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;" | '''LCD_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'' | ||
| + | |} | ||
| − | |||
| − | :'' | + | ===LCD_Command=== | 
| + | {| 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;" | '''LCD_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.  | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | instruction | ||
| + | |- | ||
| + | | colspan="2" | Send a defined command to the LCD Screen. See datasheet for supported commands.  | ||
| + | |- | ||
| + | | 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'' | ||
| + | |} | ||
| − | === | + | ===LCD_Cursor=== | 
| − | + | {| 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;" | '''LCD_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'' | ||
| + | |} | ||
| − | |||
| − | :[[ | + | ===LCD_PrintAscii=== | 
| − | + | {| 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;" | '''LCD_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'' | ||
| + | |} | ||
| − | |||
| − | |||
| + | ===LCD_PrintFloat=== | ||
| + | {| 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;" | '''LCD_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'' | ||
| + | |} | ||
| − | |||
| − | :'' | + | ===LCD_PrintFormattedNumber=== | 
| + | {| 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;" | '''LCD_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'' | ||
| + | |} | ||
| − | === | + | ===LCD_PrintNumber=== | 
| − | + | {| 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;" | '''LCD_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'' | ||
| + | |} | ||
| − | |||
| − | :[[ | + | ===LCD_PrintString=== | 
| − | :: | + | {| 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;" | '''LCD_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'' | ||
| + | |} | ||
| − | |||
| + | ===LCD_RAMWrite=== | ||
| + | {| 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;" | '''LCD_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'' | ||
| + | |} | ||
| − | |||
| − | :'' | + | ===LCD_RawSend=== | 
| + | {| 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;" | '''LCD_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'' | ||
| + | |} | ||
| − | === | + | ===LCD_RemapCharacter=== | 
| − | + | {| 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;" | '''LCD_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'' | ||
| + | |} | ||
| − | |||
| − | :[[ | + | ===LCD_ScrollDisplay=== | 
| − | ::0 =  | + | {| 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;" | '''LCD_ScrollDisplay''' | ||
| + | |- | ||
| + | | 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="90%" | Position | ||
| + | |- | ||
| + | | colspan="2" | Holds the number of positions to shift the display  | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| + | | width="90%" | Direction | ||
| + | |- | ||
| + | | colspan="2" | 0 = left, 1 = right  | ||
| + | |- | ||
| + | | 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'' | ||
| + | |} | ||
| − | |||
| − | |||
| − | :[[ | + | ===LCD_Start=== | 
| − | :: | + | {| 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;" | '''LCD_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'' | ||
| + | |} | ||
| − | ''' | + | ===Seg_ShowDigit=== | 
| + | {| 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;" | '''Seg_ShowDigit''' | ||
| + | |- | ||
| + | | 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="90%" | DecimalPoint | ||
| + | |- | ||
| + | | colspan="2" | Decides if the decimal point is lit  | ||
| + | |- | ||
| + | | 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'' | ||
| + | |} | ||
| − | |||
| − | + | ===Seg_ShowSegments=== | |
| − | === | + | {| 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;" | '''Seg_ShowSegments''' | |
| − | + | |- | |
| − | + | | 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="90%" | Segments | |
| − | + | |- | |
| − | + | | 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="90%" style="border-top: 2px solid #000;" | ''Return'' | |
| − | + | |} | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | == | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | : | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | = | ||
| − | |||
| − | |||
| − | '' | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | : | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | = | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | : | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | == | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | == | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | = | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| ==Property reference== | ==Property reference== | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | 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" | [[File:Fc9-type-16-icon.png]] | ||
| + | | width="90%" | Connection Type | ||
| + | |- | ||
| + | | colspan="2" |   | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
| + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Bank 0 Connections | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-type-19-icon.png]] | ||
| + | | width="90%" | Bank 0 | ||
| + | |- | ||
| + | | colspan="2" |   | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
| + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Bank 1 Connections | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-type-19-icon.png]] | ||
| + | | width="90%" | Bank 1 | ||
| + | |- | ||
| + | | colspan="2" |   | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
| + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Analog Connections | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-type-6-icon.png]] | ||
| + | | width="90%" | Light Sensor | ||
| + | |- | ||
| + | | colspan="2" | Light Sensor ADC channel Connected to Bank 0 pin 0 which is usually analog pin AN0.  | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-type-6-icon.png]] | ||
| + | | width="90%" | Potentiometer | ||
| + | |- | ||
| + | | colspan="2" | Potentiometer ADC channel Connected to Bank 0 pin 1 which is usually analog pin AN1.  | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
| + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
| + | | width="90%" | Analog Scope Traces | ||
| + | |- | ||
| + | | colspan="2" | Controls if traces are automatically added to the data recorder window for the analogue signals on the combo board.  | ||
| + | |} | ||
| − | + | ==Component Source Code== | |
| − | + | Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_EBlocks2_COMBO_BL0114.fcfx FC_Comp_Source_EBlocks2_COMBO_BL0114.fcfx] | |
| − | + | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_EBlocks2_COMBO_BL0114.fcfx FC_Comp_Source_EBlocks2_COMBO_BL0114.fcfx] | |
Latest revision as of 08:58, 9 June 2025
| Author | Matrix TSL | 
| Version | 1.0 | 
| Category | E-blocks 2 | 
Contents
- 1 Combo component
- 2 Detailed description
- 3 Examples
- 4 Macro reference
- 4.1 IO_GetPort
- 4.2 IO_GetSwitchState
- 4.3 IO_ReadAnalogAsByte
- 4.4 IO_ReadAnalogAsInt
- 4.5 IO_SetLEDState
- 4.6 IO_SetPort
- 4.7 LCD_Clear
- 4.8 LCD_ClearLine
- 4.9 LCD_Command
- 4.10 LCD_Cursor
- 4.11 LCD_PrintAscii
- 4.12 LCD_PrintFloat
- 4.13 LCD_PrintFormattedNumber
- 4.14 LCD_PrintNumber
- 4.15 LCD_PrintString
- 4.16 LCD_RAMWrite
- 4.17 LCD_RawSend
- 4.18 LCD_RemapCharacter
- 4.19 LCD_ScrollDisplay
- 4.20 LCD_Start
- 4.21 Seg_ShowDigit
- 4.22 Seg_ShowSegments
 
- 5 Property reference
- 6 Component Source Code
Combo component
A component to drive the BL0114 Combo board including LEDs, Switches, LCD, 7-Segs and analogue inputs.
Detailed description
No detailed description exists yet for this component
Examples
Creates a standard stopwatch with 0.01 second accuracy complete with start/stop/restart functionality.
Displays using the 7-segment displays on the BL0114 Combo
Combo connected to Ports A and B
A4 Start / Stop - A5 Reset
 Combo 7-Seg Timer
Combo 7-Seg Timer
Macro reference
IO_GetPort
|   | IO_GetPort | 
| Reads the state of a single port | |
|  - BYTE | Bank | 
| 0 = Top Bank of Switches, 1 = Bottom Bank of Switches | |
|  - BYTE | Return | 
IO_GetSwitchState
IO_ReadAnalogAsByte
|   | IO_ReadAnalogAsByte | 
| Reads one of the analogue components as an byte value | |
|  - BYTE | Channel | 
| 0 = Light Sensor, 1 = Potentiometer | |
|  - BYTE | Return | 
IO_ReadAnalogAsInt
|   | IO_ReadAnalogAsInt | 
| Reads one of the analogue components as an Integer value | |
|  - BYTE | Channel | 
| 0 = Light Sensor, 1 = Potentiometer | |
|  - INT | Return | 
IO_SetLEDState
|   | IO_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 | 
IO_SetPort
|   | IO_SetPort | 
| Sets the state of a single port | |
|  - BYTE | Bank | 
| 0 = Top Bank of LEDs, 1 = Bottom Bank of LEDs | |
|  - BYTE | Value | 
|  - VOID | Return | 
LCD_Clear
|   | LCD_Clear | 
| Clears the entire contents of the display. | |
|  - VOID | Return | 
LCD_ClearLine
LCD_Command
LCD_Cursor
LCD_PrintAscii
|   | LCD_PrintAscii | 
| Takes the ascii value for a character and prints the character | |
|  - BYTE | character | 
| Holds an ascii value. | |
|  - VOID | Return | 
LCD_PrintFloat
LCD_PrintFormattedNumber
LCD_PrintNumber
|   | LCD_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 | 
LCD_PrintString
|   | LCD_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 | 
LCD_RAMWrite
LCD_RawSend
|   | LCD_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 | 
LCD_RemapCharacter
LCD_ScrollDisplay
LCD_Start
|   | LCD_Start | 
| Startup routine required by the hardware device. Automatically clears the display after initialising. | |
|  - VOID | Return | 
Seg_ShowDigit
Seg_ShowSegments
Property reference
Component Source Code
Please click here to download the component source project: FC_Comp_Source_EBlocks2_COMBO_BL0114.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_EBlocks2_COMBO_BL0114.fcfx








