Jump to content

Component: GLCD (EB076) (EB076) (E-blocks 1): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(10 intermediate revisions by 2 users not shown)
Line 15: Line 15:
Graphical display component designed to work with the Picaso range of displays from 4D Systems. Also available in the form of the EB076 GLCD Touchscreen E-block. Component based around the uLCD-32PT display.
Graphical display component designed to work with the Picaso range of displays from 4D Systems. Also available in the form of the EB076 GLCD Touchscreen E-block. Component based around the uLCD-32PT display.


==Component Source Code==
==Version information==


Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_temp/GLCD_4D_EB076.fcfx FC_Comp_Source_temp/GLCD_4D_EB076.fcfx]
Library Version, Component Version, Date, Author, Info
 
11, 1.0, 22-07-24, BR, Added DrawArc and DrawRoundedRectangle functions
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_temp/GLCD_4D_EB076.fcfx FC_Comp_Source_temp/GLCD_4D_EB076.fcfx]


==Detailed description==
==Detailed description==
Line 73: Line 72:


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




Line 86: Line 91:


===BPlot===
===BPlot===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''BPlot'''
| width="90%" class="mtx-class-macrohead" | '''BPlot'''
|-
|-
| colspan="2" | Sets a pixel with the current background colour at pixel location X, Y.&nbsp;
| colspan="2" | Sets a pixel with the current background colour at pixel location X, Y.&nbsp;
Line 110: Line 115:


===ClearDisplay===
===ClearDisplay===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''ClearDisplay'''
| width="90%" class="mtx-class-macrohead" | '''ClearDisplay'''
|-
|-
| colspan="2" | This macro clears the display of any previous output by overwriting the entire display with the background colour.&nbsp;
| colspan="2" | This macro clears the display of any previous output by overwriting the entire display with the background colour.&nbsp;
Line 124: Line 129:


===DisplayControl===
===DisplayControl===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''DisplayControl'''
| width="90%" class="mtx-class-macrohead" | '''DisplayControl'''
|-
|-
| colspan="2" | Controls the operation, contrast and backlight on the display&nbsp;
| colspan="2" | Controls the operation, contrast and backlight on the display&nbsp;
Line 146: Line 151:
|-
|-
| colspan="2" | Contrast Range 0 - 15&nbsp;
| colspan="2" | Contrast Range 0 - 15&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''
|}
===DrawBezier===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''DrawBezier'''
|-
| colspan="2" | Draws a quadratic Bezier curve with the current foreground colour from pixel location X0, Y0 to pixel location X2, Y2 using control point CX, CY.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X0
|-
| colspan="2" | Start X coordinate&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y0
|-
| colspan="2" | Start Y coordinate&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | CX
|-
| colspan="2" | Control point X coordinate&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | CY
|-
| colspan="2" | Control point Y coordinate&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X2
|-
| colspan="2" | End X coordinate&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y2
|-
| colspan="2" | End Y coordinate&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Resolution
|-
| colspan="2" | Number of segments to approximate the curve, 0 chooses an automatic value based on curve size.&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 153: Line 207:


===DrawCircle===
===DrawCircle===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''DrawCircle'''
| width="90%" class="mtx-class-macrohead" | '''DrawCircle'''
|-
|-
| colspan="2" | Draws a circle object on the display with the center of the circle at the location X,Y&nbsp;
| colspan="2" | Draws a circle object on the display with the center of the circle at the location X,Y&nbsp;
Line 192: Line 246:


===DrawEllipse===
===DrawEllipse===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''DrawEllipse'''
| width="90%" class="mtx-class-macrohead" | '''DrawEllipse'''
|-
|-
| colspan="2" | Draws an ellipse object on the display with the center of the ellipse at the location X,Y&nbsp;
| colspan="2" | Draws an ellipse object on the display with the center of the ellipse at the location X,Y&nbsp;
Line 236: Line 290:


