A derived version of the BSD licensed Adafrut GFX library for the SSD1306 controller for an OLED 128x32 or 128x64 display using SPI or I2C.

Dependents:   servo_sensor ArchPro_TFT BLE_Display SSD1306_demo ... more

Import libraryAdafruit_GFX

A derived version of the BSD licensed Adafrut GFX library for the SSD1306 controller for an OLED 128x32 or 128x64 display using SPI or I2C.

This is an SPI or I2C driver, font, and graphics drawing library as initially provided by Adafruit which has been modified for use in the mbed envionment.

128x32 OLED Display

Example

/*
 *  Copyright (c) 2012 Neal Horman - http://www.wanlink.com
 *  
 *  License: MIT open source (http://opensource.org/licenses/MIT)
 *      Summary;
 *      Use / modify / distribute / publish it how you want and 
 *      if you use it, or don't, you can't hold me liable for how
 *      it does or doesn't work.
 *      If it doesn't work how you want, don't use it, or change
 *      it so that it does work.
 */
 
#include "mbed.h"
#include "Adafruit_SSD1306.h"

DigitalOut myled(LED1);

// an SPI sub-class that provides a constructed default
class SPIPreInit : public SPI
{
public:
    SPIPreInit(PinName mosi, PinName miso, PinName clk) : SPI(mosi,miso,clk)
    {
        format(8,3);
        frequency(2000000);
    };
};

// an I2C sub-class that provides a constructed default
class I2CPreInit : public I2C
{
public:
    I2CPreInit(PinName sda, PinName scl) : I2C(sda, scl)
    {
        frequency(400000);
        start();
    };
};

SPIPreInit gSpi(p5,NC,p7);
Adafruit_SSD1306_Spi gOled1(gSpi,p26,p25,p24);

I2CPreInit gI2C(p9,p10);
Adafruit_SSD1306_I2c gOled2(gI2C,p27);

