Component: GLCD (PDC8544) (PCD8544) (Graphical Monochrome): Difference between revisions
Appearance
m Text replacement - "class="wikitable" style="width:60%; background-color:#FFFFFF;"" to "class="mtx-class-macrotable wikitable"" |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (4 intermediate revisions by the same user not shown) | |||
| Line 39: | Line 39: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | '''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 63: | Line 63: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | '''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 77: | Line 77: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | '''ControlContrast''' | ||
|- | |- | ||
| colspan="2" | Allows the display bias and contrast to be configured to allow for various different display conditions. | | colspan="2" | Allows the display bias and contrast to be configured to allow for various different display conditions. | ||
| Line 101: | Line 101: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | '''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 155: | Line 155: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | 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 204: | Line 204: | ||
{| class="mtx-class-macrotable wikitable" | {| 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 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 243: | Line 243: | ||
{| class="mtx-class-macrotable wikitable" | {| 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 287: | Line 287: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | 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 321: | Line 321: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | 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 365: | Line 365: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | Draws a rectangle with rounded corners | | colspan="2" | Draws a rectangle with rounded corners | ||
| Line 414: | Line 414: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | '''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 428: | Line 428: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | '''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 452: | Line 452: | ||
{| class="mtx-class-macrotable wikitable" | {| 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 491: | Line 491: | ||
{| class="mtx-class-macrotable wikitable" | {| 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 prints a decimal number to the Graphical LCD. | | colspan="2" | This macro prints a decimal number to the Graphical LCD. | ||
| Line 530: | Line 530: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | '''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 554: | Line 554: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | '''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 578: | Line 578: | ||
{| class="mtx-class-macrotable wikitable" | {| 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 background by creating a mixture of red, green and blue. | | colspan="2" | Specifies the colour of the background by creating a mixture of red, green and blue. | ||
| Line 597: | Line 597: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | 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 616: | Line 616: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | '''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 640: | Line 640: | ||
{| class="mtx-class-macrotable wikitable" | {| 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" | Specifies the colour of the foreground by creating a mixture of red, green and blue. | | colspan="2" | Specifies the colour of the foreground by creating a mixture of red, green and blue. | ||
| Line 660: | Line 660: | ||
{| 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 678: | Line 678: | ||
| 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 702: | Line 702: | ||
| colspan="2" | The display is only capable of writing to 8 pixels at once and there is no means to read back the pixel states. The internal RAM buffer is designed to allow you to do more with the display by keeping track of the pixel states. The internal RAM buffer when enabled will consume 504 bytes of RAM memory. For very basic printing of text with Y coordinates on 8-bit boundaries, 0, 8, 16, etc the buffer is not required as we never overlap the text. If the text was printed on say y coordinate of 4 and 12 then the text at coordinate 12 would corrupt the bottom of the text at coorinate 4. | | colspan="2" | The display is only capable of writing to 8 pixels at once and there is no means to read back the pixel states. The internal RAM buffer is designed to allow you to do more with the display by keeping track of the pixel states. The internal RAM buffer when enabled will consume 504 bytes of RAM memory. For very basic printing of text with Y coordinates on 8-bit boundaries, 0, 8, 16, etc the buffer is not required as we never overlap the text. If the text was printed on say y coordinate of 4 and 12 then the text at coordinate 12 would corrupt the bottom of the text at coorinate 4. | ||
|- | |- | ||
| 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 726: | Line 726: | ||
| 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 755: | Line 755: | ||
| colspan="2" | Instruction / Command pin connection | | colspan="2" | Instruction / Command pin connection | ||
|- | |- | ||
| 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 764: | Line 764: | ||
| 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 788: | Line 788: | ||
| 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 | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:37, 13 July 2026
| Author | Matrix Ltd |
| Version | 1.6 |
| Category | Graphical Monochrome |
GLCD (PDC8544) component
Graphical display component based on the PCD8544 monochrome graphical controller IC as used on the popular Nokia 5510 displays. Functions without the use of a read pin by hosting the 1K of graphical memory using the microcontroller's RAM memory.
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 | |
ControlContrast
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 by creating a mixture of red, green and blue. | |
| PixelColour | |
| 0=White, 1=Black | |
| Return | |
SetDisplayOrientation
SetFontScaler
SetForegroundColour
| SetForegroundColour | |
| Specifies the colour of the foreground by creating a mixture of red, green and blue. | |
| PixelColour | |
| 0=White, 1=Black | |
| Return | |
Property reference
Component Source Code
Please click here to download the component source project: FC_Comp_Source_GLCD_PCD8544.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_GLCD_PCD8544.fcfx