【Arduino】【MATLAB】用ssd1306 oled屏显示任意图片

来源:互联网 发布:全国所有学校数据库 编辑:程序博客网 时间:2024/05/16 09:18

程序挺简单的,直接贴代码吧!


我觉得其实OK~


将图片放入当前.m文件目录下就可以了

clear allclcclfdata=imread('TEST.png');figure(1)imshow(data)gray=rgb2gray(data);figure(2)imshow(gray)gray = rot90(gray); %旋转90度width =128;height = 64;gray = imresize(gray, [height,width]);bitMap=im2bw(gray);%bitMap= ~bitMap;%反色figure(3)imshow(bitMap)for y=1:height    for x=1:width        if(rem(x-1, 8) == 0)            if(x ~= 1)                fprintf(',')            end            fprintf('B')        end        i3 = bitMap(y,x);        fprintf('%d',i3)    end    fprintf(',\n')end

Arduino上的程序:

用的是Adafruit的库,个人觉得编译速度比U8g的库快了很多。

#include <SPI.h>#include <Wire.h>#include <Adafruit_GFX.h>#include <Adafruit_SSD1306.h>// If using software SPI (the default case):#define OLED_CLK_D0     11#define OLED_MOSI_D1    10#define OLED_RES        9#define OLED_DC         8#define OLED_CS         7Adafruit_SSD1306 display(OLED_MOSI_D1, OLED_CLK_D0, OLED_DC, OLED_RES, OLED_CS);/* Uncomment this block to use hardware SPI  #define OLED_DC     6  #define OLED_CS     7  #define OLED_RESET  8  Adafruit_SSD1306 display(OLED_DC, OLED_RESET, OLED_CS);*/#define LOGO16_GLCD_HEIGHT 64#define LOGO16_GLCD_WIDTH  128static const unsigned char PROGMEM logo16_glcd_bmp[] ={B11111100,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000,B11001100,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B10000000,B00000000,B00000000,B00000000,B00000000,B11001100,B00000000,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B11001100,B00000000,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B11001100,B11111110,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111100,B00000000,B00000000,B00000000,B00000000,B00000000,B11001100,B11111110,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111000,B00000000,B00000000,B00000000,B00000000,B00000000,B11011100,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111100,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B10001100,B00111111,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11100000,B00000000,B00000000,B00000000,B00000000,B00000000,B11000010,B00000000,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11100001,B10001111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111011,B11001111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B10000111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11100000,B00000001,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11100000,B00000000,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11001111,B11000111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111100,B00000000,B01111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11001111,B00001111,B11111111,B11111111,B11111000,B00000000,B00111111,B11111110,B00000000,B01111100,B00000011,B10000000,B00000000,B00000000,B00000000,B00000000,B11001110,B00011111,B11111111,B11111111,B00000000,B00000000,B00111111,B10111110,B11000000,B01111000,B00000111,B11100000,B00000000,B00000000,B00000000,B00000000,B11001110,B01111111,B11111111,B11111000,B00000000,B00000000,B00011111,B11111110,B11000000,B01111000,B00001111,B11110000,B00000000,B00000000,B00000000,B00000000,B11000010,B01111111,B11111111,B11110000,B00000000,B00000000,B00111111,B11111111,B10111110,B00110000,B00011111,B11111000,B00000000,B00000000,B00000000,B00000000,B11000000,B00000000,B01111111,B11100000,B00000000,B00000000,B01111111,B11111111,B11111111,B11111111,B11111111,B11111100,B00000000,B00000000,B00000000,B00000000,B11001100,B00111111,B11111111,B11000000,B00000000,B00000000,B11111111,B11111111,B11111111,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,B11001110,B00011111,B11111111,B10000000,B00000000,B00010001,B11111111,B11111111,B11111111,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,B11001111,B10001111,B11111111,B00000000,B00000000,B00110011,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B11001111,B11000111,B11111110,B00000000,B00000000,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B10000000,B00000000,B00000000,B00000000,B11001111,B11000111,B11111100,B00000000,B00000001,B11000111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B10000000,B00000000,B00000000,B00000000,B11111111,B11111111,B11111100,B00000000,B00000011,B11000011,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B11111111,B11101111,B11111000,B00000000,B00000011,B10000000,B00011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11100000,B00000000,B00000000,B00000000,B11000000,B00000111,B11111000,B00000000,B00000111,B10001000,B00001111,B11111111,B11111111,B11111111,B11111111,B11111111,B11110000,B00000000,B00000000,B00000000,B10000000,B00000000,B01111000,B00000010,B00000111,B10001000,B00000111,B11111111,B11111111,B11111111,B11111111,B11111111,B11110000,B00000000,B00000000,B00000000,B10010100,B00000110,B01111000,B00011110,B00000111,B10000000,B00000111,B11111111,B11111111,B11110111,B11111111,B11111111,B11100000,B00000000,B00000000,B00000011,B10010100,B00100110,B01110000,B00011110,B00001111,B00000000,B00000111,B11111111,B11111111,B11110000,B11111111,B11111111,B11100000,B00000000,B00000000,B00000111,B10010100,B00100100,B11110000,B00111110,B00001111,B00001000,B00000111,B11111111,B11111111,B11100000,B01111111,B11111111,B11100000,B00000000,B00000000,B00000110,B10000000,B00100000,B11110000,B00111100,B00001111,B00000000,B00000111,B11111111,B11111111,B11100000,B00111111,B11111111,B11000000,B00000000,B00000000,B00000111,B11000000,B00100011,B11111000,B01111100,B00011111,B00000000,B00000111,B11111110,B01111111,B11100000,B00111111,B11111111,B11000000,B00000000,B00000000,B00000110,B11111101,B11100111,B11111000,B01111100,B00011111,B00000000,B00000111,B11111111,B11111111,B11110000,B00111110,B11111111,B10000000,B00000000,B00000000,B00000010,B10001100,B00000000,B01111000,B01111100,B00011111,B10000000,B00000111,B10111111,B11101111,B11110000,B00010011,B11111111,B10000000,B00000000,B00000000,B00000000,B11100011,B00000000,B01111100,B01111100,B00011111,B10000000,B00001111,B11111111,B11111111,B11110000,B00001111,B11111111,B00000000,B00000000,B00000000,B00000000,B11110011,B10001111,B11111100,B00111100,B00011111,B11000000,B00111111,B01111011,B11111111,B11110000,B00011111,B11111110,B00000000,B00000000,B00000000,B00000000,B11111111,B11111111,B11111100,B00111100,B00011111,B11000001,B11111111,B11111111,B11111111,B11100000,B00011111,B11111110,B00000000,B00000000,B00000000,B00000000,B11111111,B11111100,B11111110,B00111100,B00001111,B11000011,B11111111,B11111111,B11111111,B11100000,B00111111,B11111100,B00000000,B00000000,B00000000,B00000000,B10000000,B00111100,B01111111,B00011110,B00001111,B11000000,B11111111,B11111111,B11111111,B11000000,B00111111,B11110000,B00000000,B00000000,B00000000,B00000000,B10000000,B00000000,B01111111,B00001110,B00001111,B11000000,B00011111,B11111111,B11111111,B11000000,B00111111,B11000000,B00000000,B00000000,B00000000,B00000000,B10001010,B10000001,B01111111,B10000110,B00000111,B00000000,B00000111,B10111111,B11111111,B11100000,B01111111,B00000000,B00000000,B00000000,B00000000,B00000000,B10110100,B00000000,B01111111,B11000000,B00000111,B00000000,B00000001,B01111111,B10111111,B11100000,B01111000,B00000000,B00000000,B00000000,B00000000,B00000000,B10000000,B00000000,B01111111,B11100000,B00000111,B00000000,B00000001,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B10000000,B00000001,B11111111,B11110000,B00000011,B00000000,B00000011,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B10000000,B00000001,B11111111,B11111100,B00000001,B00000000,B00000011,B11111111,B11111111,B11111100,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B10001110,B00000000,B11111111,B11111110,B00000000,B00000000,B00000011,B11111111,B11111111,B11111100,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B10000010,B10000000,B01111111,B11111111,B11000000,B00000000,B00000011,B11111111,B11111111,B11111100,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B10000000,B00000000,B01111111,B11111111,B11111111,B11000000,B00000111,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11000000,B00111110,B01111111,B11111111,B11111111,B11000000,B00011111,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111111,B11111111,B11111111,B11111111,B11111111,B11100011,B11111111,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111111,B11111001,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11100100,B10111000,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11000100,B00001100,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B11011100,B11000000,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B10000000,B00000000,B00000000,B00000000,B00000000,B00000000,B10000000,B00000001,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11000000,B00000000,B00000000,B00000000,B00000000,B00000000,B10000000,B00000001,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11110000,B00000000,B00000000,B00000000,B00000000,B00000000,B11111100,B10111000,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111000,B00000000,B00000000,B00000000,B00000000,B00000000,B11001100,B10011101,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B11000000,B00000000,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B00000000,B00000000,B00000000,B00000000,B00000000,B11000000,B00000000,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B10000000,B00000000,B00000000,B00000000,B00000000,B11000100,B11000110,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11100000,B00000000,B00000000,B00000000,B00000000,B11100100,B11000110,B01111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11110000,B00000000,B00000000,B00000000,B00000000,};void setup() {  Serial.begin(9600);  // by default, we'll generate the high voltage from the 3.3v line internally! (neat!)  display.begin(SSD1306_SWITCHCAPVCC);  display.display();  delay(200);  display.clearDisplay();  // miniature bitmap display  display.drawBitmap(0, 0, logo16_glcd_bmp, LOGO16_GLCD_WIDTH, LOGO16_GLCD_HEIGHT, 1);  display.display();  delay(1);}void loop() {  display.clearDisplay();  display.drawBitmap(0, 0, logo16_glcd_bmp, LOGO16_GLCD_WIDTH, LOGO16_GLCD_HEIGHT, 1);  display.display();  delay(1000);  display.clearDisplay();  //testdrawbitmap(logo16_glcd_bmp, LOGO16_GLCD_HEIGHT, LOGO16_GLCD_WIDTH);}


原创粉丝点击