int main()
{   uint16_t x=0;

    gOled1.printf("%ux%u OLED Display\r\n", gOled1.width(), gOled1.height());
    gOled2.printf("%ux%u OLED Display\r\n", gOled2.width(), gOled2.height());
    
    while(1)
    {
        myled = !myled;
        gOled1.printf("%u\r",x);
        gOled1.display();
        gOled2.printf("%u\r",x);
        gOled2.display();
        x++;
        wait(1.0);
    }
}
Committer:
nkhorman
Date:
Tue Oct 21 02:30:58 2014 +0000
Revision:
13:8f03f908f22a
Parent:
11:86909e6db3c8
Child:
15:77feec1c0684
flesh out the config defines

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nkhorman 0:c3dcd4c4983a 1 /*********************************************************************
nkhorman 0:c3dcd4c4983a 2 This is a library for our Monochrome OLEDs based on SSD1306 drivers
nkhorman 0:c3dcd4c4983a 3
nkhorman 0:c3dcd4c4983a 4 Pick one up today in the adafruit shop!
nkhorman 0:c3dcd4c4983a 5 ------> http://www.adafruit.com/category/63_98
nkhorman 0:c3dcd4c4983a 6
nkhorman 0:c3dcd4c4983a 7 These displays use SPI to communicate, 4 or 5 pins are required to
nkhorman 0:c3dcd4c4983a 8 interface
nkhorman 0:c3dcd4c4983a 9
nkhorman 0:c3dcd4c4983a 10 Adafruit invests time and resources providing this open source code,
nkhorman 0:c3dcd4c4983a 11 please support Adafruit and open-source hardware by purchasing
nkhorman 0:c3dcd4c4983a 12 products from Adafruit!
nkhorman 0:c3dcd4c4983a 13
nkhorman 0:c3dcd4c4983a 14 Written by Limor Fried/Ladyada for Adafruit Industries.
nkhorman 0:c3dcd4c4983a 15 BSD license, check license.txt for more information
nkhorman 0:c3dcd4c4983a 16 All text above, and the splash screen below must be included in any redistribution
nkhorman 0:c3dcd4c4983a 17 *********************************************************************/
nkhorman 0:c3dcd4c4983a 18
nkhorman 0:c3dcd4c4983a 19 /*
nkhorman 9:ddb97c9850a2 20 * Modified by Neal Horman 7/14/2012 for use in mbed
nkhorman 0:c3dcd4c4983a 21 */
nkhorman 0:c3dcd4c4983a 22
nkhorman 0:c3dcd4c4983a 23 #include "mbed.h"
nkhorman 0:c3dcd4c4983a 24 #include "Adafruit_SSD1306.h"
nkhorman 0:c3dcd4c4983a 25
nkhorman 9:ddb97c9850a2 26 #define SSD1306_SETCONTRAST 0x81
nkhorman 9:ddb97c9850a2 27 #define SSD1306_DISPLAYALLON_RESUME 0xA4
nkhorman 9:ddb97c9850a2 28 #define SSD1306_DISPLAYALLON 0xA5
nkhorman 9:ddb97c9850a2 29 #define SSD1306_NORMALDISPLAY 0xA6
nkhorman 9:ddb97c9850a2 30 #define SSD1306_INVERTDISPLAY 0xA7
nkhorman 9:ddb97c9850a2 31 #define SSD1306_DISPLAYOFF 0xAE
nkhorman 9:ddb97c9850a2 32 #define SSD1306_DISPLAYON 0xAF
nkhorman 9:ddb97c9850a2 33 #define SSD1306_SETDISPLAYOFFSET 0xD3
nkhorman 9:ddb97c9850a2 34 #define SSD1306_SETCOMPINS 0xDA
nkhorman 9:ddb97c9850a2 35 #define SSD1306_SETVCOMDETECT 0xDB
nkhorman 9:ddb97c9850a2 36 #define SSD1306_SETDISPLAYCLOCKDIV 0xD5
nkhorman 9:ddb97c9850a2 37 #define SSD1306_SETPRECHARGE 0xD9
nkhorman 9:ddb97c9850a2 38 #define SSD1306_SETMULTIPLEX 0xA8
nkhorman 9:ddb97c9850a2 39 #define SSD1306_SETLOWCOLUMN 0x00
nkhorman 9:ddb97c9850a2 40 #define SSD1306_SETHIGHCOLUMN 0x10
nkhorman 9:ddb97c9850a2 41 #define SSD1306_SETSTARTLINE 0x40
nkhorman 9:ddb97c9850a2 42 #define SSD1306_MEMORYMODE 0x20
nkhorman 9:ddb97c9850a2 43 #define SSD1306_COMSCANINC 0xC0
nkhorman 9:ddb97c9850a2 44 #define SSD1306_COMSCANDEC 0xC8
nkhorman 9:ddb97c9850a2 45 #define SSD1306_SEGREMAP 0xA0
nkhorman 9:ddb97c9850a2 46 #define SSD1306_CHARGEPUMP 0x8D
nkhorman 0:c3dcd4c4983a 47
nkhorman 0:c3dcd4c4983a 48 void Adafruit_SSD1306::begin(uint8_t vccstate)
nkhorman 0:c3dcd4c4983a 49 {
nkhorman 0:c3dcd4c4983a 50 rst = 1;
nkhorman 0:c3dcd4c4983a 51 // VDD (3.3V) goes high at start, lets just chill for a ms
nkhorman 0:c3dcd4c4983a 52 wait_ms(1);
nkhorman 0:c3dcd4c4983a 53 // bring reset low
nkhorman 0:c3dcd4c4983a 54 rst = 0;
nkhorman 0:c3dcd4c4983a 55 // wait 10ms
nkhorman 0:c3dcd4c4983a 56 wait_ms(10);
nkhorman 0:c3dcd4c4983a 57 // bring out of reset
nkhorman 0:c3dcd4c4983a 58 rst = 1;
nkhorman 0:c3dcd4c4983a 59 // turn on VCC (9V?)
nkhorman 9:ddb97c9850a2 60
nkhorman 9:ddb97c9850a2 61 command(SSD1306_DISPLAYOFF);
nkhorman 9:ddb97c9850a2 62 command(SSD1306_SETDISPLAYCLOCKDIV);
nkhorman 9:ddb97c9850a2 63 command(0x80); // the suggested ratio 0x80
nkhorman 9:ddb97c9850a2 64
nkhorman 9:ddb97c9850a2 65 command(SSD1306_SETMULTIPLEX);
nkhorman 9:ddb97c9850a2 66 command(_rawHeight-1);
nkhorman 9:ddb97c9850a2 67
nkhorman 9:ddb97c9850a2 68 command(SSD1306_SETDISPLAYOFFSET);
nkhorman 9:ddb97c9850a2 69 command(0x0); // no offset
nkhorman 9:ddb97c9850a2 70
nkhorman 9:ddb97c9850a2 71 command(SSD1306_SETSTARTLINE | 0x0); // line #0
nkhorman 9:ddb97c9850a2 72
nkhorman 9:ddb97c9850a2 73 command(SSD1306_CHARGEPUMP);
nkhorman 9:ddb97c9850a2 74 command((vccstate == SSD1306_EXTERNALVCC) ? 0x10 : 0x14);
nkhorman 9:ddb97c9850a2 75
nkhorman 9:ddb97c9850a2 76 command(SSD1306_MEMORYMODE);
nkhorman 9:ddb97c9850a2 77 command(0x00); // 0x0 act like ks0108
chrta 4:853097cfa773 78
nkhorman 9:ddb97c9850a2 79 command(SSD1306_SEGREMAP | 0x1);
nkhorman 9:ddb97c9850a2 80
nkhorman 9:ddb97c9850a2 81 command(SSD1306_COMSCANDEC);
nkhorman 9:ddb97c9850a2 82
nkhorman 9:ddb97c9850a2 83 command(SSD1306_SETCOMPINS);
nkhorman 9:ddb97c9850a2 84 command(_rawHeight == 32 ? 0x02 : 0x12); // TODO - calculate based on _rawHieght ?
nkhorman 9:ddb97c9850a2 85
nkhorman 9:ddb97c9850a2 86 command(SSD1306_SETCONTRAST);
nkhorman 9:ddb97c9850a2 87 command(_rawHeight == 32 ? 0x8F : ((vccstate == SSD1306_EXTERNALVCC) ? 0x9F : 0xCF) );
nkhorman 9:ddb97c9850a2 88
nkhorman 9:ddb97c9850a2 89 command(SSD1306_SETPRECHARGE);
nkhorman 9:ddb97c9850a2 90 command((vccstate == SSD1306_EXTERNALVCC) ? 0x22 : 0xF1);
nkhorman 9:ddb97c9850a2 91
nkhorman 9:ddb97c9850a2 92 command(SSD1306_SETVCOMDETECT);
nkhorman 9:ddb97c9850a2 93 command(0x40);
nkhorman 9:ddb97c9850a2 94
nkhorman 9:ddb97c9850a2 95 command(SSD1306_DISPLAYALLON_RESUME);
nkhorman 9:ddb97c9850a2 96
nkhorman 9:ddb97c9850a2 97 command(SSD1306_NORMALDISPLAY);
nkhorman 0:c3dcd4c4983a 98
nkhorman 9:ddb97c9850a2 99 command(SSD1306_DISPLAYON);
nkhorman 0:c3dcd4c4983a 100 }
nkhorman 0:c3dcd4c4983a 101
nkhorman 9:ddb97c9850a2 102 // Set a single pixel
nkhorman 0:c3dcd4c4983a 103 void Adafruit_SSD1306::drawPixel(int16_t x, int16_t y, uint16_t color)
nkhorman 0:c3dcd4c4983a 104 {
nkhorman 0:c3dcd4c4983a 105 if ((x < 0) || (x >= width()) || (y < 0) || (y >= height()))
nkhorman 0:c3dcd4c4983a 106 return;
nkhorman 0:c3dcd4c4983a 107
nkhorman 0:c3dcd4c4983a 108 // check rotation, move pixel around if necessary
nkhorman 0:c3dcd4c4983a 109 switch (getRotation())
nkhorman 0:c3dcd4c4983a 110 {
nkhorman 0:c3dcd4c4983a 111 case 1:
nkhorman 0:c3dcd4c4983a 112 swap(x, y);
nkhorman 0:c3dcd4c4983a 113 x = _rawWidth - x - 1;
nkhorman 0:c3dcd4c4983a 114 break;
nkhorman 0:c3dcd4c4983a 115 case 2:
nkhorman 0:c3dcd4c4983a 116 x = _rawWidth - x - 1;
nkhorman 0:c3dcd4c4983a 117 y = _rawHeight - y - 1;
nkhorman 0:c3dcd4c4983a 118 break;
nkhorman 0:c3dcd4c4983a 119 case 3:
nkhorman 0:c3dcd4c4983a 120 swap(x, y);
nkhorman 0:c3dcd4c4983a 121 y = _rawHeight - y - 1;
nkhorman 0:c3dcd4c4983a 122 break;
nkhorman 0:c3dcd4c4983a 123 }
nkhorman 0:c3dcd4c4983a 124
nkhorman 0:c3dcd4c4983a 125 // x is which column
nkhorman 0:c3dcd4c4983a 126 if (color == WHITE)
nkhorman 9:ddb97c9850a2 127 buffer[x+ (y/8)*_rawWidth] |= _BV((y%8));
nkhorman 9:ddb97c9850a2 128 else // else black
nkhorman 9:ddb97c9850a2 129 buffer[x+ (y/8)*_rawWidth] &= ~_BV((y%8));
nkhorman 0:c3dcd4c4983a 130 }
nkhorman 0:c3dcd4c4983a 131
nkhorman 0:c3dcd4c4983a 132 void Adafruit_SSD1306::invertDisplay(bool i)
nkhorman 0:c3dcd4c4983a 133 {
nkhorman 9:ddb97c9850a2 134 command(i ? SSD1306_INVERTDISPLAY : SSD1306_NORMALDISPLAY);
nkhorman 0:c3dcd4c4983a 135 }
nkhorman 0:c3dcd4c4983a 136
nkhorman 9:ddb97c9850a2 137 // Send the display buffer out to the display
nkhorman 9:ddb97c9850a2 138 void Adafruit_SSD1306::display(void)
nkhorman 0:c3dcd4c4983a 139 {
nkhorman 9:ddb97c9850a2 140 command(SSD1306_SETLOWCOLUMN | 0x0); // low col = 0
nkhorman 9:ddb97c9850a2 141 command(SSD1306_SETHIGHCOLUMN | 0x0); // hi col = 0
nkhorman 9:ddb97c9850a2 142 command(SSD1306_SETSTARTLINE | 0x0); // line #0
nkhorman 9:ddb97c9850a2 143 sendDisplayBuffer();
nkhorman 0:c3dcd4c4983a 144 }
nkhorman 0:c3dcd4c4983a 145
nkhorman 9:ddb97c9850a2 146 // Clear the display buffer. Requires a display() call at some point afterwards
nkhorman 9:ddb97c9850a2 147 void Adafruit_SSD1306::clearDisplay(void)
nkhorman 0:c3dcd4c4983a 148 {
nkhorman 9:ddb97c9850a2 149 std::fill(buffer.begin(),buffer.end(),0);
nkhorman 0:c3dcd4c4983a 150 }
nkhorman 0:c3dcd4c4983a 151
nkhorman 9:ddb97c9850a2 152 void Adafruit_SSD1306::splash(void)
nkhorman 0:c3dcd4c4983a 153 {
nkhorman 9:ddb97c9850a2 154 #ifndef NO_SPLASH_ADAFRUIT
nkhorman 9:ddb97c9850a2 155 uint8_t adaFruitLogo[64 * 128 / 8] =
nkhorman 9:ddb97c9850a2 156 {
nkhorman 9:ddb97c9850a2 157 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 158 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 159 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 160 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
nkhorman 9:ddb97c9850a2 161 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 162 0x00, 0x80, 0x80, 0xC0, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 163 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 164 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 165 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 166 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC, 0xF8, 0xE0, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 167 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80,
nkhorman 9:ddb97c9850a2 168 0x80, 0x80, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0xFF,
nkhorman 9:ddb97c9850a2 169 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 170 0x80, 0xFF, 0xFF, 0x80, 0x80, 0x00, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x80, 0x80,
nkhorman 9:ddb97c9850a2 171 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x8C, 0x8E, 0x84, 0x00, 0x00, 0x80, 0xF8,
nkhorman 9:ddb97c9850a2 172 0xF8, 0xF8, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 173 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xE0, 0xE0, 0xC0, 0x80,
nkhorman 9:ddb97c9850a2 174 0x00, 0xE0, 0xFC, 0xFE, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 175 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xC7, 0x01, 0x01,
nkhorman 9:ddb97c9850a2 176 0x01, 0x01, 0x83, 0xFF, 0xFF, 0x00, 0x00, 0x7C, 0xFE, 0xC7, 0x01, 0x01, 0x01, 0x01, 0x83, 0xFF,
nkhorman 9:ddb97c9850a2 177 0xFF, 0xFF, 0x00, 0x38, 0xFE, 0xC7, 0x83, 0x01, 0x01, 0x01, 0x83, 0xC7, 0xFF, 0xFF, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 178 0x01, 0xFF, 0xFF, 0x01, 0x01, 0x00, 0xFF, 0xFF, 0x07, 0x01, 0x01, 0x01, 0x00, 0x00, 0x7F, 0xFF,
nkhorman 9:ddb97c9850a2 179 0x80, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x7F, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x01, 0xFF,
nkhorman 9:ddb97c9850a2 180 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 181 0x03, 0x0F, 0x3F, 0x7F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xC7, 0xC7, 0x8F,
nkhorman 9:ddb97c9850a2 182 0x8F, 0x9F, 0xBF, 0xFF, 0xFF, 0xC3, 0xC0, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFC, 0xFC,
nkhorman 9:ddb97c9850a2 183 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xF8, 0xF8, 0xF0, 0xF0, 0xE0, 0xC0, 0x00, 0x01, 0x03, 0x03, 0x03,
nkhorman 9:ddb97c9850a2 184 0x03, 0x03, 0x01, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01,
nkhorman 9:ddb97c9850a2 185 0x03, 0x01, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x03, 0x03, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 186 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
nkhorman 9:ddb97c9850a2 187 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x01, 0x03, 0x01, 0x00, 0x00, 0x00, 0x03,
nkhorman 9:ddb97c9850a2 188 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 189 // 128x32^^^ 128x64vvv
nkhorman 9:ddb97c9850a2 190 0x00, 0x00, 0x00, 0x80, 0xC0, 0xE0, 0xF0, 0xF9, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x1F, 0x0F,
nkhorman 9:ddb97c9850a2 191 0x87, 0xC7, 0xF7, 0xFF, 0xFF, 0x1F, 0x1F, 0x3D, 0xFC, 0xF8, 0xF8, 0xF8, 0xF8, 0x7C, 0x7D, 0xFF,
nkhorman 9:ddb97c9850a2 192 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x3F, 0x0F, 0x07, 0x00, 0x30, 0x30, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 193 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 194 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFE, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 195 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xC0, 0x00,
nkhorman 9:ddb97c9850a2 196 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 197 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 198 0x00, 0xC0, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x7F, 0x3F, 0x1F,
nkhorman 9:ddb97c9850a2 199 0x0F, 0x07, 0x1F, 0x7F, 0xFF, 0xFF, 0xF8, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xF8, 0xE0,
nkhorman 9:ddb97c9850a2 200 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFE, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 201 0x00, 0xFC, 0xFE, 0xFC, 0x0C, 0x06, 0x06, 0x0E, 0xFC, 0xF8, 0x00, 0x00, 0xF0, 0xF8, 0x1C, 0x0E,
nkhorman 9:ddb97c9850a2 202 0x06, 0x06, 0x06, 0x0C, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0xFE, 0xFE, 0x00, 0x00, 0x00, 0x00, 0xFC,
nkhorman 9:ddb97c9850a2 203 0xFE, 0xFC, 0x00, 0x18, 0x3C, 0x7E, 0x66, 0xE6, 0xCE, 0x84, 0x00, 0x00, 0x06, 0xFF, 0xFF, 0x06,
nkhorman 9:ddb97c9850a2 204 0x06, 0xFC, 0xFE, 0xFC, 0x0C, 0x06, 0x06, 0x06, 0x00, 0x00, 0xFE, 0xFE, 0x00, 0x00, 0xC0, 0xF8,
nkhorman 9:ddb97c9850a2 205 0xFC, 0x4E, 0x46, 0x46, 0x46, 0x4E, 0x7C, 0x78, 0x40, 0x18, 0x3C, 0x76, 0xE6, 0xCE, 0xCC, 0x80,
nkhorman 9:ddb97c9850a2 206 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 207 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0F, 0x1F, 0x1F, 0x3F, 0x3F, 0x3F, 0x3F, 0x1F, 0x0F, 0x03,
nkhorman 9:ddb97c9850a2 208 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 209 0x00, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x00, 0x00, 0x03, 0x07, 0x0E, 0x0C,
nkhorman 9:ddb97c9850a2 210 0x18, 0x18, 0x0C, 0x06, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x01, 0x0F, 0x0E, 0x0C, 0x18, 0x0C, 0x0F,
nkhorman 9:ddb97c9850a2 211 0x07, 0x01, 0x00, 0x04, 0x0E, 0x0C, 0x18, 0x0C, 0x0F, 0x07, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x00,
nkhorman 9:ddb97c9850a2 212 0x00, 0x0F, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x07,
nkhorman 9:ddb97c9850a2 213 0x07, 0x0C, 0x0C, 0x18, 0x1C, 0x0C, 0x06, 0x06, 0x00, 0x04, 0x0E, 0x0C, 0x18, 0x0C, 0x0F, 0x07,
nkhorman 9:ddb97c9850a2 214 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 215 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 216 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 217 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 218 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 219 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 220 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
nkhorman 9:ddb97c9850a2 221 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
nkhorman 9:ddb97c9850a2 222 };
nkhorman 9:ddb97c9850a2 223
nkhorman 9:ddb97c9850a2 224 std::copy(
nkhorman 9:ddb97c9850a2 225 &adaFruitLogo[0]
nkhorman 9:ddb97c9850a2 226 , &adaFruitLogo[0] + (_rawHeight == 32 ? sizeof(adaFruitLogo)/2 : sizeof(adaFruitLogo))
nkhorman 9:ddb97c9850a2 227 , buffer.begin()
nkhorman 9:ddb97c9850a2 228 );
Neal Horman 6:1be3e3b46eb7 229 #endif
nkhorman 0:c3dcd4c4983a 230 }