title: esp32与0.96寸屏幕实现信息传输

esp32与0.96寸屏幕实现信息传输代码

示例代码:

#include <Wire.h>
#include "SSD1306Wire.h" SSD1306Wire display(0x3c, SDA, SCL);   // ADDRESS, SDA, SCLvoid drawLines() {for (int16_t i = 0; i < display.getWidth(); i += 4) {display.drawLine(0, 0, i, display.getHeight() - 1);display.display();delay(10);}for (int16_t i = 0; i < display.getHeight(); i += 4) {display.drawLine(0, 0, display.getWidth() - 1, i);display.display();delay(10);}delay(250);display.clear();for (int16_t i = 0; i < display.getWidth(); i += 4) {display.drawLine(0, display.getHeight() - 1, i, 0);display.display();delay(10);}for (int16_t i = display.getHeight() - 1; i >= 0; i -= 4) {display.drawLine(0, display.getHeight() - 1, display.getWidth() - 1, i);display.display();delay(10);}delay(250);display.clear();for (int16_t i = display.getWidth() - 1; i >= 0; i -= 4) {display.drawLine(display.getWidth() - 1, display.getHeight() - 1, i, 0);display.display();delay(10);}for (int16_t i = display.getHeight() - 1; i >= 0; i -= 4) {display.drawLine(display.getWidth() - 1, display.getHeight() - 1, 0, i);display.display();delay(10);}delay(250);display.clear();for (int16_t i = 0; i < display.getHeight(); i += 4) {display.drawLine(display.getWidth() - 1, 0, 0, i);display.display();delay(10);}for (int16_t i = 0; i < display.getWidth(); i += 4) {display.drawLine(display.getWidth() - 1, 0, i, display.getHeight() - 1);display.display();delay(10);}delay(250);
}// Adapted from Adafruit_SSD1306
void drawRect(void) {for (int16_t i = 0; i < display.getHeight() / 2; i += 2) {display.drawRect(i, i, display.getWidth() - 2 * i, display.getHeight() - 2 * i);display.display();delay(10);}
}// Adapted from Adafruit_SSD1306
void fillRect(void) {uint8_t color = 1;for (int16_t i = 0; i < display.getHeight() / 2; i += 3) {display.setColor((color % 2 == 0) ? BLACK : WHITE); // alternate colorsdisplay.fillRect(i, i, display.getWidth() - i * 2, display.getHeight() - i * 2);display.display();delay(10);color++;}// Reset back to WHITEdisplay.setColor(WHITE);
}// Adapted from Adafruit_SSD1306
void drawCircle(void) {for (int16_t i = 0; i < display.getHeight(); i += 2) {display.drawCircle(display.getWidth() / 2, display.getHeight() / 2, i);display.display();delay(10);}delay(1000);display.clear();// This will draw the part of the circel in quadrant 1// Quadrants are numberd like this://   0010 | 0001//  ------|-----//   0100 | 1000//display.drawCircleQuads(display.getWidth() / 2, display.getHeight() / 2, display.getHeight() / 4, 0b00000001);display.display();delay(200);display.drawCircleQuads(display.getWidth() / 2, display.getHeight() / 2, display.getHeight() / 4, 0b00000011);display.display();delay(200);display.drawCircleQuads(display.getWidth() / 2, display.getHeight() / 2, display.getHeight() / 4, 0b00000111);display.display();delay(200);display.drawCircleQuads(display.getWidth() / 2, display.getHeight() / 2, display.getHeight() / 4, 0b00001111);display.display();
}void printBuffer(void) {// Initialize the log buffer// allocate memory to store 8 lines of text and 30 chars per line.display.setLogBuffer(5, 20);  //5表述屏幕显示5行,20表示每行存放的char的长度// Some test dataconst char* test[] = {"Hello","World" ,"----","Show off","how","the log buffer","is","working.","Even","scrolling is","working"};for (uint8_t i = 0; i < 11; i++) {display.clear();// Print to the screendisplay.println(test[i]);// Draw it to the internal screen bufferdisplay.drawLogBuffer(0, 0);// Display it on the screendisplay.display();delay(500);}
}void setup() {display.init();display.flipScreenVertically();display.setContrast(255);drawLines();delay(1000);display.clear();drawRect();delay(1000);display.clear();fillRect();delay(1000);display.clear();drawCircle();delay(1000);display.clear();printBuffer();delay(1000);display.clear();
}void loop() {display.init();display.flipScreenVertically();printBuffer();delay(1000);display.clear();}

程序弄好了,接下来是接线图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iQkqUjVm-1647857216005)(https://i.niupic.com/images/2022/03/15/9Wyz.jpg)]

VS Code platform IDE软件使用:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Cw6kwf6y-1647857216007)(https://i.niupic.com/images/2022/03/15/9WyB.png)]

最终结果:

ps:图片屏幕展示内容与示例代码实现不一样,图片里的是我另一个代码

esp32与0.96寸屏幕实现信息传输相关推荐

  1. ESP32驱动0.96寸12864 OLED显示屏

    ESP32学习导航帖 1.用adafruit_ssd1306库 代码 #include <Wire.h> #include <Adafruit_SSD1306.h> #defi ...

  2. 用esp8266驱动0.96寸OLED屏幕 太空人动画

    昨天闲来没事玩了一下OLED屏幕 之前只是做过显示图片 还没弄过动画的 (其实差不多–) 用esp8266驱动0.96寸LED屏幕 太空人动画 入门esp8266 看这篇文章 参考https://bl ...

  3. NRF51822---驱动0.96寸OLED屏幕(连载4)

    NRF51822---驱动0.96寸OLED屏幕(连载4) 前言 屏幕简介 连接方法 驱动原理 IIC SSD1306 代码实现 总结 前言 上节讲解了IIC的协议,并用STM32实践了一下.今天趁热 ...

  4. 0.96寸OLED液晶显示器

    在日常的小项目制作中我们经常会接触到OLED液晶显示器,本文介绍0.96寸液晶显示器的基本原理,辅助我们后续的小项目开发 OLED被称为有机激光二极管,也被称为有机激光显示,OLED采用有机材料涂层和 ...

  5. 合宙 ESP32C3 使用micropython 驱动配套0.96寸 TFT ST7735 屏幕显示色块和文字

    合宙的esp32c3 开发板配套了0.96寸屏幕驱动板,可直接使用如下链接的代码.注意替换对应的pin脚和st7735.py文件 1. 想显示色块参考如下链接: 链接: 合宙esp32c3+合宙air ...

  6. 0.96寸OLED(SSD1306)屏幕显示(三)——屏幕垂直水平滚动

    0.96寸OLED(SSD1306)屏幕显示 (一)基础功能介绍 (二)超长文字水平滚动 (三)屏幕垂直水平滚动 文章目录 一.垂直水平滚动方法 1)SSD1306驱动芯片 2)SSD1315驱动芯片 ...

  7. 【MicroPython ESP32】ssd1306驱动0.96“I2C屏幕cube3D图形显示

    [MicroPython ESP32]ssd1306驱动0.96"I2C屏幕cube3D图形显示 cube3D效果 原例程最早在一个Arduino ssd1306 i2c库的示例中可以找到这 ...

  8. 【MicroPython ESP32】ssd1306驱动0.96“I2C屏幕+mpu6050图形控制

    [MicroPython ESP32]ssd1306驱动0.96"I2C屏幕+mpu6050图形控制 效果演示 随着mpu6050模块的移动,oled屏幕矩形线框内的小方块也随对应的方向移动 ...

  9. CX32l003 点亮0.96寸OLED屏幕

    之前的文章写了很多关于CX32L003芯片的程序代码,几乎都是应用的芯片内部资源,对于这款低成本的芯片还能做些什么功能呢.本篇文章采用cx32l003单片机实现点亮0.96寸的OLED屏幕. OLED ...