===DrawLine===
===DrawLine===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''DrawLine'''
| width="90%" class="mtx-class-macrohead" | '''DrawLine'''
|-
|-
| colspan="2" | Draws a line with the current foreground colour from pixel location X1, Y1 to pixel location X2, Y2.&nbsp;
| colspan="2" | Draws a line with the current foreground colour from pixel location X1, Y1 to pixel location X2, Y2.&nbsp;
Line 270: Line 324:


===DrawRectangle===
===DrawRectangle===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''DrawRectangle'''
| width="90%" class="mtx-class-macrohead" | '''DrawRectangle'''
|-
|-
| colspan="2" | Draws a rectangle with the current foreground colour from pixel loaction X1, Y1 to pixel location X2, Y2&nbsp;
| colspan="2" | Draws a rectangle with the current foreground colour from pixel loaction X1, Y1 to pixel location X2, Y2&nbsp;
Line 314: Line 368:


===FastPlot===
===FastPlot===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''FastPlot'''
| width="90%" class="mtx-class-macrohead" | '''FastPlot'''
|-
|-
| colspan="2" | Sets a pixel with the current foreground colour at current pixel location. Not compatible with orientations other than 0.&nbsp;
| colspan="2" | Sets a pixel with the current foreground colour at current pixel location. Not compatible with orientations other than 0.&nbsp;
Line 328: Line 382:


===G4D_DisableTouchscreenPicaso===
===G4D_DisableTouchscreenPicaso===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_DisableTouchscreenPicaso'''
| width="90%" class="mtx-class-macrohead" | '''G4D_DisableTouchscreenPicaso'''
|-
|-
| colspan="2" | Disables the touchscreen interface if available.&nbsp;
| colspan="2" | Disables the touchscreen interface if available.&nbsp;
Line 342: Line 396:


===G4D_DisplayImageFromCard===
===G4D_DisplayImageFromCard===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_DisplayImageFromCard'''
| width="90%" class="mtx-class-macrohead" | '''G4D_DisplayImageFromCard'''
|-
|-
| colspan="2" | Attempts to print an image from the micro SD card at the specified address location on the card. The image is printed at location starting from X, Y and ranging to Width, Height. &nbsp;
| colspan="2" | Attempts to print an image from the micro SD card at the specified address location on the card. The image is printed at location starting from X, Y and ranging to Width, Height. &nbsp;
Line 396: Line 450:


===G4D_DisplayImageFromFilePicaso===
===G4D_DisplayImageFromFilePicaso===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_DisplayImageFromFilePicaso'''
| width="90%" class="mtx-class-macrohead" | '''G4D_DisplayImageFromFilePicaso'''
|-
|-
| colspan="2" | Attempts to print an image from the micro SD card using the specified filename on the card. The image is printed at location starting from X, Y. PosH and PosL specify the sector address of the previously stored image icon. &nbsp;
| colspan="2" | Attempts to print an image from the micro SD card using the specified filename on the card. The image is printed at location starting from X, Y. PosH and PosL specify the sector address of the previously stored image icon. &nbsp;
Line 435: Line 489:


===G4D_DisplayVideoFromCard===
===G4D_DisplayVideoFromCard===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_DisplayVideoFromCard'''
| width="90%" class="mtx-class-macrohead" | '''G4D_DisplayVideoFromCard'''
|-
|-
| colspan="2" | Attempts to display a sequence of images from the micro SD card at the specified address location on the card. The images are printed at location starting from X, Y and ranging to Width, Height. &nbsp;
| colspan="2" | Attempts to display a sequence of images from the micro SD card at the specified address location on the card. The images are printed at location starting from X, Y and ranging to Width, Height. &nbsp;
Line 499: Line 553:


===G4D_DumpScreenToCard===
===G4D_DumpScreenToCard===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_DumpScreenToCard'''
| width="90%" class="mtx-class-macrohead" | '''G4D_DumpScreenToCard'''
|-
|-
| colspan="2" | Copies a section of the display to the micro SD card starting from X, Y and ranging to Width, Height. The address parameters assign where on the card to store the data.  &nbsp;
| colspan="2" | Copies a section of the display to the micro SD card starting from X, Y and ranging to Width, Height. The address parameters assign where on the card to store the data.  &nbsp;
Line 548: Line 602:


