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
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); } }
SerialLCD.cpp@0:df5850d83ee5, 2011-02-13 (annotated)
- 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?
User | Revision | Line number | New contents of line |
---|---|---|---|
Phlaphead | 0:df5850d83ee5 | 1 | |
Phlaphead | 0:df5850d83ee5 | 2 | #include "SerialLCD.h" |
Phlaphead | 0:df5850d83ee5 | 3 | |
Phlaphead | 0:df5850d83ee5 | 4 | |
Phlaphead | 0:df5850d83ee5 | 5 | SerialLCD::SerialLCD(PinName tx, PinName rx) : |
Phlaphead | 0:df5850d83ee5 | 6 | Serial(tx, rx) |
Phlaphead | 0:df5850d83ee5 | 7 | { |
Phlaphead | 0:df5850d83ee5 | 8 | baud(LCD_BAUD); |
Phlaphead | 0:df5850d83ee5 | 9 | } |
Phlaphead | 0:df5850d83ee5 | 10 | |
Phlaphead | 0:df5850d83ee5 | 11 | |
Phlaphead | 0:df5850d83ee5 | 12 | void SerialLCD::clear() |
Phlaphead | 0:df5850d83ee5 | 13 | { |
Phlaphead | 0:df5850d83ee5 | 14 | putc(0xFE); |
Phlaphead | 0:df5850d83ee5 | 15 | putc(0x01); |
Phlaphead | 0:df5850d83ee5 | 16 | } |
Phlaphead | 0:df5850d83ee5 | 17 | |
Phlaphead | 0:df5850d83ee5 | 18 | void SerialLCD::setBacklight(int brightness) |
Phlaphead | 0:df5850d83ee5 | 19 | { |
Phlaphead | 0:df5850d83ee5 | 20 | putc(0x7C); |
Phlaphead | 0:df5850d83ee5 | 21 | putc(128+brightness); |
Phlaphead | 0:df5850d83ee5 | 22 | } |
Phlaphead | 0:df5850d83ee5 | 23 | |
Phlaphead | 0:df5850d83ee5 | 24 | void SerialLCD::setPosition(int row, int col) |
Phlaphead | 0:df5850d83ee5 | 25 | { |
Phlaphead | 0:df5850d83ee5 | 26 | int position = row == 0 ? (128 + col) : (192 + col); |
Phlaphead | 0:df5850d83ee5 | 27 | putc(0xFE); |
Phlaphead | 0:df5850d83ee5 | 28 | putc(position); |
Phlaphead | 0:df5850d83ee5 | 29 | } |
Phlaphead | 0:df5850d83ee5 | 30 | |
Phlaphead | 0:df5850d83ee5 | 31 | void SerialLCD::setVisible(bool visible) |
Phlaphead | 0:df5850d83ee5 | 32 | { |
Phlaphead | 0:df5850d83ee5 | 33 | putc(0xFE); |
Phlaphead | 0:df5850d83ee5 | 34 | putc(visible ? 0x0C : 0x08); |
Phlaphead | 0:df5850d83ee5 | 35 | } |
Phlaphead | 0:df5850d83ee5 | 36 | |
Phlaphead | 0:df5850d83ee5 | 37 | void SerialLCD::scrollLeft() |
Phlaphead | 0:df5850d83ee5 | 38 | { |
Phlaphead | 0:df5850d83ee5 | 39 | putc(0xFE); |
Phlaphead | 0:df5850d83ee5 | 40 | putc(0x18); |
Phlaphead | 0:df5850d83ee5 | 41 | } |
Phlaphead | 0:df5850d83ee5 | 42 | |
Phlaphead | 0:df5850d83ee5 | 43 | void SerialLCD::scrollRight() |
Phlaphead | 0:df5850d83ee5 | 44 | { |
Phlaphead | 0:df5850d83ee5 | 45 | putc(0xFE); |
Phlaphead | 0:df5850d83ee5 | 46 | putc(0x1C); |
Phlaphead | 0:df5850d83ee5 | 47 | } |
Phlaphead | 0:df5850d83ee5 | 48 |