最新文章

  1. python【力扣LeetCode算法题库】69-x 的平方根
  2. (转载)封装bilibili播放器,自定义边下边播和缓存功能
  3. 百度api语音识别一直“无内容”_PHP开发语音识别功能
  4. 基于Java+SpringBoot+vue+element实现物流管理系统
  5. 信息学奥赛一本通 1162:字符串逆序
  6. OpenGL基础32:面剔除
  7. 用Github的Api发现stars最多开源项目
  8. java-如何反编译
  9. 微信小程序Axure元件库(2021最新版)
  10. 汉字的 unicode 编码表
  11. python blp模型 估计_简述BLP模型
  12. 三维全景拍摄这些技巧很实用
  13. 机顶盒系统升级服务器地址,tvbox
  14. pytorch 显存逐渐增大
  15. 2020 BNUZ 国庆欢乐赛 题解
  16. 0.96寸IIC接口ssd1306和ssd1315驱动oled12864屏幕介绍
  17. minSdk(API 26) deviceSdk(API 17)
  18. C++语法基础—— 判断语句习题——ACwing
  19. 狂赚310亿美元!安卓系统的钱究竟是怎么来的
  20. 这样的老板,真想把他拖进WC爆zou一顿.....

热门文章

  1. cesium实现面状要素的立体拉伸效果
  2. python九九乘法口诀_Python3 九九乘法口诀(99乘法口诀)
  3. OptaPlanner的新约束表达方式 Constraint Streams
  4. 计算内容热度的算法解释
  5. 自建 Bitwarden 服务器
  6. python识别重影验证码_python+opencv实现移动侦测(帧差法)
  7. 基于Python3.6和Opencv3的活动轮廓模型--CV和RSF
  8. 程序员必须唱我哪些算法?
  9. Maven2部署构件到Nexus时出现的Failed to transfer file错误
  10. Java语言基本语法————变量和常量数据类型