Arduino实现OLED显示

 参考太极创客代码

#include <Adafruit_SSD1306.h>
#include <splash.h>

/**********************************************************************
  程序名称/Program name     : hans_display
  团队/Team                 : 太极创客团队 / Taichi-Maker (www.taichi-maker.com)
  作者/Author               : Dapenson
  日期/Date(YYYYMMDD)     : 2020/07/01
  程序目的/Purpose          :
  使用OLED0.96 IIC 12864显示汉字
  -----------------------------------------------------------------------
  修订历史/Revision History
  日期/Date    作者/Author      参考号/Ref    修订说明/Revision Description
  -----------------------------------------------------------------------
  其它说明:
***********************************************************************/
 
// 引入IIC通讯所需的Wire库文件
// 教程参考http://www.taichi-maker.com/homepage/reference-index/arduino-library-index/wire-library/
#include <Wire.h>
 

 
// 引入驱动OLED0.96所需的库
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
 
#define SCREEN_WIDTH 128 // 设置OLED宽度,单位:像素
#define SCREEN_HEIGHT 64 // 设置OLED高度,单位:像素
 
// 自定义重置引脚,虽然教程未使用,但却是Adafruit_SSD1306库文件所必需的
#define OLED_RESET 4
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
  static const unsigned char PROGMEM hans_meng[] = {
s
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,
0x07,0xFF,0xFF,0x80,0x03,0x00,0x0F,0xC0,0x00,0x00,0x3C,0x00,0x00,0x03,0xF0,0x00,
0x00,0x03,0xC0,0x18,0x00,0x03,0xC0,0x3C,0x7F,0xFF,0xFF,0xFE,0x38,0x03,0xC0,0x00,
0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,
0x00,0x3F,0xC0,0x00,0x00,0x0F,0x80,0x00,0x00,0x07,0x00,0x00,0x07,0x00,0x01,0xC0,
0x07,0xFF,0xFF,0xE0,0x07,0x1C,0x71,0xC0,0x07,0x1C,0x71,0xC0,0x07,0x1C,0x71,0xC0,
0x07,0x1C,0x71,0xC0,0x07,0x1C,0x71,0xC0,0x07,0x1C,0x71,0xC0,0x07,0x1C,0x71,0xD8,
0x07,0x1C,0x71,0xFC,0x7F,0xFF,0xFF,0xFE,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"孟",0*/
 };
static const unsigned char PROGMEM hans_yao[] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x01,0xF0,
0x00,0x00,0x3F,0x00,0x00,0x27,0xC0,0x10,0x3F,0xF0,0x20,0x38,0x03,0x00,0x18,0x30,
0x03,0x04,0x18,0x60,0x03,0x03,0x0C,0x40,0x03,0x03,0x0C,0x80,0x03,0x03,0x81,0x00,
0x03,0x00,0xC1,0x00,0x03,0x21,0x80,0x20,0x3F,0xF1,0xFF,0xF0,0x03,0x03,0x08,0x00,
0x03,0x06,0x08,0x00,0x03,0x04,0x08,0x00,0x03,0x08,0x08,0x00,0x03,0x00,0x08,0x18,
0x03,0x1F,0xFF,0xFC,0x03,0x00,0x08,0x00,0x03,0x0C,0x08,0x20,0x03,0x77,0x08,0x30,
0x03,0x86,0x08,0x30,0x3E,0x06,0x08,0x30,0x38,0x06,0x08,0x30,0x00,0x06,0x08,0x30,
0x00,0x07,0xFF,0xF0,0x00,0x02,0x00,0x30,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00,/*"瑶",1*/
 };
 static const unsigned char PROGMEM hans_da[] = {
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x00,0x00,0x03,0xC0,0x00,
0x00,0x03,0x80,0x00,0x00,0x03,0x80,0x00,0x00,0x03,0x80,0x00,0x00,0x03,0x80,0x00,
0x00,0x03,0x80,0x18,0x00,0x03,0x80,0x3C,0x7F,0xFF,0xFF,0xFE,0x10,0x03,0x80,0x00,
0x00,0x03,0x80,0x00,0x00,0x03,0xC0,0x00,0x00,0x07,0xC0,0x00,0x00,0x07,0xC0,0x00,
0x00,0x07,0xE0,0x00,0x00,0x07,0x60,0x00,0x00,0x07,0x70,0x00,0x00,0x0F,0x38,0x00,
0x00,0x0E,0x38,0x00,0x00,0x1E,0x1C,0x00,0x00,0x1C,0x1E,0x00,0x00,0x3C,0x0F,0x00,
0x00,0x78,0x07,0x80,0x00,0xF0,0x03,0xC0,0x01,0xE0,0x01,0xF0,0x03,0xC0,0x01,0xFE,
0x0F,0x00,0x00,0x7E,0x1E,0x00,0x00,0x38,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"大",0*/
 };
  static const unsigned char PROGMEM hans_sha[] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x20,0x00,0x00,0xE0,0x70,0x00,