===G4D_DumpScreenToFilePicaso===
===G4D_DumpScreenToFilePicaso===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_DumpScreenToFilePicaso'''
| width="90%" class="mtx-class-macrohead" | '''G4D_DumpScreenToFilePicaso'''
|-
|-
| colspan="2" | Copies a section of the display to the micro SD card starting from X, Y and ranging to Width, Height. &nbsp;
| colspan="2" | Copies a section of the display to the micro SD card starting from X, Y and ranging to Width, Height. &nbsp;
Line 587: Line 641:


===G4D_EnableTouchscreenPicaso===
===G4D_EnableTouchscreenPicaso===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_EnableTouchscreenPicaso'''
| width="90%" class="mtx-class-macrohead" | '''G4D_EnableTouchscreenPicaso'''
|-
|-
| colspan="2" | Enables the touchscreen interface if available.&nbsp;
| colspan="2" | Enables the touchscreen interface if available.&nbsp;
Line 601: Line 655:


===G4D_GetTouchCoordinatesPicaso===
===G4D_GetTouchCoordinatesPicaso===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_GetTouchCoordinatesPicaso'''
| width="90%" class="mtx-class-macrohead" | '''G4D_GetTouchCoordinatesPicaso'''
|-
|-
| colspan="2" | Reads the value of the last touchscreen input from the display. Returns a 0 if no new touch is detected. Returns a 1 if a press is detected. Returns a 2 if a release is detected. Returns a 3 if a moving drag is detected.&nbsp;
| colspan="2" | Reads the value of the last touchscreen input from the display. Returns a 0 if no new touch is detected. Returns a 1 if a press is detected. Returns a 2 if a release is detected. Returns a 3 if a moving drag is detected.&nbsp;
Line 615: Line 669:


===G4D_InitialiseCard===
===G4D_InitialiseCard===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_InitialiseCard'''
| width="90%" class="mtx-class-macrohead" | '''G4D_InitialiseCard'''
|-
|-
| colspan="2" | Initialises the micro SD card inserted into the module is available. Returns 0 for succesful initialisation or 255 for a detected failure.&nbsp;
| colspan="2" | Initialises the micro SD card inserted into the module is available. Returns 0 for succesful initialisation or 255 for a detected failure.&nbsp;
Line 629: Line 683:


===G4D_PlayAudioFromFilePicaso===
===G4D_PlayAudioFromFilePicaso===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_PlayAudioFromFilePicaso'''
| width="90%" class="mtx-class-macrohead" | '''G4D_PlayAudioFromFilePicaso'''
|-
|-
| colspan="2" | Attempts to stream an audio wav file from the micro SD card using the specified filename. &nbsp;
| colspan="2" | Attempts to stream an audio wav file from the micro SD card using the specified filename. &nbsp;
Line 653: Line 707:


===G4D_ReadTouchCoordinatesPicaso===
===G4D_ReadTouchCoordinatesPicaso===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_ReadTouchCoordinatesPicaso'''
| width="90%" class="mtx-class-macrohead" | '''G4D_ReadTouchCoordinatesPicaso'''
|-
|-
| colspan="2" | Returns the coordinates of the last touch event. Axis = 0 or 'x' or 'X' - Returns the X coordinate. Axis = 1 or 'y' or 'Y' - Returns the Y coordinate.&nbsp;
| colspan="2" | Returns the coordinates of the last touch event. Axis = 0 or 'x' or 'X' - Returns the X coordinate. Axis = 1 or 'y' or 'Y' - Returns the Y coordinate.&nbsp;
Line 672: Line 726:


