This codebase example shows one way of implementing a blinking cursor on projects requiring a text input interface. The cursor looks like an underscore character that blinks at a predefined interval and at the correct location. The cursor is actually a line drawn with two alternating colours. To make this codebase example less complicated, a region on the display has to be defined. This region is the text box in which the cursor may move. The text box has a height equal to that of a single character only, and may contain up to 20 characters as determined by a constant in the code. The functions for the blinking action of the cursor use the x and y top-left coordinates of the text box, the height and width of the current font, and the current string character count to determine the correct location of the cursor. Feel free to modify this codebase example for your projects.


1. Compile the attached ViSi project and upload it to a uLCD-32PTU (or your target display). Copy the supporting files to a uSD mounted to the PC. Properly unmount the uSD card from the PC and mount it to the uLCD-32PTU.

2. The program should now run on the display module. See the video for more information.

Note: Limitations of this project:
1. This project was designed for a single line-text box only.
2. When replacing a character inside the string using the left and right arrow keys, the backspace button may not be used.

See the video for more information.

Attached Files