SparkFun SerLCD v2.5 controller; Copied from the Arduino.cc SerLCD library; http://playground.arduino.cc/Code/SerLCD

Dependents:   ForEhab Serial_HelloWorld_Mbed ForOfek

Fork of LCDSerial by Robert Ellis

Test Code

#include "mbed.h"
#include "SerialLCD.h"

SerialLCD lcd(PTC4);

uint8_t smiley[8] = {
    0x00,
    0x11,
    0x00,
    0x00,
    0x11,
    0x0E,
    0x00
};

int main() {
    lcd.clear();
    
    while(true) {
        /// Test code ///
        lcd.clearLine(1);
        lcd.printf("Full Bright Test");
        lcd.setBrightness(30);
        wait(3);
        
        lcd.clearLine(1);
        lcd.printf("Blink Test");
        lcd.setCursor(2, 1);
        lcd.printf("Blinking");
        lcd.blink();
        wait(3);
        
        lcd.clearLine(1);
        lcd.printf("Clear Test");
        wait(2);
        lcd.clear();
        wait(3);
        
        lcd.clearLine(1);
        lcd.printf("New Char Test");
        lcd.setCursor(2, 1);
        lcd.createChar(1, smiley);
        lcd.printCustomChar(1);
        wait(3);
        
        lcd.clearLine(1);
        lcd.printf("Cursor Test");
        lcd.setCursor(2, 1);
        lcd.cursor();
        wait(3);
        
        lcd.clearLine(1);
        lcd.printf("Display Test");
        lcd.noDisplay();
        wait(2);
        lcd.display();
        wait(3);
        
        lcd.clearLine(1);
        lcd.printf("Home Test");
        lcd.setCursor(2, 1);
        lcd.home();
        lcd.printf("Got home");
        wait(3);
        
        lcd.leftToRight();
        lcd.clearLine(1);
        lcd.printf("LeftToRight Test");
        wait(3);
        
        lcd.clearLine(1);
        lcd.printf("noBlink Test");
        lcd.setCursor(2, 1);
        lcd.noBlink();
        wait(3);
        
        lcd.clearLine(1);
        lcd.printf("noCursor Test");
        lcd.setCursor(2, 1);
        lcd.noCursor();
        wait(3);
        
        lcd.rightToLeft();
        lcd.clearLine(1);
        lcd.printf("rightToLeft Test");
        wait(3);
        
        lcd.clearLine(1);
        lcd.printf("Half Bright Test");
        lcd.setBrightness(15);
        wait(3);
    }
}
Revision:
0:df5850d83ee5
Child:
1:96f055419f71
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/SerialLCD.cpp	Sun Feb 13 15:16:20 2011 +0000
@@ -0,0 +1,48 @@
+
+#include "SerialLCD.h"
+
+
+SerialLCD::SerialLCD(PinName tx, PinName rx) : 
+    Serial(tx, rx)
+{
+    baud(LCD_BAUD);
+}
+
+
+void SerialLCD::clear()
+{
+    putc(0xFE);
+    putc(0x01);
+}
+
+void SerialLCD::setBacklight(int brightness)
+{
+    putc(0x7C);
+    putc(128+brightness);
+}
+
+void SerialLCD::setPosition(int row, int col)
+{
+    int position = row == 0 ? (128 + col) : (192 + col);
+    putc(0xFE);
+    putc(position);
+}
+
+void SerialLCD::setVisible(bool visible)
+{
+    putc(0xFE);
+    putc(visible ? 0x0C : 0x08);
+}
+
+void SerialLCD::scrollLeft()
+{
+    putc(0xFE);
+    putc(0x18);
+}
+
+void SerialLCD::scrollRight()
+{
+    putc(0xFE);
+    putc(0x1C);
+}
+    
\ No newline at end of file