ESP32-Arduino/platfrom不完全指南(三)platform使用U8g2库驱动oled屏幕
屏幕为ssd1306-128*64的oled
屏幕
1.直接贴代码,使用硬件I2C
驱动
#include <Arduino.h>
#include <U8g2lib.h>
#include <Wire.h>
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0,U8X8_PIN_NONE, /* clock=*/22, /* data=*/21);
void setup() {
u8g2.begin();
Serial.begin(115200);
u8g2.drawBox(0,0,10,10);
u8g2.drawCircle(64,32,5);
u8g2.sendBuffer();
}
void loop() {
printf("1234\n");
vTaskDelay(1000);
}
1.直接贴代码,使用软件I2C
驱动
#include <Arduino.h>
#include <U8g2lib.h>
//#include <Wire.h>
U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0,/*clock*/22,/*date*/21,U8X8_PIN_NONE);
void setup() {
Serial.begin(115200);
u8g2.begin();
u8g2.clearBuffer();
u8g2.drawBox(0,0,10,10);
u8g2.drawCircle(64,32,5);
u8g2.sendBuffer();
}
void loop() {
printf("1234\n");
vTaskDelay(1000);
}
使用软件I2C大体上都和硬件I2C相同,就是函数的变量顺序变了,SCL,SDA是第二个第三个变量,另外也不需要#include <Wire.h>了