0x00,0xC0,0x60,0x00,0x00,0xC8,0x40,0x10,0x01,0x8F,0xFF,0xF8,0x01,0x8C,0x02,0x30,
0x03,0x0C,0x47,0x30,0x03,0x0C,0x3C,0x30,0x06,0x0C,0x1E,0x30,0x07,0x0C,0x63,0x30,
0x0F,0x0C,0x81,0x30,0x0B,0x0F,0xFF,0xF0,0x1B,0x0C,0x84,0x30,0x13,0x01,0xC3,0x80,
0x23,0x03,0x40,0xF0,0x43,0x06,0x60,0x38,0x03,0x08,0x60,0x98,0x03,0x30,0xFF,0xC8,
0x03,0x01,0x81,0xC0,0x03,0x01,0x81,0x80,0x03,0x02,0x43,0x00,0x03,0x04,0x26,0x00,
0x03,0x08,0x26,0x00,0x03,0x00,0x1C,0x00,0x03,0x00,0x3C,0x00,0x03,0x00,0x67,0x00,
0x03,0x01,0xC3,0xE0,0x03,0x0E,0x00,0xFC,0x02,0x70,0x00,0x18,0x00,0x00,0x00,0x00,/*"傻",1*/
  };
   static const unsigned char PROGMEM hans_zi[] = {
     0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,
0x03,0xFF,0xFF,0xE0,0x00,0x00,0x01,0xF0,0x00,0x00,0x03,0x80,0x00,0x00,0x06,0x00,
0x00,0x00,0x0C,0x00,0x00,0x00,0x30,0x00,0x00,0x01,0x60,0x00,0x00,0x01,0xC0,0x00,
0x00,0x01,0xC0,0x00,0x00,0x01,0x80,0x10,0x00,0x01,0x80,0x38,0x3F,0xFF,0xFF,0xFC,
0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,
0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,
0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x21,0x80,0x00,
0x00,0x1F,0x80,0x00,0x00,0x07,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,/*"子",2*/
   } ;
void setup()
{
    // 初始化OLED并设置其IIC地址为 0x3C
    display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
}
 
void loop()
{
    hans_display_0();
    hans_display_1();
   
}
 
void hans_display_0(void)
{
    // 显示之前清屏
    display.clearDisplay();
 
    // 显示文字 (左上角x坐标,左上角y坐标, 图形数组, 图形宽度像素点, 图形高度像素点, 设置颜色)
    display.drawBitmap(32 * 1, 20, hans_meng, 32, 32, 1);
    display.drawBitmap(32 * 2, 20, hans_yao, 32, 32, 1);
    
 
    //显示图形
    display.display();
    delay(1000);
}
void hans_display_1(void)
{
    // 显示之前清屏
    display.clearDisplay();
 
    // 显示文字 (左上角x坐标,左上角y坐标, 图形数组, 图形宽度像素点, 图形高度像素点, 设置颜色)
    display.drawBitmap(32 * 1, 20, hans_da, 32, 32, 1);
    display.drawBitmap(32 * 2, 20, hans_sha, 32, 32, 1);
    display.drawBitmap(32 * 3, 20, hans_zi, 32, 32, 1);
 
    //显示图形
    display.display();
    delay(1000);
}

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值