SparkFunSerialGraphicLCD.cpp

Committer:
chag
Date:
2012-02-16
Revision:
1:30c16204be60
Parent:
0:4b9e26cee71f
Child:
2:376f8a0544be

File content as of revision 1:30c16204be60:

#include "stdarg.h"
#include "mbed.h"
#include "SparkFunSerialGraphicLCD.h"


SparkFunSerialGraphicLCD::SparkFunSerialGraphicLCD(PinName tx, PinName rx = NC) : MySerial(tx, rx) {
    MySerial.baud(115200);
    wait_ms(1100);
    clear();
}

void SparkFunSerialGraphicLCD::clear() {
    MySerial.putc(0x7C);
    MySerial.putc(0x00);
}

void SparkFunSerialGraphicLCD::demo() {
    MySerial.putc(0x7C);
    MySerial.putc(0x04);
}

void SparkFunSerialGraphicLCD::toggleReverse() {
    MySerial.putc(0x7C);
    MySerial.putc(0x12);
}

void SparkFunSerialGraphicLCD::toggleSplash() {
    MySerial.putc(0x7C);
    MySerial.putc(0x13);
}

void SparkFunSerialGraphicLCD::setBacklight(unsigned char intensity) {
    MySerial.putc(0x7C);
    MySerial.putc(0x02);
    MySerial.putc(intensity);
}

/*void setBaud() {
}*/

void SparkFunSerialGraphicLCD:setCursor(unsigned char row, unsigned char column) {
    MySerial.putc(0x7C);
    MySerial.putc(0x18);
    MySerial.putc(row);
    MySerial.putc(0x7C);
    MySerial.putc(0x19);
    MySerial.putc(column);
    
}

void SparkFunSerialGraphicLCD::setPixel(unsigned char x, unsigned char y, bool set) {
    MySerial.putc(0x7C);
    MySerial.putc(0x10);
    MySerial.putc(x);
    MySerial.putc(y);
    MySerial.putc(set);
}

void SparkFunSerialGraphicLCD::drawLine(unsigned char x0, unsigned char y0, unsigned char x1, unsigned char y1, bool set) {
    MySerial.putc(0x7C);
    MySerial.putc(0x0C);
    MySerial.putc(x0);
    MySerial.putc(y0);
    MySerial.putc(x1);
    MySerial.putc(y1);
    MySerial.putc(set);
}

void SparkFunSerialGraphicLCD::drawCircle(unsigned char x, unsigned char y, unsigned char radius, bool set) {
    MySerial.putc(0x7C);
    MySerial.putc(0x03);
    MySerial.putc(x);
    MySerial.putc(y);
    MySerial.putc(radius);
    MySerial.putc(set);
}

void SparkFunSerialGraphicLCD::drawBox(unsigned char x0, unsigned char y0, unsigned char x1, unsigned char y1, bool set) {
    MySerial.putc(0x7C);
    MySerial.putc(0x0F);
    MySerial.putc(x0);
    MySerial.putc(y0);
    MySerial.putc(x1);
    MySerial.putc(y1);
    MySerial.putc(set);
}

void SparkFunSerialGraphicLCD::eraseBlock(unsigned char x0, unsigned char y0, unsigned char x1, unsigned char y1) {
    MySerial.putc(0x7C);
    MySerial.putc(0x05);
    MySerial.putc(x0);
    MySerial.putc(y0);
    MySerial.putc(x1);
    MySerial.putc(y1);
}

void SparkFunSerialGraphicLCD::printf(const char *msg, ...) {
    va_list args;
    va_start(args, msg);    
    MySerial.printf(msg, va_arg(args, char*));
    va_end(args);
}