Revision:
3:889836485429
Parent:
2:376f8a0544be
Child:
4:0c943e6ba349
--- a/SparkFunSerialGraphicLCD.cpp	Sat Feb 18 03:22:13 2012 +0000
+++ b/SparkFunSerialGraphicLCD.cpp	Mon Feb 20 03:14:16 2012 +0000
@@ -5,7 +5,7 @@
 
 SparkFunSerialGraphicLCD::SparkFunSerialGraphicLCD(PinName tx, PinName rx = NC) : MySerial(tx, rx) {
     MySerial.baud(115200);
-    wait_ms(1100);
+    wait_ms(1500);
     clear();
 }
 
@@ -14,46 +14,69 @@
     MySerial.putc(0x00);
 }
 
-void SparkFunSerialGraphicLCD::demo() {
-    MySerial.putc(0x7C);
-    MySerial.putc(0x04);
-}
-
-void SparkFunSerialGraphicLCD::toggleReverse() {
+void SparkFunSerialGraphicLCD::setDebug(unsigned char level) {
     MySerial.putc(0x7C);
-    MySerial.putc(0x12);
-}
-
-void SparkFunSerialGraphicLCD::toggleSplash() {
-    MySerial.putc(0x7C);
-    MySerial.putc(0x13);
+    MySerial.putc(0x01);
+    MySerial.putc(level);
 }
 
 void SparkFunSerialGraphicLCD::setBacklight(unsigned char intensity) {
     MySerial.putc(0x7C);
     MySerial.putc(0x02);
     MySerial.putc(intensity);
+} 
+
+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::toggleCRLF() {
+    MySerial.putc(0x7C);
+    MySerial.putc(0x04);
+}
+
+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 setBaud() {
-}*/
-
-void SparkFunSerialGraphicLCD::setCursor(unsigned char row, unsigned char column) {
+void SparkFunSerialGraphicLCD::reset() {
     MySerial.putc(0x7C);
-    MySerial.putc(0x18);
-    MySerial.putc(row);
+    MySerial.putc(0x06);
+}
+
+void SparkFunSerialGraphicLCD::setBaud() {
     MySerial.putc(0x7C);
-    MySerial.putc(0x19);
-    MySerial.putc(column);
-    
+    MySerial.putc(0x07);
 }
 
-void SparkFunSerialGraphicLCD::setPixel(unsigned char x, unsigned char y, bool set) {
+void SparkFunSerialGraphicLCD::toggleFont() {
+    MySerial.putc(0x7C);
+    MySerial.putc(0x08);
+}
+
+void SparkFunSerialGraphicLCD::setFontMode(unsigned char mode) {
     MySerial.putc(0x7C);
-    MySerial.putc(0x10);
+    MySerial.putc(0x0A);
+    MySerial.putc(mode);
+}
+
+void SparkFunSerialGraphicLCD::drawSprite(unsigned char x, unsigned char y, unsigned char sprite, unsigned char mode) {
+    MySerial.putc(0x7C);
+    MySerial.putc(0x0B);
     MySerial.putc(x);
     MySerial.putc(y);
-    MySerial.putc(set);
+    MySerial.putc(sprite);
+    MySerial.putc(mode);
 }
 
 void SparkFunSerialGraphicLCD::drawLine(unsigned char x0, unsigned char y0, unsigned char x1, unsigned char y1, bool set) {
@@ -66,13 +89,13 @@
     MySerial.putc(set);
 }
 
-void SparkFunSerialGraphicLCD::drawCircle(unsigned char x, unsigned char y, unsigned char radius, bool set) {
+void SparkFunSerialGraphicLCD::uploadSprite(unsigned char sprite, unsigned char width, unsigned char height, unsigned char* data) {
+    error("method not implemented");
     MySerial.putc(0x7C);
-    MySerial.putc(0x03);
-    MySerial.putc(x);
-    MySerial.putc(y);
-    MySerial.putc(radius);
-    MySerial.putc(set);
+    MySerial.putc(0x0D);
+    MySerial.putc(sprite);
+    MySerial.putc(width);
+    MySerial.putc(height);
 }
 
 void SparkFunSerialGraphicLCD::drawBox(unsigned char x0, unsigned char y0, unsigned char x1, unsigned char y1, bool set) {
@@ -85,18 +108,63 @@
     MySerial.putc(set);
 }
 
-void SparkFunSerialGraphicLCD::eraseBlock(unsigned char x0, unsigned char y0, unsigned char x1, unsigned char y1) {
+void SparkFunSerialGraphicLCD::setPixel(unsigned char x, unsigned char y, bool set) {
     MySerial.putc(0x7C);
-    MySerial.putc(0x05);
+    MySerial.putc(0x10);
+    MySerial.putc(x);
+    MySerial.putc(y);
+    MySerial.putc(set);
+}
+void SparkFunSerialGraphicLCD::drawFilledBox(unsigned char x0, unsigned char y0, unsigned char x1, unsigned char y1, unsigned char fill) {
+    MySerial.putc(0x7C);
+    MySerial.putc(0x12);
     MySerial.putc(x0);
     MySerial.putc(y0);
     MySerial.putc(x1);
     MySerial.putc(y1);
+    MySerial.putc(fill);
 }
 
+
+void SparkFunSerialGraphicLCD::toggleReverse() {
+    MySerial.putc(0x7C);
+    MySerial.putc(0x14);
+}
+
+void SparkFunSerialGraphicLCD::toggleSplash() {
+    MySerial.putc(0x7C);
+    MySerial.putc(0x15);
+}
+
+void SparkFunSerialGraphicLCD::bitblt(unsigned char x, unsigned char y, unsigned char mode, unsigned char w, unsigned char h, unsigned char* data) {
+    error("method not implemented");
+    MySerial.putc(0x7C);
+    MySerial.putc(0x0D);
+    MySerial.putc(x);
+    MySerial.putc(y);
+    MySerial.putc(mode);
+    MySerial.putc(w);
+    MySerial.putc(h);
+}
+
+void SparkFunSerialGraphicLCD::setCursorX(unsigned char x) {
+    MySerial.putc(0x7C);
+    MySerial.putc(0x18);
+    MySerial.putc(x);
+}
+
+void SparkFunSerialGraphicLCD::setCursorY(unsigned char y) {
+    MySerial.putc(0x7C);
+    MySerial.putc(0x19);
+    MySerial.putc(y);
+}
+
+
+
 void SparkFunSerialGraphicLCD::printf(const char *msg, ...) {
     va_list args;
     va_start(args, msg);    
     MySerial.printf(msg, va_arg(args, char*));
     va_end(args);
+    wait_ms(100);
 }