About Press Copyright Contact us Creators Advertise Developers Terms Privacy Policy & Safety How YouTube works Test new features Press Copyright Contact us Creators. Download MikroElektronika GLCD Font Creator - A user-friendly program that helps you create personalized fonts, symbols, and icons from scratch or by editing Windows fonts, and apply several.
In the first part of this tutorial, we discussed about Winstar’s WDG0151-TMI GLCD module, which is a 128×64 pixel monochromatic display built with KS0108B and KS0107B compatible display controllers. The module was interfaced to a PIC16F887 microcontroller and a test program was written in C to demonstrate how to implement the KS0108 instruction set in the firmware of PIC to activate display pixels on the screen. We wrote our subroutine programs that would turn the GLCD on, move the display location to a specified row and column, and draw a pixel at a given coordinates. You might have realized it by now that how much of effort is required to write the firmware for just plotting a point on a GLCD screen. Today’s discussion will focus more on using the built-in GLCD library routines of mikroC Pro for PIC compiler, which will make your life a lot easier if you are using a graphical LCD in your project.
GLCD Library of mikroC Pro for PIC
The mikroC Pro for PIC provides GLCD library for a 128×64 pixel graphical LCD with Samsung KS0108/KS0107 controller chips. The library routines are categorized into two types: basic and advanced. Before using any library routine, following pin definitions is required. For our case (see the circuit diagram in the first part) where PORTD is used for data and PORTB pins for control signals, the GLCD pin settings should be defined as follows. Remember that the data lines must be on a single port.
Basic routines:
GLCD Font Creator has a very nice and intuitive interface. The main screen is split in 4 major zones. Almost all zones are moveable and can be disposed as you find it useful for your usage. Zone 1: Char Editor zone. Zone 2: The list of chars in the currently edited font. Zone 3: The currently edited char LCD Viewer. Visual TFT also supports FTDI chip™ - the latest EVE GUI Platform and FT8x and FT81x families of graphics controllers. These powerful devices allow for sophisticated forms of human-machine interaction and more satisfying user experiences, including video playback.
- Glcd_Init : Initializes the Glcd module
- Glcd_Set_Side: Selects the Glcd side. Example, Glcd_Set_Side(0) and Glcd_Set_Side(62) both select the left side of the GLCD. Values from 64-127, such as Glcd_Set_Side(67), selects the right side of the GLCD.
- Glcd_Set_X : Sets x-axis position from the left border of Glcd within the selected side. Example, Glcd_Set_X(25).
- Glcd_Set_Page : Selects page (0-7) of the Glcd.
- Glcd_Read_Data : Reads one byte of data from the current location of Glcd memory and moves to the next location.
- Glcd_Write_Data : Writes one byte of data from the current location of Glcd memory and moves to the next location.
Advanced routines:
- Glcd_Fill : Fills GLCD display RAM with a byte pattern. If the byte is 0, it will clear the display. If it is 0xFF, then it will fill the entire display with 1.
- Glcd_Dot : Draws a dot on Glcd at given coordinates with a specified color. It is used as Glcd_Dot(x, y,
color
), where x = 0-127, and y=0-63, andcolor
= 0-2. The parametercolor
determines a dot state: 0 clears dot, 1 puts a dot, and 2 inverts the dot state. - Glcd_Line : Draws a line joining two specified point coordinates and a given color value (0-2).
- Glcd_V_Line : Draws a vertical line passing through two points with the same x-coordinate. It also accepts color parameter.
- Glcd_H_Line : Draws a horizontal line passing through two points with the same y-coordinate. It also accepts color parameter.
- Glcd_Rectangle : Draws a rectangle with specified top left and bottom right corner coordinates. It also accepts color parameter.
- Glcd_Box : Draws a box with specified top left and bottom right corner coordinates. Unlike in Glcd_Rectangle, the color parameter here is the fill color of the box.
- Glcd_Circle : Draws a circle with specified center coordinates and radius. It also accepts color parameter.
- Glcd_Set_Font: As it was mentioned earlier in Part1, KS0108 controller does not have a built-in character generator and therefore fonts must be written in the firmware of the external microcontroller. This is a time consuming task as you need to determine data values for each letter to display. For simplicity, mikroElektronika provides the following demo fonts with mikroC Pro for PIC compiler.
Font_Glcd_System3x5
Font_Glcd_System5x7
Font_Glcd_5x7
Font_Glcd_Character8x7
These fonts are used by Glcd_Write_Char and Glcd_Write_Text functions (defined below) to display character and text. The syntax for defining font is,
Glcd_Set_Font (const char *activeFont, unsigned short aFontWidth, unsigned short aFontHeight, unsigned int aFontOffs);
where parameters are: