Component: GLCD (SH1106) SPI (Graphical Monochrome): Difference between revisions
Appearance
m Text replacement - "width="10%" align="center" style="background-color:#D8C9D8;" align="center"" to "width="10%" align="center" class="mtx-class-macrohead"" |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (3 intermediate revisions by the same user not shown) | |||
| Line 75: | Line 75: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''BPlot''' | ||
|- | |- | ||
| colspan="2" | Sets a pixel with the current background colour at pixel location X, Y. | | colspan="2" | Sets a pixel with the current background colour at pixel location X, Y. | ||
| Line 99: | Line 99: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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. | | colspan="2" | This macro clears the display of any previous output by overwriting the entire display with the background colour. | ||
| Line 113: | Line 113: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''DrawArc''' | ||
|- | |- | ||
| colspan="2" | Draws an arc either as an outline or as a filled object. | | colspan="2" | Draws an arc either as an outline or as a filled object. | ||
| Line 167: | Line 167: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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. | | 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. | ||
| Line 216: | Line 216: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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 | | colspan="2" | Draws a circle object on the display with the center of the circle at the location X,Y | ||
| Line 255: | Line 255: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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 | | colspan="2" | Draws an ellipse object on the display with the center of the ellipse at the location X,Y | ||
| Line 299: | Line 299: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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. | | colspan="2" | Draws a line with the current foreground colour from pixel location X1, Y1 to pixel location X2, Y2. | ||
| Line 333: | Line 333: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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 | | colspan="2" | Draws a rectangle with the current foreground colour from pixel loaction X1, Y1 to pixel location X2, Y2 | ||
| Line 377: | Line 377: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''DrawRoundedRectangle''' | ||
|- | |- | ||
| colspan="2" | Draws a rectangle with rounded corners | | colspan="2" | Draws a rectangle with rounded corners | ||
| Line 426: | Line 426: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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. | | colspan="2" | The Init macro must be called once to initialise the Graphical LCD display before any other Graphical LCD component macros are called. | ||
| Line 440: | Line 440: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Plot''' | ||
|- | |- | ||
| colspan="2" | Sets a pixel with the current foreground colour at pixel location X, Y. | | colspan="2" | Sets a pixel with the current foreground colour at pixel location X, Y. | ||
| Line 464: | Line 464: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Print''' | ||
|- | |- | ||
| colspan="2" | This macro prints a string of characters to the Graphical LCD. | | colspan="2" | This macro prints a string of characters to the Graphical LCD. | ||
| Line 503: | Line 503: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''PrintNumber''' | ||
|- | |- | ||
| colspan="2" | This macro prints a decimal number to the Graphical LCD. | | colspan="2" | This macro prints a decimal number to the Graphical LCD. | ||
| Line 542: | Line 542: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadFontStat''' | ||
|- | |- | ||
| colspan="2" | Gets a stat from the selected embedded ASCII font data. | | colspan="2" | Gets a stat from the selected embedded ASCII font data. | ||
| Line 566: | Line 566: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadFontWidth''' | ||
|- | |- | ||
| colspan="2" | Reads the number of pixel columns used in the selected font | | colspan="2" | Reads the number of pixel columns used in the selected font | ||
| Line 590: | Line 590: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetBackgroundColour''' | ||
|- | |- | ||
| colspan="2" | Specifies the colour of the foreground | | colspan="2" | Specifies the colour of the foreground | ||
| Line 609: | Line 609: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetContrast''' | ||
|- | |- | ||
| colspan="2" | Set the contrast level from 0 to 255 | | colspan="2" | Set the contrast level from 0 to 255 | ||
| Line 628: | Line 628: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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. | | colspan="2" | Controls the way data is printed out on the display allowing multiple different viewing orientations. Default is 0. | ||
| Line 647: | Line 647: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetFontScaler''' | ||
|- | |- | ||
| colspan="2" | Allows the fonts to be scaled up by multiplying the number of pixels on the X and Y. | | colspan="2" | Allows the fonts to be scaled up by multiplying the number of pixels on the X and Y. | ||
| Line 671: | Line 671: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetForegroundColour''' | ||
|- | |- | ||
| colspan="2" | Specifies the colour of the foreground. | | colspan="2" | Specifies the colour of the foreground. | ||
| Line 690: | Line 690: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Write_Command''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| Line 709: | Line 709: | ||
|- | |- | ||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Write_Data''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| Line 728: | Line 728: | ||
{| class="mtx-class-macrotable wikitable" | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Dimensions | ||
|- | |- | ||
|- | |- | ||
| Line 746: | Line 746: | ||
| colspan="2" | Heigt of gLCD canvas measured in pixels. | | colspan="2" | Heigt of gLCD canvas measured in pixels. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Colour | ||
|- | |- | ||
|- | |- | ||
| Line 765: | Line 765: | ||
| colspan="2" | Specifies the initial background color. | | colspan="2" | Specifies the initial background color. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Bit Depth | ||
|- | |- | ||
|- | |- | ||
| Line 789: | Line 789: | ||
| colspan="2" | Number of bits of Blue colour depth on the display | | colspan="2" | Number of bits of Blue colour depth on the display | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Connections | ||
|- | |- | ||
|- | |- | ||
| Line 833: | Line 833: | ||
| colspan="2" | Reset pin on the display, used during initialise to force a clean startup of the display | | colspan="2" | Reset pin on the display, used during initialise to force a clean startup of the display | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Fonts | ||
|- | |- | ||
|- | |- | ||
| Line 842: | Line 842: | ||
| colspan="2" | Specifies the number of fonts available to use on the display. | | colspan="2" | Specifies the number of fonts available to use on the display. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Font 0 | ||
|- | |- | ||
|- | |- | ||
| Line 861: | Line 861: | ||
| colspan="2" | Sets the number of blank pixels between each character when printing text. | | colspan="2" | Sets the number of blank pixels between each character when printing text. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Simulation | ||
|- | |- | ||
|- | |- | ||
| Line 885: | Line 885: | ||
| colspan="2" | Allows the communications to be simulated to either see the waveforms on the data recorder or to drive an injector component. | | colspan="2" | Allows the communications to be simulated to either see the waveforms on the data recorder or to drive an injector component. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Communications | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:36, 13 July 2026
| Author | Matrix Ltd |
| Version | 13.0 |
| Category | Graphical Monochrome |
GLCD (SH1106) SPI component
Graphical display component designed to work with the SH1106 type monochrome displays. Transfers data using a 4-wire SPI interface.
Version information
Library Version, Component Version, Date, Author, Info 11, 1.0, 22-07-24, BR, Added DrawArc and DrawRoundedRectangle functions 13, 1.0, 18-06-25, MW, Updated fonts to new type and added SetContrast function
Detailed description
Click here for an in depth guide to graphical LCDs using Flowcode.
Information on the Fonts available for this component are available here. GLCD Font Subcomponent
Examples
No additional examples
Macro reference
BPlot
| BPlot | |
| Sets a pixel with the current background colour at pixel location X, Y. | |
| X1 | |
| Y1 | |
| Return | |
ClearDisplay
| ClearDisplay | |
| This macro clears the display of any previous output by overwriting the entire display with the background colour. | |
| Return | |
DrawArc
DrawBezier
DrawCircle
DrawEllipse
DrawLine
| DrawLine | |
| Draws a line with the current foreground colour from pixel location X1, Y1 to pixel location X2, Y2. | |
| X1 | |
| Y1 | |
| X2 | |
| Y2 | |
| Return | |
DrawRectangle
DrawRoundedRectangle
Initialise
| Initialise | |
| The Init macro must be called once to initialise the Graphical LCD display before any other Graphical LCD component macros are called. | |
| Return | |
Plot
| Plot | |
| Sets a pixel with the current foreground colour at pixel location X, Y. | |
| X1 | |
| Y1 | |
| Return | |
PrintNumber
ReadFontStat
| ReadFontStat | |
| Gets a stat from the selected embedded ASCII font data. | |
| Font | |
| Font selection range: 0 to (NumFonts - 1) | |
| Index | |
| 0=SpaceWidth, 1=PixelHeight | |
| Return | |
ReadFontWidth
SetBackgroundColour
| SetBackgroundColour | |
| Specifies the colour of the foreground | |
| PixelColour | |
| 0=White, 1=Black | |
| Return | |
SetContrast
| SetContrast | |
| Set the contrast level from 0 to 255 | |
| ContrastLevel | |
| Return | |
SetDisplayOrientation
SetFontScaler
SetForegroundColour
| SetForegroundColour | |
| Specifies the colour of the foreground. | |
| PixelColour | |
| 0=White, 1=Black | |
| Return | |
Write_Command
| Write_Command | |
| Command | |
| Return | |
Write_Data
| Write_Data | |
| data | |
| Return | |
Property reference
Component Source Code
Please click here to download the component source project: FC_Comp_Source_GLCD_SH1106_SPI.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_GLCD_SH1106_SPI.fcfx