Jump to content

Component: GLCD (SSD1327) I2C (SSD1327) (Graphical Monochrome): Difference between revisions

From Flowcode Help
No edit summary
No edit summary
Line 17: Line 17:
==Component Source Code==
==Component Source Code==


Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_GLCD_SSD1327_I2C.fcfx FC_Comp_Source_GLCD_SSD1327_I2C.fcfx]
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_temp/GLCD_SSD1327_I2C.fcfx FC_Comp_Source_temp/GLCD_SSD1327_I2C.fcfx]


Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_GLCD_SSD1327_I2C.fcfx FC_Comp_Source_GLCD_SSD1327_I2C.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_temp/GLCD_SSD1327_I2C.fcfx FC_Comp_Source_temp/GLCD_SSD1327_I2C.fcfx]


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


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




Line 79: Line 81:
==Macro reference==
==Macro reference==


===ReadFontWidth===
===BPlot===
{| 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;" | '''ReadFontWidth'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''BPlot'''
|-
|-
| colspan="2" | Reads the number of pixel columns used in the selected font&nbsp;
| colspan="2" | Sets a pixel with the current background colour at pixel location X, Y.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Font
| width="90%" | X1
|-
|-
| colspan="2" | Font selection range: 0 to (NumFonts - 1)&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Character
| width="90%" | Y1
|-
|-
| colspan="2" | ASCII character to get the pixel width e.g. 'A' or 65&nbsp;
| colspan="2" | &nbsp;
|-
|-
| 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-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




===SetFontScaler===
===ClearDisplay===
{| 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;" | '''SetFontScaler'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ClearDisplay'''
|-
| colspan="2" | This macro clears the display of any previous output by overwriting the entire display with the background colour.&nbsp;
|-
|-
|-
| colspan="2" | Allows the fonts to be scaled up by multiplying the number of pixels on the X and Y.&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''
|}
 
 
===ControlDisplay===
{| 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;" | '''ControlDisplay'''
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| colspan="2" | Allows the display to be switched on and off&nbsp;
| width="90%" | ScaleX
|-
|-
| colspan="2" | Sets the horizontal scale of the font, default 1&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | ScaleY
| width="90%" | Control
|-
|-
| colspan="2" | Sets the vertical scale of the font, default 1&nbsp;
| colspan="2" | 0=Off, 1=On&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 127: Line 138:




===SendCommand===
===DrawCircle===
{| 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;" | '''SendCommand'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DrawCircle'''
|-
| colspan="2" | Draws a circle object on the display with the center of the circle at the location X,Y&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X
|-
| colspan="2" | X Coordinate for the center of the circle&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y
|-
| colspan="2" | Y coordinate for the center of the circle&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Radius
|-
| colspan="2" | Radius of the circle specified in pixels&nbsp;
|-
|-
| colspan="2" | &nbsp;
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Transparent
|-
|-
| colspan="2" | 0=Fill inside circle using background colour / 1=Draw outer circle only&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Command
| width="90%" | Solid
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | 0=Use Transparent Setting / 1=Fill with foreground colour&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 146: Line 177:




===PrintNumber===
===DrawEllipse===
{| 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;" | '''PrintNumber'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DrawEllipse'''
|-
| colspan="2" | Draws an ellipse object on the display with the center of the ellipse at the location X,Y&nbsp;
|-
|-
|-
| colspan="2" | This macro prints a decimal number to the Graphical LCD.&nbsp;
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X
|-
|-
| colspan="2" | X Coordinate for the center of the circle&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Number
| width="90%" | Y
|-
|-
| colspan="2" | Byte or Integer number to send to the display.&nbsp;
| colspan="2" | Y coordinate for the center of the circle&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X
| width="90%" | XRadius
|-
|-
| colspan="2" | X pixel coordinate to set the output string position.&nbsp;
| colspan="2" | Radius of the circle on the X axis specified in pixels&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y
| width="90%" | YRadius
|-
|-
| colspan="2" | Y pixel coordinate to set the output string position.&nbsp;
| colspan="2" | Radius of the circle on the Y axis specified in pixels&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Font
| width="90%" | Transparent
|-
|-
| colspan="2" | Range: 0 to 31 - 0=5x8, 1=10x8, 2=10x16, 3=5x16, 4-31=Extended Sizes&nbsp;
| colspan="2" | 0=Fill inside circle using background colour / 1=Draw outer circle only&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Transparent
| width="90%" | Solid
|-
|-
| colspan="2" | Specifies if the background of the text is drawn - 0 = Background colour is drawn, 1 = Background colour not drawn.&nbsp;
| colspan="2" | 0=Use Transparent Setting / 1=Fill with foreground colour&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 219: Line 255:




===DrawEllipse===
===DrawRectangle===
{| 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;" | '''DrawEllipse'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DrawRectangle'''
|-
|-
| colspan="2" | Draws an ellipse object on the display with the center of the ellipse at the location X,Y&nbsp;
| colspan="2" | Draws a rectangle with the current foreground colour from pixel loaction X1, Y1 to pixel location X2, Y2&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X
| width="90%" | X1
|-
|-
| colspan="2" | X Coordinate for the center of the circle&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y
| width="90%" | Y1
|-
|-
| colspan="2" | Y coordinate for the center of the circle&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | XRadius
| width="90%" | X2
|-
|-
| colspan="2" | Radius of the circle on the X axis specified in pixels&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | YRadius
| width="90%" | Y2
|-
|-
| colspan="2" | Radius of the circle on the Y axis specified in pixels&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Transparent
| width="90%" | Transparent
|-
|-
| colspan="2" | 0=Fill inside circle using background colour / 1=Draw outer circle only&nbsp;
| colspan="2" | Chooses the transparency of the box - 0 = Box contains background colour, 1 = Box contains previous pixel data.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Solid
| width="90%" | Solid
|-
|-
| colspan="2" | 0=Use Transparent Setting / 1=Fill with foreground colour&nbsp;
| colspan="2" | Chooses to fill the box with colour - 0 = Box contains transparency data, 1 = Box contains foreground colour.&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 263: Line 299:




===Plot===
===Initialise===
{| 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;" | '''Plot'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
|-
| colspan="2" | Sets a pixel with the current foreground colour at pixel location X, Y.&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;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X1
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y1
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 287: Line 313:




===ControlDisplay===
===InvertDisplay===
{| 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;" | '''ControlDisplay'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''InvertDisplay'''
|-
|-
| colspan="2" | Allows the display to be switched on and off&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Control
|-
|-
| colspan="2" | 0=Off, 1=On&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 306: Line 327:




===SetDisplayOrientation===
===Plot===
{| 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;" | '''SetDisplayOrientation'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Plot'''
|-
| colspan="2" | Sets a pixel with the current foreground colour at pixel location X, Y.&nbsp;
|-
|-
|-
| colspan="2" | Controls the way data is printed out on the display allowing multiple different viewing orientations. Default is 0.&nbsp;
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X1
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Orientation
| width="90%" | Y1
|-
|-
| colspan="2" | 0=Default, 1=90°CW, 2=180°CW, 3=270°CW&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 325: Line 351:




===BPlot===
===Print===
{| 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;" | '''BPlot'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Print'''
|-
| colspan="2" | This macro prints a string of characters to the Graphical LCD.&nbsp;
|-
|-
|-
| colspan="2" | Sets a pixel with the current background colour at pixel location X, Y.&nbsp;
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | Str
|-
|-
| colspan="2" | String of characters to send to the display.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X1
| width="90%" | X1
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | X pixel coordinate to set the output string position.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y1
| width="90%" | Y1
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | Y pixel coordinate to set the output string position.&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Font
|-
| colspan="2" | Selects which Font to use Range: 0 to Font Count&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Transparent
|-
| colspan="2" | Specifies if the background of the text is drawn - 0 = Background colour is drawn, 1 = Background colour not drawn.&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 349: Line 390:




===Window===
===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;" | '''Window'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PrintNumber'''
|-
| colspan="2" | This macro prints a decimal number to the Graphical LCD.&nbsp;
|-
|-
|-
| colspan="2" | &nbsp;
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Number
|-
|-
| colspan="2" | Byte or Integer number to send to the display.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X1
| width="90%" | X
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | X pixel coordinate to set the output string position.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y1
| width="90%" | Y
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | Y pixel coordinate to set the output string position.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | X2
| width="90%" | Font
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | Range: 0 to 31 - 0=5x8, 1=10x8, 2=10x16, 3=5x16, 4-31=Extended Sizes&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Y2
| width="90%" | Transparent
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | Specifies if the background of the text is drawn - 0 = Background colour is drawn, 1 = Background colour not drawn.&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 407: Line 453:




===Print===
===ReadFontWidth===
{| 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;" | '''Print'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadFontWidth'''
|-
|-
| colspan="2" | This macro prints a string of characters to the Graphical LCD.&nbsp;
| colspan="2" | Reads the number of pixel columns used in the selected font&nbsp;
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | Str
|-
| colspan="2" | String of characters to send to the display.&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X1
|-
| colspan="2" | X pixel coordinate to set the output string position.&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y1
|-
| colspan="2" | Y pixel coordinate to set the output string position.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Font
| width="90%" | Font
|-
|-
| colspan="2" | Selects which Font to use Range: 0 to Font Count&nbsp;
| colspan="2" | Font selection range: 0 to (NumFonts - 1)&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Transparent
| width="90%" | Character
|-
|-
| colspan="2" | Specifies if the background of the text is drawn - 0 = Background colour is drawn, 1 = Background colour not drawn.&nbsp;
| colspan="2" | ASCII character to get the pixel width e.g. 'A' or 65&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-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}
Line 460: Line 491:




===SetShadeIntensity===
===SendCommand===
{| 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;" | '''SetShadeIntensity'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendCommand'''
|-
|-
| colspan="2" | Allows the shade intensity to be set allowing for up to 15 different greyscale levels. Range: 1-15 Default: 15&nbsp;
| colspan="2" | &nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Shade
| width="90%" | Command
|-
|-
| colspan="2" | Range: 1-15      Default: 15&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 479: Line 510:




===ClearDisplay===
===SetBackgroundColour===
{| 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;" | '''ClearDisplay'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetBackgroundColour'''
|-
| colspan="2" | Specifies the colour of the background by creating a mixture of red, green and blue. &nbsp;
|-
|-
|-
| colspan="2" | This macro clears the display of any previous output by overwriting the entire display with the background colour.&nbsp;
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | PixelColour
|-
|-
| colspan="2" | 0=White, 1=Black&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 493: Line 529:




===SetBackgroundColour===
===SetDisplayOrientation===
{| 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;" | '''SetBackgroundColour'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetDisplayOrientation'''
|-
|-
| colspan="2" | Specifies the colour of the background by creating a mixture of red, green and blue. &nbsp;
| colspan="2" | Controls the way data is printed out on the display allowing multiple different viewing orientations. Default is 0.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | PixelColour
| width="90%" | Orientation
|-
|-
| colspan="2" | 0=White, 1=Black&nbsp;
| colspan="2" | 0=Default, 1=90°CW, 2=180°CW, 3=270°CW&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 512: Line 548:




===DrawCircle===
===SetFontScaler===
{| 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;" | '''DrawCircle'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetFontScaler'''
|-
|-
| colspan="2" | Draws a circle object on the display with the center of the circle at the location X,Y&nbsp;
| colspan="2" | Allows the fonts to be scaled up by multiplying the number of pixels on the X and Y.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | X
| width="90%" | ScaleX
|-
|-
| colspan="2" | X Coordinate for the center of the circle&nbsp;
| colspan="2" | Sets the horizontal scale of the font, default 1&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Y
| width="90%" | ScaleY
|-
|-
| colspan="2" | Y coordinate for the center of the circle&nbsp;
| colspan="2" | Sets the vertical scale of the font, default 1&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" | Radius
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
===SetForegroundColour===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| colspan="2" | Radius of the circle specified in pixels&nbsp;
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetForegroundColour'''
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| colspan="2" | Specifies the colour of the foreground by creating a mixture of red, green and blue. &nbsp;
| width="90%" | Transparent
|-
|-
| colspan="2" | 0=Fill inside circle using background colour / 1=Draw outer circle only&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Solid
| width="90%" | PixelColour
|-
|-
| colspan="2" | 0=Use Transparent Setting / 1=Fill with foreground colour&nbsp;
| colspan="2" | 0=White, 1=Black&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 551: Line 591:




===SetForegroundColour===
===SetShadeIntensity===
{| 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;" | '''SetForegroundColour'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetShadeIntensity'''
|-
|-
| colspan="2" | Specifies the colour of the foreground by creating a mixture of red, green and blue. &nbsp;
| colspan="2" | Allows the shade intensity to be set allowing for up to 15 different greyscale levels. Range: 1-15 Default: 15&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | PixelColour
| width="90%" | Shade
|-
|-
| colspan="2" | 0=White, 1=Black&nbsp;
| colspan="2" | Range: 1-15      Default: 15&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 570: Line 610:




===DrawRectangle===
===Window===
{| 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;" | '''DrawRectangle'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Window'''
|-
|-
| colspan="2" | Draws a rectangle with the current foreground colour from pixel loaction X1, Y1 to pixel location X2, Y2&nbsp;
| colspan="2" | &nbsp;
|-
|-
|-
|-
Line 598: Line 638:
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Transparent
|-
| colspan="2" | Chooses the transparency of the box - 0 = Box contains background colour, 1 = Box contains previous pixel data.&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Solid
|-
| colspan="2" | Chooses to fill the box with colour - 0 = Box contains transparency data, 1 = Box contains foreground colour.&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''
|}
===Initialise===
{| 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;" | '''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;
|-
|-
| 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''
|}
===InvertDisplay===
{| 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;" | '''InvertDisplay'''
|-
| colspan="2" | &nbsp;
|-
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID

Revision as of 12:01, 3 February 2023

Author Matrix Ltd
Version 1.9
Category Graphical Monochrome


GLCD (SSD1327) I2C component

Graphical display component based on the I2C version of the SSD1327 monochrome graphical controller IC. Functions without the use of a read pin by hosting the 2K of graphical memory using the microcontroller's RAM memory.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_temp/GLCD_SSD1327_I2C.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_temp/GLCD_SSD1327_I2C.fcfx

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


ControlDisplay

ControlDisplay
Allows the display to be switched on and off 
- BYTE Control
0=Off, 1=On 
- 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


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


InvertDisplay

InvertDisplay
 
- 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
Selects which Font to use Range: 0 to Font Count 
- 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
Range: 0 to 31 - 0=5x8, 1=10x8, 2=10x16, 3=5x16, 4-31=Extended Sizes 
- BYTE Transparent
Specifies if the background of the text is drawn - 0 = Background colour is drawn, 1 = Background colour not drawn. 
- VOID Return


ReadFontStat

ReadFontStat
Gets a stat from the selected embedded ASCII font data. 
- BYTE Font
Font selection range: 0 to (NumFonts - 1) 
- BYTE Index
0=SpaceWidth, 1=PixelHeight 
- BYTE Return


ReadFontWidth

ReadFontWidth
Reads the number of pixel columns used in the selected font 
- BYTE Font
Font selection range: 0 to (NumFonts - 1) 
- BYTE Character
ASCII character to get the pixel width e.g. 'A' or 65 
- BYTE Return


Refresh

Refresh
Refreshes the entire display by sending the contents of the local RAM to the display at high speed 
- VOID Return


SendCommand

SendCommand
 
- BYTE Command
 
- VOID Return


SetBackgroundColour

SetBackgroundColour
Specifies the colour of the background by creating a mixture of red, green and blue.  
- BYTE PixelColour
0=White, 1=Black 
- 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


SetFontScaler

SetFontScaler
Allows the fonts to be scaled up by multiplying the number of pixels on the X and Y. 
- BYTE ScaleX
Sets the horizontal scale of the font, default 1 
- BYTE ScaleY
Sets the vertical scale of the font, default 1 
- VOID Return


SetForegroundColour

SetForegroundColour
Specifies the colour of the foreground by creating a mixture of red, green and blue.  
- BYTE PixelColour
0=White, 1=Black 
- VOID Return


SetShadeIntensity

SetShadeIntensity
Allows the shade intensity to be set allowing for up to 15 different greyscale levels. Range: 1-15 Default: 15 
- BYTE Shade
Range: 1-15 Default: 15 
- VOID Return


Window

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



Property reference

Properties
Dimensions
Pixel Width
Width of gLCD canvas measured in pixels. 
Pixel Height
Heigt of gLCD canvas measured in pixels. 
Flip
Determines if the display is flipped or not 
Auto Draw
Yes: Default - Lines, Text, Clear will all be done automatically No: Data will be sent only to the internal RAM, the display will be updated using the Refresh command 
Colour
Monochrome
Specifies if the display is capable of colour or monochrome only. 
Foreground Color
Specifies the initial foreground color. 
Background Color
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
I2C Address
 
Channel
Channel selection 
Baud Select
Baud rate option selector 
Baud Rate
Baud rate to be used 
Stop Delay
On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not a 10ms delay between an I2C stop event and the next I2C start event. Most modern microcontrollers will not have a problem so this property can be disabled to speed up the I2C communications.  
SDA
Pin used for SDA (data signal) 
SCL
Pin used for SCL (clock signal) 
Fonts
Font Count
Specifies the number of fonts available to use on the display. 
Font 0
Font
Font picker to decide which font to use on your display. 
Character Spacing
Sets the number of blank pixels between each character when printing text. Default 1. 
Space Width
Sets the number of horizontal pixels used to represent a space character. 
Simulation Mode
Physical Orientation
Rotates the simulated canvas to match the orientation of real world hardware. 
Simulate Comms
Allows the communications to be simulated to either see the waveforms on the data recorder or to drive an injector component. 
Communications
Console Data
Selects if the console data is automatically generated or not 
Scope Traces
Selects if the component pin connections are automatically generated on the data recorder window or not. Yes: Automatically add the component pins to a group on the data recorder which will reflect the sim data during simultion. No: Do not show the pin signals on the data recorder window. 
API
Specifies the injector component on the panel to interact with to provide comms simulation.