0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ESP8266 太空人动画的 OLED 显示

单片机/嵌入式开发 来源:单片机/嵌入式开发 作者:单片机/嵌入式开发 2024-10-08 15:06 次阅读

ESP8266 太空人动画的 OLED 显示

接线

SCL - D1

SDA - D2

VCC - 3V

GND - GND

代码

#include < Wire.h >
#include < Adafruit_GFX.h >
#include < Adafruit_SSD1306.h >
​
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
int fps=40;
#define OLED_RESET  -1
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
​
#include "images_invert.h"
​
void setup() {
  Serial.begin(115200);

  if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
    Serial.println(F("SSD1306 allocation failed"));
    for(;;);
  }// Pause for 2 seconds
  // Clear the buffer.
}

void loop() {
display.clearDisplay();
display.drawBitmap(0, 0, gImage_1, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_2, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_3, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_4, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_5, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_6, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_7, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_8, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_9, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_10, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_11, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_12, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_13, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_14, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_15, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_16, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_17, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_18, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_19, 128, 64, 1);
display.display();
delay(fps);
​
display.clearDisplay();
display.drawBitmap(0, 0, gImage_20, 128, 64, 1);
display.display();
delay(fps);
​
}
​

取模

image.png

**打开目标图片文件夹,导入一张图片,选择 **批量转换 ,于是每一帧图片的 128*64=1024 个 16 位信息将以 .c 文件格式被分别存储至 batch 文件夹下。将所有C文件中的代码复制到同一文件中,重名为 images.h 文件。

效果展示

[【ESP8266 太空人动画的 OLED 显示】]

反相取值

[【ESP8266 太空人动画的 OLED 显示 2】]

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • OLED
    +关注

    关注

    119

    文章

    6198

    浏览量

    224087
  • ESP8266
    +关注

    关注

    50

    文章

    962

    浏览量

    44956
收藏 人收藏

    评论

    相关推荐

    esp8266加入到c51单片机单通道程序怎么写

    要将ESP8266模块加入到C51单片机的单通道程序中,您需要了解如何通过串行通信(UART)与ESP8266进行通信。以下是如何实现这一点的步骤和示例代码。 步骤 1:硬件连接 首先,您需要
    的头像 发表于 10-18 11:32 562次阅读

    arduino(1)--ESP8266配置

    之后在打开开发板管理器。 之后输入esp8266,安装对应的库文件,因为我已经安装,故显示为灰色,由于网络原因,下载的时间可能比较久。 安装完毕之后,选择Generic ESP8266
    发表于 09-06 11:00

    STM32 ESP8266阿里云链接源码

    stm32F103C8T6 ESP8266 物联网电表 登录阿里云
    发表于 08-29 14:21 6次下载

    esp32和esp8266代码共用吗

    本文将介绍ESP32和ESP8266两款流行的微控制器在代码共用性方面的可能性与差异性。 一、引言 随着物联网技术的飞速发展,越来越多的智能设备开始进入我们的生活。其中,ESP32和ESP82
    的头像 发表于 08-19 18:23 1109次阅读

    esp8266esp32区别是什么

    以下是关于ESP8266ESP32的主要区别: 处理器和架构 : ESP8266 :使用一个Tensilica L106 80MHz的处理器,属于Xtensa架构。 ESP32 :使
    的头像 发表于 08-19 18:16 5231次阅读

    ESP8266需要烧录固件库嘛

    需要。ESP8266是一款非常流行的Wi-Fi模块,广泛应用于物联网项目中。它具有低成本、低功耗、易于编程等特点,因此受到了许多开发者的喜爱。在开发ESP8266项目时,烧录固件库是一个非常重要
    的头像 发表于 08-19 17:30 832次阅读

    esp8266不烧录可以使用吗

    ESP8266是一款非常流行的Wi-Fi模块,广泛应用于物联网项目中。然而,如果不进行烧录,ESP8266将无法正常工作。 1. ESP8266简介 ESP8266是一款由Espres
    的头像 发表于 08-19 17:28 759次阅读

    esp8266wifi模块怎么连接手机

    ESP8266 WiFi模块连接手机主要可以通过两种方式实现: 通过路由器连接(STA模式)和直接作为热点连接(AP模式) 。以下是两种连接方式的步骤: 一、通过路由器连接(STA模式) 配置
    的头像 发表于 08-19 17:27 2625次阅读

    Arduino Nano 和 NodeMCU ESP8266 读取 DHT11 环境温湿度数据及 OLED显示

    Arduino Nano 和 NodeMCU ESP8266 读取 DHT11 环境温湿度数据及 OLED显示
    的头像 发表于 08-13 18:04 1109次阅读
    Arduino Nano 和 NodeMCU <b class='flag-5'>ESP8266</b> 读取 DHT11 环境温湿度数据及 <b class='flag-5'>OLED</b><b class='flag-5'>显示</b>

    ESP8266网络天气时钟OLED显示

    基于ESP8266实现网络获取天气和时钟并OLED显示
    的头像 发表于 06-28 04:46 1113次阅读
    <b class='flag-5'>ESP8266</b>网络天气时钟<b class='flag-5'>OLED</b><b class='flag-5'>显示</b>

    ESP8266网络天气时钟OLED显示

    OLED显示
    jf_07365693
    发布于 :2024年06月28日 04:36:26

    国产低成本Wi-Fi SoC解决方案芯片ESP8266ESP8285对比差异

    ESP8266ESP8285对比差异 ESP8285相当于在ESP8266基础上多加了1/2MB Flash, ESP8285与
    的头像 发表于 05-17 11:44 1317次阅读
    国产低成本Wi-Fi SoC解决方案芯片<b class='flag-5'>ESP8266</b>与<b class='flag-5'>ESP</b>8285对比差异

    确定ESP8266固件下载成功的方法

    在物联网设备的开发过程中,确定esp8266固件是否成功下载至设备十分关键。以下是一种简单有效的确认方法:机智云物联网平台首先,确保你的ESP8266模块已经正确连接至计算机,并通过串口调试助手进行
    的头像 发表于 05-16 08:10 586次阅读
    确定<b class='flag-5'>ESP8266</b>固件下载成功的方法

    使用Wi-Fi ESP8266方案模组接入云平台

    ESP8266的模块芯片是基于无线通信协议的UARTWi-Fi透传模块芯片,支持802.11b/g/n的无线标准,并带有三种可选择的工作模式。ESP8266模块的控制是通过AT指令的形式控制,例如
    的头像 发表于 05-10 08:20 1819次阅读
    使用Wi-Fi <b class='flag-5'>ESP8266</b>方案模组接入云平台

    STM32、ESP8266与MQTT连接阿里云物联网的串口通信异常解析

    STM32、ESP8266与MQTT协议连接阿里云物联网平台时常见的串口通信异常介绍 在构建物联网应用时,STM32、ESP8266与MQTT协议的结合是实现设备与网络间稳定通信的关键。然而,在连接
    的头像 发表于 04-19 17:19 1438次阅读