Component: GLCD (KS0108) (Graphical Monochrome): Difference between revisions
Appearance
No edit summary |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (21 intermediate revisions by 3 users not shown) | |||
| Line 15: | Line 15: | ||
Graphical display component designed to work with the KS0108 type monochrome displays. Also compatible with the newer S6A0107 controller IC displays. | Graphical display component designed to work with the KS0108 type monochrome displays. Also compatible with the newer S6A0107 controller IC displays. | ||
== | ==Version information== | ||
Library Version, Component Version, Date, Author, Info | |||
11, 1.0, 22-07-24, BR, Added DrawArc and DrawRoundedRectangle functions | |||
==Detailed description== | ==Detailed description== | ||
Click here for an [[GLCD|in depth guide to graphical LCDs]] using Flowcode. | |||
Information on the Fonts available for this component are available here. [[Component:_ID_1b08885c_807e_4631_930e_a4fef06159dc|GLCD Font Subcomponent]] | |||
==Examples== | |||
| Line 33: | Line 40: | ||
= | |||
''<span style="color:red;">No additional examples</span>'' | |||
| Line 50: | Line 66: | ||
== | ==Macro reference== | ||
{| class="wikitable" | ===BPlot=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''BPlot''' | |||
|- | |||
| colspan="2" | Sets a pixel with the current background colour at pixel location X, Y. | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | X1 | |||
|- | |- | ||
| | | colspan="2" | | ||
|- | |- | ||
| | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | Y1 | |||
|- | |- | ||
| colspan="2" | | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |||
===ClearDisplay=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| 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. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable" | ===DrawArc=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''DrawArc''' | |||
|- | |||
| colspan="2" | Draws an arc either as an outline or as a filled object. | |||
|- | |- | ||
|- | |- | ||
| colspan="2" | | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | X | |||
|- | |||
| colspan="2" | Center X coordinate | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | Y | |||
|- | |||
| colspan="2" | Center Y coordinate | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | Radius | |||
|- | |||
| colspan="2" | Radius, distance of edge from the centre coordinates | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT | |||
| width="90%" | StartAngle | |||
|- | |||
| colspan="2" | Angle to start drawing, in degrees | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT | |||
| width="90%" | EndAngle | |||
|- | |||
| colspan="2" | Angle to end drawing, in degrees | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | Resolution | |||
|- | |- | ||
| colspan="2" | Number of lines to draw from the center to the outer edge, 0=Fill | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Transparent | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Chooses the transparency - 0 = Arc contains background colour, 1 = Arc contains previous pixel data. | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Solid | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Chooses to fill with colour - 0 = Arc transparency data, 1 = Arc contains foreground colour. | ||
|- | |- | ||
| 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 101: | Line 162: | ||
{| class="wikitable | ===DrawBezier=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''DrawBezier''' | ||
|- | |- | ||
| colspan="2" | | | 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. | ||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | X0 | |||
|- | |||
| colspan="2" | Start X coordinate | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | Y0 | |||
|- | |- | ||
| colspan="2" | Start Y coordinate | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | CX | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Control point X coordinate | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | CY | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Control point Y coordinate | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | X2 | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | End X coordinate | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | Y2 | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | End Y coordinate | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | Resolution | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Number of segments to approximate the curve, 0 chooses an automatic value based on curve size. | ||
|- | |- | ||
| 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 139: | Line 211: | ||
{| class="wikitable | ===DrawCircle=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | 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 | | colspan="2" | Draws a circle object on the display with the center of the circle at the location X,Y | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | X | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | X Coordinate for the center of the circle | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | Y | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Y coordinate for the center of the circle | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | Radius | ||
|- | |||
| colspan="2" | Radius of the circle specified in pixels | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | Transparent | |||
|- | |- | ||
| colspan="2" | | | colspan="2" | 0=Fill inside circle using background colour / 1=Draw outer circle only | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Solid | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | 0=Use Transparent Setting / 1=Fill with foreground colour | ||
|- | |- | ||
| 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 172: | Line 250: | ||
{| class="wikitable | ===DrawEllipse=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | 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 215: | Line 294: | ||
{| class="wikitable | ===DrawLine=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''DrawLine''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Draws a line with the current foreground colour from pixel location X1, Y1 to pixel location X2, Y2. | ||
|- | |- | ||
|- | |- | ||
| Line 230: | Line 310: | ||
| 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" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | X2 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | Y2 | |||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| Line 238: | Line 328: | ||
{| class="wikitable | ===DrawRectangle=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''DrawRectangle''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Draws a rectangle with the current foreground colour from pixel loaction X1, Y1 to pixel location X2, Y2 | ||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | X1 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | Y1 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | X2 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | Y2 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| 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. | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Solid | ||
|- | |- | ||
| colspan="2" | 0= | | colspan="2" | Chooses to fill the box with colour - 0 = Box contains transparency data, 1 = Box contains foreground colour. | ||
|- | |- | ||
| 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 256: | Line 372: | ||
{| class="wikitable | ===DrawRoundedRectangle=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''DrawRoundedRectangle''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Draws a rectangle with rounded corners | ||
|- | |- | ||
|- | |- | ||
| Line 273: | Line 390: | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | X2 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | Y2 | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | Radius | |||
|- | |||
| colspan="2" | | |||
|- | |||
| 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. | |||
|- | |||
| 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. | |||
|- | |- | ||
| 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 279: | Line 421: | ||
{| class="wikitable" | ===Initialise=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| 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" | | | 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'' | |||
|} | |||
===Plot=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''Plot''' | |||
|- | |||
| colspan="2" | Sets a pixel with the current foreground colour at pixel location X, Y. | |||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | X1 | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | Y1 | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===Print=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | 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 340: | Line 498: | ||
{| class="wikitable | ===PrintNumber=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | 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 | | colspan="2" | This macro prints a decimal number to the Graphical LCD. | ||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT | |||
| width="90%" | Number | |||
|- | |||
| colspan="2" | Byte or Integer number to send to the display. | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | |||
| width="90%" | X | |||
|- | |- | ||
| colspan="2" | X pixel coordinate to set the output string position. | |||
|- | |- | ||
| width="10%" align="center | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90% | | width="90%" | Y | ||
|- | |- | ||
| | | colspan="2" | Y pixel coordinate to set the output string position. | ||
|- | |- | ||
| | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | Font | |||
|- | |- | ||
| colspan="2" | Range: 0 to 31 - 0=5x8, 1=10x8, 2=10x16, 3=5x16, 4-31=Extended Sizes | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Transparent | ||
|- | |- | ||
| colspan="2" | 0= | | colspan="2" | Specifies if the background of the text is drawn - 0 = Background colour is drawn, 1 = Background colour not drawn. | ||
|- | |- | ||
| 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 371: | Line 537: | ||
{| class="wikitable" | ===ReadFontStat=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |||
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | |||
| width="90%" class="mtx-class-macrohead" | '''ReadFontStat''' | |||
|- | |||
| colspan="2" | Gets a stat from the selected embedded ASCII font data. | |||
|- | |- | ||
|- | |- | ||
| | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | Font | |||
|- | |- | ||
| colspan="2" | Font selection range: 0 to (NumFonts - 1) | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Index | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | 0=SpaceWidth, 1=PixelHeight | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |||
===ReadFontWidth=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" class="mtx-class-macrohead" | '''ReadFontWidth''' | |||
|- | |- | ||
| | | colspan="2" | Reads the number of pixel columns used in the selected font | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Font | ||
|- | |- | ||
| colspan="2" | 0 | | colspan="2" | Font selection range: 0 to (NumFonts - 1) | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Character | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | ASCII character to get the pixel width e.g. 'A' or 65 | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
{| class="wikitable | ===SetBackgroundColour=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | 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 | | colspan="2" | Specifies the colour of the background. | ||
|- | |- | ||
|- | |- | ||
| Line 427: | Line 604: | ||
{| class="wikitable | ===SetDisplayOrientation=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetDisplayOrientation''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Controls the way data is printed out on the display allowing multiple different viewing orientations. Default is 0. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Orientation | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | 0=Default, 1=90°CW, 2=180°CW, 3=270°CW | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |||
===SetFontScaler=== | |||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| 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. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | ScaleX | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Sets the horizontal scale of the font, default 1 | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | ScaleY | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Sets the vertical scale of the font, default 1 | ||
|- | |- | ||
| 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 470: | Line 647: | ||
{| class="wikitable | ===SetForegroundColour=== | ||
{| class="mtx-class-macrotable wikitable" | |||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetForegroundColour''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Specifies the colour of the foreground. | ||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="90%" | Pixel_Colour | |||
|- | |- | ||
| colspan="2" | 0=White, 1=Black | |||
|- | |- | ||
| 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 | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
==Property reference== | ==Property reference== | ||
{| class="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 512: | Line 693: | ||
| colspan="2" | Speicifies the number of controller IC's built into the display and therefore the number of available chip select pins | | colspan="2" | Speicifies the number of controller IC's built into the display and therefore the number of available chip select pins | ||
|- | |- | ||
| 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 531: | Line 712: | ||
| 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 555: | Line 736: | ||
| colspan="2" | Specifies the blue bit depth for the display. | | colspan="2" | Specifies the blue bit depth for 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 629: | Line 810: | ||
| colspan="2" | Display reset pin | | colspan="2" | Display reset pin | ||
|- | |- | ||
| 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 638: | Line 819: | ||
| 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 647: | Line 828: | ||
| colspan="2" | Font picker to decide which font to use on your display. | | colspan="2" | Font picker to decide which font to use on your display. | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type- | | width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | ||
| width="90%" | Bytes Required | |||
|- | |||
| colspan="2" | Number of bytes required in program memory to store the selected font. | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | |||
| width="90%" | Character Spacing | | width="90%" | Character Spacing | ||
|- | |- | ||
| 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" | [[File:Fc9-type- | | width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | ||
| width="90%" | Space Width | | width="90%" | Space Width | ||
|- | |- | ||
| colspan="2" | Sets the number of horizontal pixels used to represent a space character. | | colspan="2" | Sets the number of horizontal pixels used to represent a space character. | ||
|- | |- | ||
| 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 676: | Line 862: | ||
| colspan="2" | Rotates the simulated canvas to match the orientation of real world hardware. | | colspan="2" | Rotates the simulated canvas to match the orientation of real world hardware. | ||
|- | |- | ||
| 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" | Display Delay | ||
|- | |- | ||
|- | |- | ||
| Line 685: | Line 871: | ||
| colspan="2" | Time in micro seconds to wait before and after toggling the enable pin. | | colspan="2" | Time in micro seconds to wait before and after toggling the enable pin. | ||
|} | |} | ||
==Component Source Code== | |||
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_GLCD_KS0108.fcfx FC_Comp_Source_GLCD_KS0108.fcfx] | |||
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_GLCD_KS0108.fcfx FC_Comp_Source_GLCD_KS0108.fcfx] | |||
Latest revision as of 14:37, 13 July 2026
| Author | Matrix Ltd |
| Version | 1.4 |
| Category | Graphical Monochrome |
GLCD (KS0108) component
Graphical display component designed to work with the KS0108 type monochrome displays. Also compatible with the newer S6A0107 controller IC displays.
Version information
Library Version, Component Version, Date, Author, Info 11, 1.0, 22-07-24, BR, Added DrawArc and DrawRoundedRectangle functions
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 background. | |
| Pixel_Colour | |
| 0=White, 1=Black | |
| Return | |
SetDisplayOrientation
SetFontScaler
SetForegroundColour
| SetForegroundColour | |
| Specifies the colour of the foreground. | |
| Pixel_Colour | |
| 0=White, 1=Black | |
| Return | |
Property reference
Component Source Code
Please click here to download the component source project: FC_Comp_Source_GLCD_KS0108.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_GLCD_KS0108.fcfx