===G4D_SetTouchRegionPicaso===
===G4D_SetTouchRegionPicaso===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_SetTouchRegionPicaso'''
| width="90%" class="mtx-class-macrohead" | '''G4D_SetTouchRegionPicaso'''
|-
|-
| colspan="2" | Specifies the area of the screen which will respond to touchscreen inputs.&nbsp;
| colspan="2" | Specifies the area of the screen which will respond to touchscreen inputs.&nbsp;
Line 706: Line 760:


===G4D_SetVGADisplaySizePicaso===
===G4D_SetVGADisplaySizePicaso===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_SetVGADisplaySizePicaso'''
| width="90%" class="mtx-class-macrohead" | '''G4D_SetVGADisplaySizePicaso'''
|-
|-
| colspan="2" | Specifies the VGA display size in pixels. Size = 0 - 320 x 240 Resolution. Size = 1 - 640 x 480 Resolution. Size = 2 - 800 x 480 Resolution. Size = 3 - Custom Resolution&nbsp;
| colspan="2" | Specifies the VGA display size in pixels. Size = 0 - 320 x 240 Resolution. Size = 1 - 640 x 480 Resolution. Size = 2 - 800 x 480 Resolution. Size = 3 - Custom Resolution&nbsp;
Line 725: Line 779:


===G4D_SetVolumePicaso===
===G4D_SetVolumePicaso===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''G4D_SetVolumePicaso'''
| width="90%" class="mtx-class-macrohead" | '''G4D_SetVolumePicaso'''
|-
|-
| colspan="2" | Sets the playback volume.&nbsp;
| colspan="2" | Sets the playback volume.&nbsp;
Line 744: Line 798:


===Initialise===
===Initialise===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''Initialise'''
| width="90%" class="mtx-class-macrohead" | '''Initialise'''
|-
|-
| colspan="2" | The Init macro must be called once to initialise the Graphical LCD display before any other Graphical LCD component macros are called.&nbsp;
| colspan="2" | The Init macro must be called once to initialise the Graphical LCD display before any other Graphical LCD component macros are called.&nbsp;
Line 758: Line 812:


===Plot===
===Plot===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''Plot'''
| width="90%" class="mtx-class-macrohead" | '''Plot'''
|-
|-
| colspan="2" | Sets a pixel with the current foreground colour at pixel location X, Y.&nbsp;
| colspan="2" | Sets a pixel with the current foreground colour at pixel location X, Y.&nbsp;
Line 782: Line 836:


===Print===
===Print===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''Print'''
| width="90%" class="mtx-class-macrohead" | '''Print'''
|-
|-
| colspan="2" | This macro prints a string of characters to the Graphical LCD.&nbsp;
| colspan="2" | This macro prints a string of characters to the Graphical LCD.&nbsp;
Line 821: Line 875:


===PrintNumber===
===PrintNumber===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''PrintNumber'''
| width="90%" class="mtx-class-macrohead" | '''PrintNumber'''
|-
|-
| colspan="2" | This macro prints a decimal number to the Graphical LCD.&nbsp;
| colspan="2" | This macro prints a decimal number to the Graphical LCD.&nbsp;
Line 860: Line 914:


===SetBackgroundColour===
===SetBackgroundColour===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''SetBackgroundColour'''
| width="90%" class="mtx-class-macrohead" | '''SetBackgroundColour'''
|-
|-
| colspan="2" | Specifies the colour of the background by creating a mixture of red, green and blue. &nbsp;
| colspan="2" | Specifies the colour of the background by creating a mixture of red, green and blue. &nbsp;
Line 889: Line 943:


===SetDisplayOrientation===
===SetDisplayOrientation===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''SetDisplayOrientation'''
| width="90%" class="mtx-class-macrohead" | '''SetDisplayOrientation'''
|-
|-
| colspan="2" | Controls the way data is printed out on the display allowing multiple different viewing orientations. Default is 0.&nbsp;
| colspan="2" | Controls the way data is printed out on the display allowing multiple different viewing orientations. Default is 0.&nbsp;
Line 908: Line 962:


===SetForegroundColour===
===SetForegroundColour===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''SetForegroundColour'''
| width="90%" class="mtx-class-macrohead" | '''SetForegroundColour'''
|-
|-
| colspan="2" | Specifies the colour of the foreground by creating a mixture of red, green and blue.&nbsp;
| colspan="2" | Specifies the colour of the foreground by creating a mixture of red, green and blue.&nbsp;
Line 937: Line 991:


