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);
    }
}
Committer:
Phlaphead
Date:
Sun Feb 13 15:16:20 2011 +0000
Revision:
0:df5850d83ee5
Child:
1:96f055419f71
First revision

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Phlaphead 0:df5850d83ee5 1 #ifndef SerialLCD_h
Phlaphead 0:df5850d83ee5 2 #define SerialLCD_h
Phlaphead 0:df5850d83ee5 3
Phlaphead 0:df5850d83ee5 4 #include "mbed.h"
Phlaphead 0:df5850d83ee5 5
Phlaphead 0:df5850d83ee5 6 #define LCD_WIDTH 16
Phlaphead 0:df5850d83ee5 7 #define LCD_BAUD 9600
Phlaphead 0:df5850d83ee5 8
Phlaphead 0:df5850d83ee5 9 /**
Phlaphead 0:df5850d83ee5 10 * SparkFun SerLCD v2.5 Controller
Phlaphead 0:df5850d83ee5 11 */
Phlaphead 0:df5850d83ee5 12 class SerialLCD : public Serial
Phlaphead 0:df5850d83ee5 13 {
Phlaphead 0:df5850d83ee5 14 public:
Phlaphead 0:df5850d83ee5 15
Phlaphead 0:df5850d83ee5 16 /**
Phlaphead 0:df5850d83ee5 17 * Constructor.
Phlaphead 0:df5850d83ee5 18 * @param tx Connected to rx pin of LCD
Phlaphead 0:df5850d83ee5 19 * @param rx Not connected but needs to be specified for serial interface.
Phlaphead 0:df5850d83ee5 20 */
Phlaphead 0:df5850d83ee5 21 SerialLCD(PinName tx, PinName rx);
Phlaphead 0:df5850d83ee5 22
Phlaphead 0:df5850d83ee5 23 /**
Phlaphead 0:df5850d83ee5 24 * Clear the LCD.
Phlaphead 0:df5850d83ee5 25 */
Phlaphead 0:df5850d83ee5 26 void clear();
Phlaphead 0:df5850d83ee5 27
Phlaphead 0:df5850d83ee5 28 /**
Phlaphead 0:df5850d83ee5 29 * Set backlight brightness;
Phlaphead 0:df5850d83ee5 30 */
Phlaphead 0:df5850d83ee5 31 void setBacklight(int brightness);
Phlaphead 0:df5850d83ee5 32
Phlaphead 0:df5850d83ee5 33 /**
Phlaphead 0:df5850d83ee5 34 * Set cursor position.
Phlaphead 0:df5850d83ee5 35 */
Phlaphead 0:df5850d83ee5 36 void setPosition(int row, int col);
Phlaphead 0:df5850d83ee5 37
Phlaphead 0:df5850d83ee5 38 /**
Phlaphead 0:df5850d83ee5 39 * Make LCD text visible or invisible.
Phlaphead 0:df5850d83ee5 40 */
Phlaphead 0:df5850d83ee5 41 void setVisible(bool visible);
Phlaphead 0:df5850d83ee5 42
Phlaphead 0:df5850d83ee5 43 /**
Phlaphead 0:df5850d83ee5 44 * Start scrolling to the left.
Phlaphead 0:df5850d83ee5 45 */
Phlaphead 0:df5850d83ee5 46 void scrollLeft();
Phlaphead 0:df5850d83ee5 47
Phlaphead 0:df5850d83ee5 48 /**
Phlaphead 0:df5850d83ee5 49 * Start scrolling to the right.
Phlaphead 0:df5850d83ee5 50 */
Phlaphead 0:df5850d83ee5 51 void scrollRight();
Phlaphead 0:df5850d83ee5 52
Phlaphead 0:df5850d83ee5 53
Phlaphead 0:df5850d83ee5 54 };
Phlaphead 0:df5850d83ee5 55
Phlaphead 0:df5850d83ee5 56
Phlaphead 0:df5850d83ee5 57 #endif