Rev 3 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3 | Rev 4 | ||
---|---|---|---|
Line 55... | Line 55... | ||
55 | /*=========================================================================*/ |
55 | /*=========================================================================*/ |
56 | 56 | ||
57 | 57 | ||
58 | // the 1106 has a RAM width of 128 |
58 | // the 1106 has a RAM width of 128 |
59 | #if defined SSD1306_128_64 |
59 | #if defined SSD1306_128_64 |
- | 60 | // 0.9 inch display |
|
60 | #define SSD1306_LCDWIDTH 128 |
61 | #define SSD1306_LCDWIDTH 128 |
61 | #define SSD1306_LCDHEIGHT 64 |
62 | #define SSD1306_LCDHEIGHT 64 |
62 | #define SSD1306_RAMWIDTH 128 |
63 | #define SSD1306_RAMWIDTH 128 |
63 | #elif defined SSD1306_128_32 |
- | |
64 | #define SSD1306_LCDWIDTH 128 |
- | |
65 | #define SSD1306_LCDHEIGHT 32 |
- | |
66 | #define SSD1306_RAMWIDTH 128 |
- | |
67 | #elif defined SSD1306_132_64 |
64 | #elif defined SSD1306_132_64 |
- | 65 | // 1.3 inch display |
|
68 | #define SSD1306_LCDWIDTH 128 |
66 | #define SSD1306_LCDWIDTH 128 |
69 | #define SSD1306_LCDHEIGHT 64 |
67 | #define SSD1306_LCDHEIGHT 64 |
70 | #define SSD1306_RAMWIDTH 132 |
68 | #define SSD1306_RAMWIDTH 132 |
- | 69 | #elif defined SSD1306_128_32 |
|
- | 70 | #define SSD1306_LCDWIDTH 128 |
|
- | 71 | #define SSD1306_LCDHEIGHT 32 |
|
- | 72 | #define SSD1306_RAMWIDTH 128 |
|
71 | #else |
73 | #else |
72 | #error "At least one SSD1306 display must be specified in SSD1306.h" |
74 | #error "At least one SSD1306 display must be specified in SSD1306.h" |
73 | #endif |
75 | #endif |
74 | 76 | ||
75 | #define SSD1306_SETCONTRAST 0x81 |
77 | #define SSD1306_SETCONTRAST 0x81 |
Line 116... | Line 118... | ||
116 | #define SSD1306_RIGHT_HORIZONTAL_SCROLL 0x26 |
118 | #define SSD1306_RIGHT_HORIZONTAL_SCROLL 0x26 |
117 | #define SSD1306_LEFT_HORIZONTAL_SCROLL 0x27 |
119 | #define SSD1306_LEFT_HORIZONTAL_SCROLL 0x27 |
118 | #define SSD1306_VERTICAL_AND_RIGHT_HORIZONTAL_SCROLL 0x29 |
120 | #define SSD1306_VERTICAL_AND_RIGHT_HORIZONTAL_SCROLL 0x29 |
119 | #define SSD1306_VERTICAL_AND_LEFT_HORIZONTAL_SCROLL 0x2A |
121 | #define SSD1306_VERTICAL_AND_LEFT_HORIZONTAL_SCROLL 0x2A |
120 | 122 | ||
121 | - | ||
122 | extern const uint16_t WIDTH; |
123 | extern const uint16_t WIDTH; |
123 | extern const uint16_t HEIGHT; |
124 | extern const uint16_t HEIGHT; |
124 | extern uint8_t display_buffer[]; |
125 | extern uint8_t display_buffer[]; |
125 | 126 | ||
126 | extern uint8_t getRotation(void); |
127 | extern uint8_t getRotation(void); |
127 | extern int16_t width(void); |
128 | extern int16_t width(void); |
128 | extern int16_t height(void); |
129 | extern int16_t height(void); |
129 | 130 | ||
130 | - | ||
131 | /* stolen from AdaFruit class and converted to C */ |
131 | /* stolen from AdaFruit class and converted to C */ |
132 | void ssd1306_begin(uint8_t vccstate, uint8_t i2caddr); |
132 | void ssd1306_begin(uint8_t vccstate, uint8_t i2caddr); |
133 | 133 | ||
134 | extern void clearDisplay(void); |
134 | extern void clearDisplay(void); |
135 | extern void invertDisplay(uint8_t i); |
135 | extern void invertDisplay(uint8_t i); |
Line 142... | Line 142... | ||
142 | extern void startscrolldiagleft(uint8_t start, uint8_t stop); |
142 | extern void startscrolldiagleft(uint8_t start, uint8_t stop); |
143 | extern void stopscroll(void); |
143 | extern void stopscroll(void); |
144 | 144 | ||
145 | extern void dim(uint8_t contrast); |
145 | extern void dim(uint8_t contrast); |
146 | 146 | ||
147 | extern void drawPixel(int16_t x, int16_t y, uint16_t color); |
147 | extern void drawPixel(int16_t x, int16_t y, uint16_t color); |
148 | 148 | ||
149 | extern void drawLine(int16_t x1, int16_t y1, int16_t x2, int16_t y2, uint8_t color); |
149 | extern void drawLine(int16_t x1, int16_t y1, int16_t x2, int16_t y2, uint8_t color); |
150 | 150 | ||
151 | extern void select_display(int i) ; // select physical display [i] |
151 | extern void select_display(int i) ; // select physical display [i] |
152 | 152 | ||
153 | extern inline uint8_t * display_address(void) ; |
153 | extern inline uint8_t * display_address(void) ; |