===Window===
===Window===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| 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;" | '''Window'''
| width="90%" class="mtx-class-macrohead" | '''Window'''
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
Line 972: Line 1,026:
==Property reference==
==Property reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
| width="90%" class="mtx-class-macrohead" | '''Properties'''  
|-
|-
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Dimensions
| width="90%" class="mtx-class-propfolder" | Dimensions
|-
|-
|-
|-
Line 992: Line 1,046:
| colspan="2" | Width of gLCD canvas measured in pixels. &nbsp;
| colspan="2" | Width of gLCD canvas measured in pixels. &nbsp;
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Colour
| width="90%" class="mtx-class-propfolder" | Colour
|-
|-
|-
|-
Line 1,011: Line 1,065:
| colspan="2" | Specifies the initial background color. &nbsp;
| colspan="2" | Specifies the initial background color. &nbsp;
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Bit Depth
| width="90%" class="mtx-class-propfolder" | Bit Depth
|-
|-
|-
|-
Line 1,035: Line 1,089:
| colspan="2" | Specifies the blue bit depth for the display. &nbsp;
| colspan="2" | Specifies the blue bit depth for the display. &nbsp;
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Connections
| width="90%" class="mtx-class-propfolder" | Connections
|-
|-
|-
|-
Line 1,074: Line 1,128:
| colspan="2" | Determines if the baud rate is automaticaly switched from 9600 baud on initialise to 57600 baud. Only available in hardware mode.&nbsp;
| colspan="2" | Determines if the baud rate is automaticaly switched from 9600 baud on initialise to 57600 baud. Only available in hardware mode.&nbsp;
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation
| width="90%" class="mtx-class-propfolder" | Simulation
|-
|-
|-
|-
Line 1,118: Line 1,172:
| colspan="2" | Chooses which method to use when drawing to the gLCD component The bitmap is the more common mode but may run slowly on some machines. The point cloud should run faster but may use more memory.&nbsp;
| colspan="2" | Chooses which method to use when drawing to the gLCD component The bitmap is the more common mode but may run slowly on some machines. The point cloud should run faster but may use more memory.&nbsp;
|}
|}
==Component Source Code==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_GLCD_4D_EB076.fcfx FC_Comp_Source_GLCD_4D_EB076.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_GLCD_4D_EB076.fcfx FC_Comp_Source_GLCD_4D_EB076.fcfx]

Latest revision as of 14:36, 13 July 2026

Author Matrix Ltd
Version 2.0
Category E-blocks 1


GLCD (EB076) component

Graphical display component designed to work with the Picaso range of displays from 4D Systems. Also available in the form of the EB076 GLCD Touchscreen E-block. Component based around the uLCD-32PT display.

Version information

Library Version, Component Version, Date, Author, Info
11, 1.0, 22-07-24, BR, Added DrawArc and DrawRoundedRectangle functions

Detailed description

No detailed description exists yet for this component

Examples

No additional examples









Macro reference

BPlot

BPlot
Sets a pixel with the current background colour at pixel location X, Y. 
- UINT X1
 
- UINT Y1
 
- VOID Return


ClearDisplay

ClearDisplay
This macro clears the display of any previous output by overwriting the entire display with the background colour. 
- VOID Return


DisplayControl

DisplayControl
Controls the operation, contrast and backlight on the display 
- BYTE Backlight
0=Backlight Off, 1=Backlight On (default) 
- BYTE Display
0=Display off, 1=Display on (default) 
- BYTE Contrast
Contrast Range 0 - 15 
- VOID Return


DrawBezier

