/*
ATtiny/PinChangeInterrupts
How to use pin change interrupts with the ATtiny85
For info and circuit diagrams see https://github.com/tardate/LittleArduinoProjects/tree/master/playground/ATtiny/PinChangeInterrupts
*/
#include <TinyWireM.h>
#define TINY4KOLED_QUICK_BEGIN
#include <Tiny4kOLED.h>
#include "5x5_font.h"
const unsigned char icon[] PROGMEM = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x3c, 0x3c, 0x3c,
0xfc, 0x0f, 0x0f, 0xcf, 0xcf, 0x07, 0x0f, 0xdf, 0x4f, 0x03, 0x01, 0xc1, 0xcf, 0x0f, 0x0f, 0x9f,
0xcf, 0x0f, 0x0f, 0x0f, 0xcf, 0xcf, 0x0f, 0x1f, 0xff, 0x0f, 0x0f, 0xcf, 0xcf, 0x0f, 0x0f, 0xff,
0x3f, 0x0f, 0x0f, 0x8f, 0xcf, 0x1f, 0x0f, 0xcf, 0xcf, 0x0f, 0x1f, 0xff, 0x0f, 0x0f, 0xcf, 0xcf,
0x0f, 0x0f, 0x9f, 0x3f, 0x1f, 0x0f, 0xcf, 0xcf, 0x0f, 0x1f, 0x7f, 0x0f, 0x0f, 0xff, 0xff, 0x0f,
0x0f, 0xff, 0x0f, 0x0f, 0x8f, 0x8f, 0xcf, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, 0x20, 0x7c, 0x7c,
0xfc, 0xff, 0xfc, 0xfc, 0x00, 0x00, 0xf8, 0xfc, 0xfc, 0x07, 0x00, 0xe0, 0xff, 0xff, 0x01, 0x00,
0xf8, 0x1f, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, 0x20, 0x3e, 0x3f, 0x3f, 0x3f,
0x00, 0x00, 0xfc, 0xff, 0x03, 0x00, 0xf0, 0xff, 0x00, 0x00, 0x3e, 0xbf, 0x01, 0x00, 0xf8, 0xff,
0xdf, 0x80, 0x00, 0x3c, 0x1d, 0x8c, 0xcc, 0x3f, 0x00, 0x00, 0x3e, 0x3f, 0x03, 0x80, 0xf8, 0x07,
0x00, 0xe0, 0xff, 0xff, 0x80, 0x00, 0x38, 0x3d, 0x0d, 0x8c, 0xfc, 0x03, 0x00, 0xf0, 0xff, 0x0f,
0x00, 0xc0, 0xff, 0x80, 0x00, 0x3c, 0x1d, 0x8c, 0xcc, 0xfe, 0x00, 0x00, 0x3e, 0x1f, 0x03, 0x00,
0xf8, 0x07, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, 0xf8, 0xfe, 0xfe, 0xfe,
0xff, 0xff, 0xff, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x81, 0x00, 0x18, 0x3f, 0x1f, 0x80, 0xc0, 0xfe,
0x07, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x38, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,
0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0x3f, 0xdf, 0x3f, 0xdf, 0xff, 0x1f, 0x9f, 0xf0, 0x70, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x1f, 0xdf, 0xff, 0x1f, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x7f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xbf, 0x0f, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xc0,
0x0c, 0xc0, 0xec, 0xfe, 0x07, 0x40, 0x7f, 0x1f, 0x80, 0xfe, 0x07, 0xc0, 0xfe, 0x0e, 0xc0, 0xff,
0x01, 0x78, 0x3e, 0x00, 0xf0, 0x9f, 0x00, 0x7c, 0x1e, 0x00, 0xfc, 0x07, 0x00, 0x7f, 0x07, 0x80,
0xff, 0x03, 0xf0, 0x7f, 0x01, 0x78, 0x7e, 0x00, 0xf0, 0x0f, 0x40, 0x76, 0x36, 0xf0, 0x7f, 0x00,
0xf8, 0xfe, 0x0f, 0x00, 0x7e, 0x3e, 0x00, 0xfe, 0x0f, 0x64, 0x76, 0x00, 0xf0, 0x7f, 0x00, 0xf8,
0x3e, 0x00, 0xfc, 0x1e, 0x00, 0xff, 0x07, 0x00, 0x7e, 0x1e, 0x80, 0xff, 0x0f, 0x64, 0x76, 0x00,
0xf0, 0x3f, 0x00, 0xe0, 0x01, 0x7c, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f,
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0e, 0x0e, 0x0f, 0x0f, 0x0f, 0x0e, 0x0f, 0x0f, 0x0e, 0x0f, 0x09,
0x01, 0x03, 0x08, 0x0c, 0x0f, 0x09, 0x03, 0x03, 0x08, 0x0f, 0x0f, 0x0f, 0x0e, 0x0f, 0x0e, 0x0f,
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0e, 0x0e, 0x0f, 0x0f, 0x0f, 0x0e, 0x0e, 0x0f, 0x0f, 0x0f, 0x0f,
0x0f, 0x0f, 0x0f, 0x0e, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0e, 0x0f, 0x0e, 0x0f, 0x0f, 0x0f, 0x0f,
0x0e, 0x0f, 0x0f, 0x0e, 0x0f, 0x0b, 0x00, 0x0f, 0x0e, 0x0f, 0x0f, 0x0f, 0x0e, 0x0e, 0x0f, 0x0e,
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x0f, 0x0f, 0x06, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
void setup() {
oled.begin(128, 64, sizeof(tiny4koled_init_128x64br), tiny4koled_init_128x64br);
oled.on();
oled.bitmap(0, 0, 128, 8, icon);
delay(1000);
oled.clear();
oled.setFont(FONT6X8);
oled.setCursor(10,3);
oled.print("Product of Startup");
oled.setCursor(52,4);
oled.print("FTUI");
delay(1500);
oled.clear();
oled.setFont(FONT6X8);
oled.setCursor(13,2);
oled.print("Interdisciplinary");
oled.setCursor(31,3);
oled.print("Engineering");
oled.setCursor(4,4);
oled.print("Untuk Indonesia Emas");
delay(1500);
oled.clear();
oled.setFont(FONT6X8);
oled.setCursor(43, 1);
oled.print("elgifts");
oled.setCursor(37, 2);
oled.print("indonesia");
oled.setCursor(10,4);
oled.print("Product of Startup");
oled.setCursor(52,5);
oled.print("FTUI");
delay(1500);
oled.clear();
oled.setFont(FONT6X8);
oled.setCursor(0,0);
oled.print("");
oled.setCursor(15, 1);
oled.print("Your presence in");
oled.setCursor(7, 2);
oled.print("my life flipped the");
oled.setCursor(20, 3);
oled.print("entirety of my");
oled.setCursor(15, 4);
oled.print("existence. Lets");
oled.setCursor(7, 5);
oled.print("make our wishes and");
oled.setCursor(15, 6);
oled.print("dreams came true");
delay(1000);
oled.clear();
oled.setFont(FONT6X8);
oled.setCursor(4,3);
oled.print("Don't give up on you");
}
/*
* Command: main loop - toggle the LED if interrupt flag is set
*/
void loop() {
}
tiny:PB5
tiny:PB3
tiny:PB4
tiny:GND
tiny:PB0
tiny:PB1
tiny:PB2
tiny:VCC
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r
oled1:GND
oled1:VCC
oled1:SCL
oled1:SDA