Lightweight proportional text library for C12832 LCD. Easy to modify, fast, robust and compact. Nice font, good for text driven menus, messages, etc. Fell free to use and modify in any projects.

Dependents:   app-board-lcd128

Documentation will be here later.

Usage sample:

Import programapp-board-lcd128

Sample usage of lightweight C12832 LCD library

Revision:
5:ff31feb7d966
Parent:
4:1bd241d1fad0
Child:
6:5cd32671a837
diff -r 1bd241d1fad0 -r ff31feb7d966 lcd128lib.cpp
--- a/lcd128lib.cpp	Mon May 26 20:14:58 2014 +0000
+++ b/lcd128lib.cpp	Wed May 28 10:09:01 2014 +0000
@@ -15,7 +15,7 @@
 
 // SPI writer with command / data switch
 
-void lcd128::write(char data, bool cmd)
+void lcd128::write(unsigned char data, bool cmd)
 {
     a0  =  cmd ? 0 : 1;
     cs  = 0;
@@ -125,7 +125,7 @@
 
 void lcd128::Update()
 {   
-    char* p = buffer;
+    unsigned char* p = buffer;
     
     for(int j=0; j<LCD_Y; j++) {
         write(0x00, true);
@@ -168,10 +168,10 @@
 // Write one 8bit row 
 // with inversion and XY update
 
-void lcd128::Write(char byte)
+void lcd128::Write(unsigned char byte)
 {
     if (underline) byte |= 0x80;
-    buffer[X+Y*LCD_X] = invert?(~byte):byte;
+    buffer[X+Y*LCD_X] = invert ? (~byte) : byte;
     
     if (++X > (LCD_X-1)) {
         X=0;
@@ -181,14 +181,14 @@
 
 // Write array of 8bit rows
 
-void lcd128::Write(char* data, int size)
+void lcd128::Write(unsigned char * data, int size)
 {
     for (int i=0; i<size; i++) Write(data[i]);
 }
 
 // Write array of 8bit rows, twice each
 
-void lcd128::Write2(char* data, int size)
+void lcd128::Write2(unsigned char * data, int size)
 {
     for (int i=0; i<size; i++) {
         Write(data[i]);
@@ -198,7 +198,7 @@
 
 // Write 8bit row 'count' times
 
-void lcd128::Write(char byte, int count)
+void lcd128::Write(unsigned char byte, int count)
 {
     for (int i=0; i<count; i++) Write(byte);
 }
@@ -223,13 +223,13 @@
     }
 
     if (bold) {
-        Write2( (char*) font.glyphs[chr], (int) font.widths[chr] );
+        Write2( (unsigned char*) font.glyphs[chr], (int) font.widths[chr] );
         if (X != 0) {
             Write(0);
             Write(0);
         }
     } else {
-        Write( (char*) font.glyphs[chr], (int) font.widths[chr] );
+        Write( (unsigned char*) font.glyphs[chr], (int) font.widths[chr] );
         if (X != 0) Write(0);
     }
 }