DrawBezier
Draws a quadratic Bezier curve with the current foreground colour from pixel location X0, Y0 to pixel location X2, Y2 using control point CX, CY. 
- UINT X0
Start X coordinate 
- UINT Y0
Start Y coordinate 
- UINT CX
Control point X coordinate 
- UINT CY
Control point Y coordinate 
- UINT X2
End X coordinate 
- UINT Y2
End Y coordinate 
- UINT Resolution
Number of segments to approximate the curve, 0 chooses an automatic value based on curve size. 
- VOID Return


DrawCircle

DrawCircle
Draws a circle object on the display with the center of the circle at the location X,Y 
- UINT X
X Coordinate for the center of the circle 
- UINT Y
Y coordinate for the center of the circle 
- UINT Radius
Radius of the circle specified in pixels 
- BYTE Transparent
0=Fill inside circle using background colour / 1=Draw outer circle only 
- BYTE Solid
0=Use Transparent Setting / 1=Fill with foreground colour 
- VOID Return


DrawEllipse

DrawEllipse
Draws an ellipse object on the display with the center of the ellipse at the location X,Y 
- UINT X
X Coordinate for the center of the circle 
- UINT Y
Y coordinate for the center of the circle 
- UINT XRadius
Radius of the circle on the X axis specified in pixels 
- UINT YRadius
Radius of the circle on the Y axis specified in pixels 
- BYTE Transparent
0=Fill inside circle using background colour / 1=Draw outer circle only 
- BYTE Solid
0=Use Transparent Setting / 1=Fill with foreground colour 
- VOID Return


DrawLine

DrawLine
Draws a line with the current foreground colour from pixel location X1, Y1 to pixel location X2, Y2. 
- UINT X1
 
- UINT Y1
 
- UINT X2
 
- UINT Y2
 
- VOID Return


DrawRectangle

DrawRectangle
Draws a rectangle with the current foreground colour from pixel loaction X1, Y1 to pixel location X2, Y2 
- UINT X1
 
- UINT Y1
 
- UINT X2
 
- UINT Y2
 
- BYTE Transparent
Chooses the transparency of the box - 0 = Box contains background colour, 1 = Box contains previous pixel data. 
- BYTE Solid
Chooses to fill the box with colour - 0 = Box contains transparency data, 1 = Box contains foreground colour. 
- VOID Return


FastPlot

FastPlot
Sets a pixel with the current foreground colour at current pixel location. Not compatible with orientations other than 0. 
- VOID Return


G4D_DisableTouchscreenPicaso

G4D_DisableTouchscreenPicaso
Disables the touchscreen interface if available. 
- BYTE Return


G4D_DisplayImageFromCard

G4D_DisplayImageFromCard
Attempts to print an image from the micro SD card at the specified address location on the card. The image is printed at location starting from X, Y and ranging to Width, Height.  
- UINT X
 
- UINT Y
 
- UINT Width
 
- UINT Height
 
- BYTE ColourMode
Specifies the colour depth setting - 0 = 8-bit colour, 1 = 16-bit colour. 
- BYTE AddH
 
- BYTE AddM
 
- BYTE AddL
 
- BYTE Return


G4D_DisplayImageFromFilePicaso

G4D_DisplayImageFromFilePicaso
Attempts to print an image from the micro SD card using the specified filename on the card. The image is printed at location starting from X, Y. PosH and PosL specify the sector address of the previously stored image icon.  
- UINT X
 
- UINT Y
 
- STRING Filename
 
- UINT PosH
 
- UINT PosL
 
- BYTE Return


G4D_DisplayVideoFromCard

G4D_DisplayVideoFromCard
Attempts to display a sequence of images from the micro SD card at the specified address location on the card. The images are printed at location starting from X, Y and ranging to Width, Height.  
- UINT X
 
- UINT Y
 
- UINT Width
 
- UINT Height
 
- BYTE ColourMode
Specifes the colour depth setting - 0 = 8-bit colour, 1 = 16-bit colour. 
- BYTE Delay
Specifies the number of milliseconds to wait in between displaying each image. 
- UINT Frames
Specifies the number of frames to display. 
- BYTE AddH
 
