Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: HD44780-LCD_with_Bluetooth
Fork of TextLCD by
Homepage
Examples¶
Hello world in custom font¶
#include "mbed.h"
#include "TextLCD.h"
int main() {
lcd=new TextLCD(D8, D9, D4, D5, D6, D7);
char c_H[]={0x1b,0x1b,0x1b,0x1f,0x1b,0x1b,0x1b,0x1b};
char c_e[]={0x0,0x0,0xe,0x1b,0x1f,0x18,0x18,0xf};
char c_l[]={0x6,0x6,0x6,0x6,0x6,0x6,0x6,0x6};
char c_o[]={0x0,0x0,0xe,0x1b,0x1b,0x1b,0x1b,0xe};
char c_W[]={0x1b,0x1b,0x1b,0x1b,0x1f,0x1f,0x1f,0x1b};
char c_r[]={0x0,0x0,0xe,0x1b,0x18,0x18,0x18,0x18};
char c_d[]={0x3,0x3,0xf,0x1b,0x1b,0x1b,0x1b,0xf};
lcd->defineChar(1, c_H);
lcd->putc(1);
lcd->defineChar(2, c_e);
lcd->putc(2);
lcd->defineChar(3, c_l);
lcd->putc(3);
lcd->putc(3);
lcd->defineChar(4, c_o);
lcd->putc(4);
lcd->putc(32);
lcd->defineChar(5, c_W);
lcd->putc(5);
lcd->putc(4);
lcd->defineChar(6, c_r);
lcd->putc(6);
lcd->putc(3);
lcd->defineChar(7, c_d);
lcd->putc(7);
while (1) {
}
}
Animated busy indicator¶
This animation only uses 1 of the 8 custom character slots, and can be used like a regular character in the output and will automatically animate in-place. Any number of the animated characters can be displayed on the display at once using this animation technique.
#include "mbed.h"
#include "TextLCD.h"
int main() {
lcd=new TextLCD(D8, D9, D4, D5, D6, D7);
//The 7 animation characters
char spin[]={ 0x4,0x4,0x4,0x4,0x4,0x4,0x4,0x0,
0x2,0x2,0x2,0x4,0x8,0x8,0x8,0x0,
0x1,0x2,0x2,0x4,0x8,0x8,0x10,0x0,
0x0,0x0,0x3,0x4,0x18,0x0,0x0,0x0,
0x0,0x0,0x0,0x1f,0x0,0x0,0x0,0x0,
0x0,0x0,0x18,0x4,0x3,0x0,0x0,0x0,
0x10,0x8,0x8,0x4,0x2,0x2,0x01,0x0
};
//Output text.
lcd->printf("\1 Please wait \1");
//Animation loop
int frame=0;
while (1) {
lcd->defineChar(1, spin+frame*8);
frame=(frame+1)%(sizeof(spin)/8);
wait(.14);
}
