work fine

Dependencies:   mbed

Revision:
0:5ca227682ee7
Child:
1:14b7c3a3ec60
diff -r 000000000000 -r 5ca227682ee7 Microduino_MatrixBase.h
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Microduino_MatrixBase.h	Tue May 31 15:32:03 2016 +0000
@@ -0,0 +1,95 @@
+// 本作品采用知识共享 署名-非商业性使用-相同方式共享 3.0 未本地化版本 许可协议进行许可
+// 访问 http://creativecommons.org/licenses/by-nc-sa/3.0/ 查看该许可协议
+// ==============
+
+// 版权所有:
+// @老潘orz  wasdpkj@hotmail.com
+// ==============
+
+// Microduino-IDE
+// ==============
+// Microduino Getting start:
+// http://www.microduino.cc/download/
+
+// Microduino IDE Support:
+// https://github.com/wasdpkj/Microduino-IDE-Support/
+
+// ==============
+// Microduino wiki:
+// http://wiki.microduino.cc
+
+// ==============
+// E-mail:
+// Kejia Pan
+// pankejia@microduino.cc
+
+// ==============
+// Weibo:
+// @老潘orz
+
+#ifndef Microduino_Matrix_base_h
+#define Microduino_Matrix_base_h
+#if 0
+#if (ARDUINO >= 100)
+#include "Arduino.h"
+#include "Print.h"
+#else
+#include "WProgram.h"
+#endif
+#endif
+#include "Fonts.h"
+//#include <Wire.h>
+//#include <avr/pgmspace.h>
+#include "mbed.h"
+#include "Printit.h"
+
+#define MatrixPix_X 8
+#define MatrixPix_Y 8
+
+class LedControl : public Print
+{
+public:
+    LedControl();
+    //    LedControl(uint8_t _addr);
+    uint8_t getDeviceAddr();
+    void setDeviceAddr(uint8_t _addr);
+
+    void clearDisplay();
+
+    void setColor(uint8_t value_r, uint8_t value_g, uint8_t value_b);
+    void clearColor();
+
+    void setFontMode(bool _Mode);
+
+    void setLed(uint8_t row, uint8_t column, bool state);
+    void setLedColor(uint8_t row, uint8_t column, uint8_t value_r, uint8_t value_g, uint8_t value_b);
+    void setLedColorFast(uint8_t row, uint8_t column, uint8_t value_r, uint8_t value_g, uint8_t value_b);
+
+    void setFastMode();
+    void clearFastMode();
+
+    void setRow(uint8_t row, uint8_t value);
+    void setColumn(uint8_t col, uint8_t value);
+
+    void setCursor(int16_t x, int16_t y);
+    virtual size_t write(uint8_t);
+    void displayChar(int8_t row, int8_t col, char _charIndex);
+    void writeString(int time, char * displayString);
+
+    void (*Fun)();
+
+protected:
+    uint8_t Devices_addr;
+    bool Fast_mode;
+    bool Font_mode;
+    uint8_t value_color[3];
+    int16_t cursor_x, cursor_y;
+    int16_t _width, _height; // Display w/h as modified by current rotation
+
+    uint8_t status[64];
+private :
+    uint8_t matrixIndex;               // index into the channel data for this key
+};
+
+extern uint8_t pgm_read_byte(uint8_t *p);
+#endif