- BYTE AddM
 
- BYTE AddL
 
- BYTE Return


G4D_DumpScreenToCard

G4D_DumpScreenToCard
Copies a section of the display to the micro SD card starting from X, Y and ranging to Width, Height. The address parameters assign where on the card to store the data.  
- UINT X
 
- UINT Y
 
- UINT Width
 
- UINT Height
 
- BYTE AddH
 
- BYTE AddM
 
- BYTE AddL
 
- BYTE Return


G4D_DumpScreenToFilePicaso

G4D_DumpScreenToFilePicaso
Copies a section of the display to the micro SD card starting from X, Y and ranging to Width, Height.  
- UINT X
 
- UINT Y
 
- UINT Width
 
- UINT Height
 
- STRING Filename
Assigns the name of the file on the card to store the data. 
- BYTE Return


G4D_EnableTouchscreenPicaso

G4D_EnableTouchscreenPicaso
Enables the touchscreen interface if available. 
- BYTE Return


G4D_GetTouchCoordinatesPicaso

G4D_GetTouchCoordinatesPicaso
Reads the value of the last touchscreen input from the display. Returns a 0 if no new touch is detected. Returns a 1 if a press is detected. Returns a 2 if a release is detected. Returns a 3 if a moving drag is detected. 
- BYTE Return


G4D_InitialiseCard

G4D_InitialiseCard
Initialises the micro SD card inserted into the module is available. Returns 0 for succesful initialisation or 255 for a detected failure. 
- BYTE Return


G4D_PlayAudioFromFilePicaso

G4D_PlayAudioFromFilePicaso
Attempts to stream an audio wav file from the micro SD card using the specified filename.  
- BYTE Play_Option
Play_Option = 0 - Return when playing complete / 1 - Return immediatley / 2 - Stop Playback / 3 - Pause Playback / 4 - Resume Playback / 5 - Loop Playing until stopped 
- STRING Filename
 
- BYTE Return


G4D_ReadTouchCoordinatesPicaso

G4D_ReadTouchCoordinatesPicaso
Returns the coordinates of the last touch event. Axis = 0 or 'x' or 'X' - Returns the X coordinate. Axis = 1 or 'y' or 'Y' - Returns the Y coordinate. 
- BYTE Axis
 
- UINT Return


G4D_SetTouchRegionPicaso

G4D_SetTouchRegionPicaso
Specifies the area of the screen which will respond to touchscreen inputs. 
- UINT X1
 
- UINT Y1
 
- UINT X2
 
- UINT Y2
 
- BYTE Return


G4D_SetVGADisplaySizePicaso

G4D_SetVGADisplaySizePicaso
Specifies the VGA display size in pixels. Size = 0 - 320 x 240 Resolution. Size = 1 - 640 x 480 Resolution. Size = 2 - 800 x 480 Resolution. Size = 3 - Custom Resolution 
- BYTE Size
 
- BYTE Return


G4D_SetVolumePicaso

G4D_SetVolumePicaso
Sets the playback volume. 
- BYTE Volume
Volume = 0 - Mute Enabled / 1 - Volume Down 8 / 3 - Volume Down 1 / 253 - Volume Up 1 / 254 - Volume Up 8 / 255 - Mute Disabled / 8 - Minimum Volume Level / 127 - Maximum Volume Level 
- BYTE Return


Initialise

Initialise
The Init macro must be called once to initialise the Graphical LCD display before any other Graphical LCD component macros are called. 
- VOID Return


Plot

Plot
Sets a pixel with the current foreground colour at pixel location X, Y. 
- UINT X1
 
- UINT Y1
 
- VOID Return


Print

Print
This macro prints a string of characters to the Graphical LCD. 
- STRING Str
String of characters to send to the display. 
- UINT X1
X pixel coordinate to set the output string position. 
- UINT Y1
Y pixel coordinate to set the output string position. 
- BYTE Font
Size of the font - 0 = Normal, 1 = Double Width, 2 = Double Width and Height, 3 = Double Height 
- BYTE Transparent
Specifies if the background of the text is drawn - 0 = Background colour is drawn, 1 = Background colour not drawn. 
- VOID Return


