#include<Wire.h>
#include<Adafruit_GFX.h>
#include<Adafruit_SSD1306.h>
const int lebar = 128;
const int tinggi = 64;
const int reset = 4;
Adafruit_SSD1306 oled(lebar, tinggi, &Wire, reset);
int El_A = 6;
int El_B = 7;
int El_M = 8;
int El_N = 9;
// char data ='-'; // isi angka 1, 2, 3, atau 4, atau bebas
void setup() {
Serial.begin(9600);
Serial.println("You can type numbers 1,0 or the charchter B or M");
oled.begin(SSD1306_SWITCHCAPVCC, 0x3C);
oled.clearDisplay();
oled.setTextColor(WHITE);
oled.clearDisplay();
oled.setTextSize(2, 3);
oled.setCursor(10,10);
oled.print("Elec : 90");
oled.setTextSize(2);
oled.setCursor(10,40);
oled.print("prepare");
oled.display();
pinMode(El_A , OUTPUT);
pinMode(El_B , OUTPUT);
pinMode(El_M , OUTPUT);
pinMode(El_N , OUTPUT);
}
void loop(){
if (Serial.available() > 0)
{
char data = Serial.read();
if (data == '0'){
El_off();
data = '-';
tampil(data);
}
else {
pilih(data);
}
}
}
void pilih(char data){
switch (data) {
case 'A':
El_off();
pilih_A();
tampil(data);
break;
case 'B':
El_off();
pilih_B();
tampil(data);
break;
case 'M':
El_off();
pilih_M();
tampil(data);
break;
case 'N':
El_off();
pilih_N();
tampil(data);
break;
}
}
void pilih_A(){
digitalWrite(El_A, HIGH);
Serial.println("you have pressed the number 1");
}
void pilih_B(){
digitalWrite(El_B, HIGH);
}
void pilih_M(){
digitalWrite(El_M, HIGH);
}
void pilih_N(){
digitalWrite(El_N, HIGH);
}
void El_off(){
digitalWrite(El_A, LOW);
digitalWrite(El_B, LOW);
digitalWrite(El_M, LOW);
digitalWrite(El_N, LOW);
}
void tampil (char data) {
oled.clearDisplay();
oled.setTextColor(WHITE);
oled.clearDisplay();
oled.setTextSize(2, 3);
oled.setCursor(10,10);
oled.print("Elec : 90");
oled.setTextSize(2);
oled.setCursor(10,40);
oled.print(data);
oled.display();
}