向右滚动
时间: 2024-02-13 12:02:01 浏览: 75
好的,如果您想要向右滚动,可以将以下代码中的 `SSD1306_SCROLL_LEFT` 改为 `SSD1306_SCROLL_RIGHT`,代码如下:
```c++
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define OLED_RESET 0
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_ADDR 0x3C
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
const unsigned char bmp1 [] PROGMEM = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
const unsigned char bmp2 [] PROGMEM = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
const unsigned char bmp3 [] PROGMEM = {0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff};
const unsigned char bmp4 [] PROGMEM = {0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa};
const unsigned char bmp5 [] PROGMEM = {0x18, 0x3c, 0x7e, 0xff, 0x7e, 0x3c, 0x18, 0x00};
const unsigned char* bmps[] = {bmp1, bmp2, bmp3, bmp4, bmp5};
void setup() {
display.begin(SSD1306_SWITCHCAPVCC, OLED_ADDR);
display.clearDisplay();
}
void loop() {
int scrollSpeed = 1; // 滚动速度
int scrollStartRow = 0; // 滚动起始行
int scrollEndRow = 7; // 滚动结束行
int scrollDirection = SSD1306_SCROLL_RIGHT; // 滚动方向
display.startscrollright(scrollStartRow, scrollEndRow);
for (int i = 0; i < 5; i++) {
display.drawBitmap(0, 0, bmps[i], 8, 8, 1);
delay(1000);
}
display.stopscroll();
}
```
这样就可以实现向右滚动五个bitmap的效果了。