PrintNumber

PrintNumber
This macro prints a decimal number to the Graphical LCD. 
- INT Number
Byte or Integer number to send to the display. 
- UINT X
X pixel coordinate to set the output string position. 
- UINT Y
Y pixel coordinate to set the output string position. 
- BYTE Font
Size of the font - 0 = Normal, 1 = Double Width, 2 = Double Width and Height, 3 = Double Height 
- BYTE Transparent
Specifies if the background of the text is drawn - 0 = Background colour is drawn, 1 = Background colour not drawn. 
- VOID Return


SetBackgroundColour

SetBackgroundColour
Specifies the colour of the background by creating a mixture of red, green and blue.  
- BYTE Red
0 - 255 where 0 = no red and 255 = maximum red 
- BYTE Green
0 - 255 where 0 = no green and 255 = maximum green 
- BYTE Blue
0 - 255 where 0 = no blue and 255 = maximum blue 
- VOID Return


SetDisplayOrientation

SetDisplayOrientation
Controls the way data is printed out on the display allowing multiple different viewing orientations. Default is 0. 
- BYTE Orientation
0=Default, 1=90°CW, 2=180°CW, 3=270°CW 
- VOID Return


SetForegroundColour

SetForegroundColour
Specifies the colour of the foreground by creating a mixture of red, green and blue. 
- BYTE Red
0 - 255 where 0 = no red and 255 = maximum red 
- BYTE Green
0 - 255 where 0 = no green and 255 = maximum green 
- BYTE Blue
0 - 255 where 0 = no blue and 255 = maximum blue 
- VOID Return


Window

Window
 
- UINT X1
 
- UINT Y1
 
- UINT X2
 
- UINT Y2
 
- VOID Return


Property reference

Properties
Dimensions
Pixel Height
Heigt of gLCD canvas measured in pixels.  
Pixel Width
Width of gLCD canvas measured in pixels.  
Colour
Monochrome
Specifies if the display is capable of colour or monochrome only.  
Foreground Color
Specifies the initial foreground color.  
Background Colour
Specifies the initial background color.  
Bit Depth
Colour Bit Depth
Total color bit depth for the display.  
Red Bit Depth
Specifies the red bit depth for the display.  
Green Bit Depth
Specifies the green bit depth for the display.  
Blue Bit Depth
Specifies the blue bit depth for the display.  
Connections
Channel
UART Channel selector Software channels are bit banged using generic I/O pins but are not as reliable as hardware channels. Hardware channels use the selected peripheral on-board the target microcontroller. 
TX
Pin to be used for Transmit data 
RX
Pin to be used for Receive data 
Reset Pin
I/O pin connected to the reset signal on the gLCD 
Baud Options
Baud rate option selector 
Baud Rate
 
High Speed
Determines if the baud rate is automaticaly switched from 9600 baud on initialise to 57600 baud. Only available in hardware mode. 
Simulation
Component Label
 
Component Label Scale
The label scale can be change if the amout of text is too wide for the display  
Physical Orientation
Rotates the simulated canvas to match the orientation of real world hardware. 
Scope Traces
Selects if the scope traces are automatically added to the data recorder window or not. Simulation - draws an approximation of the UART data onto the scope trace. ICT - sets up the scope trace for incoming data and adds UART packet decoding at the correct BAUD. 
Console Data
Selects if the console data is automatically generated or not 
Console Columns
Number of characters that can be displayed on a single line of the console. 
Data Source
Simulation data source used to allow the component to connect to various remote devices Nothing - Simulation data is ignored COM port - Routes the communication data to and from a physical or virtual COM port Injector - Routes the communication data via a data injector component on the Panel. 
Display Method
Chooses which method to use when drawing to the gLCD component The bitmap is the more common mode but may run slowly on some machines. The point cloud should run faster but may use more memory. 

Component Source Code

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

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