esp8266-oled-ssd1306はESP8266でSSD1306を動かすためのライブラリだ。
「ESP8266 + SSD1306(GM009605)」
斜めに眺めた限りでは横スクロールの命令が入ってないように見えたので追加してみた。
OLEDDisplay.cppに以下を追加する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
// sahara add void OLEDDisplay::RHScroll(void) { sendCommand(0x26);//Right Horizontal Scroll sendCommand(0x00);//A - Dummy sendCommand(0x00);//B - Start Page as Page 0 sendCommand(0x07);//C - Time Interval as 2 frames sendCommand(0x05);//D - End Page as Page 5 sendCommand(0x00);//E - Dummy sendCommand(0xFF);//F - Dummy } void OLEDDisplay::LHScroll(void) { sendCommand(0x27);//Left Horizontal Scroll sendCommand(0x00);//A - Dummy sendCommand(0x00);//B - Start Page as Page 0 sendCommand(0x07);//C - Time Interval as 2 frames sendCommand(0x05);//D - End Page as Page 5 sendCommand(0x00);//E - Dummy sendCommand(0xFF);//F - Dummy } void OLEDDisplay::ActivateScroll(void) { sendCommand(0x2F); } void OLEDDisplay::DeactivateScroll(void) { sendCommand(0x2E); } |
SSD1306のデータシートを見てコマンドを写すだけだ。
OLEDDisplay.hはの赤線の間の部分を追加する。
確かに左右にスクロールするけど、視覚効果以上の使い道は無さそうだ。
Arduinoのライブラリが素人でも意外と簡単に触れるものだということは分かった。