#include <Adafruit_SSD1306.h>
#include <Adafruit_GFX.h>
#define OLED_WIDTH 128 // in pixels
#define OLED_HEIGHT 64 // in pixels
#define OLED_ADDR 0x3C
Adafruit_SSD1306 disp(OLED_WIDTH, OLED_HEIGHT);
void setup() {
disp.begin(SSD1306_SWITCHCAPVCC, OLED_ADDR);
disp.clearDisplay();
}
void loop() {
disp.setTextSize(1); //Set font size from (1 - 8)
disp.setTextColor(WHITE,BLACK); // set (Font colour, Background colour)
//disp.setTextColor(BLACK,WHITE);
disp.setCursor(0,8);
disp.print(97); // display the input number
disp.setCursor(0,24);
disp.print("0b"); //specifing the base for number
disp.print(0b00001001,BIN); //print the number in Binary
disp.print("(BIN) = ");
disp.print(0b00001001,DEC); //print the number in Decimal
disp.print("(DEC)");
disp.setCursor(0,40);
disp.print("0x"); //specifing the base for number
disp.print(0xFF,HEX); //print the number in Hexadecimal
disp.print("(HEX) = ");
disp.print(0xFF,DEC); //print the number in Decimal
disp.print("(DEC)");
disp.setCursor(0,56);
disp.write(97); // input ASCII value, and display the corresponding character
disp.write(3); // input ASCII value, and display the corresponding symbol
disp.startscrollleft(0,7); // scroll left pagewise from (0 - 7)
delay(2000);
disp.stopscroll();
disp.startscrollright(0,7); // scroll right pagewise from (0 - 7)
delay(2000);
disp.stopscroll();
disp.startscrollleft(0,3);
delay(2000);
disp.stopscroll();
disp.startscrollright(0,3);
delay(2000);
disp.stopscroll();
disp.startscrollleft(4,7);
delay(2000);
disp.stopscroll();
disp.startscrollright(4,7);
delay(2000);
disp.stopscroll();
disp.startscrolldiagleft(0,7); // scroll diagonally left pagewise from (0 - 7)
delay(2000);
disp.stopscroll();
disp.startscrolldiagright(0,7); // scroll diagonally right pagewise from (0 - 7)
delay(2000);
disp.stopscroll();
disp.display(); //update the display
delay(2000);
disp.clearDisplay();
}