//Library ----------------------------------------------
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
//------------------------------------------------------
//Define Pin -------------------------------------------
#define pinAdc A0
#define pinSw1 12
#define pinSw2 11
#define pinSw3 10
#define pinSw4 9
#define pinClock 6
#define pinData 5
#define pinLatch 4
#define pinClockLed 3
#define pinDataLed 2
#define pinLatchLed 13
//------------------------------------------------------
//Fungsi Macro -----------------------------------------
#define led1(x) digitalWrite(pinLed1, x)
#define led2(x) digitalWrite(pinLed2, x)
#define led3(x) digitalWrite(pinLed3, x)
#define led4(x) digitalWrite(pinLed4, x)
#define clockSeg(x) digitalWrite(pinClock, x)
#define dataSeg(x) digitalWrite(pinData, x)
#define latchSeg(x) digitalWrite(pinLatch, x)
#define clockLed(x) digitalWrite(pinClockLed, x)
#define dataLed(x) digitalWrite(pinDataLed, x)
#define latchLed(x) digitalWrite(pinLatchLed, x)
#define sw1 digitalRead(pinSw1)
#define sw2 digitalRead(pinSw2)
#define sw3 digitalRead(pinSw3)
#define sw4 digitalRead(pinSw4)
//------------------------------------------------------
//Set alamat I2C dan ukuran LCD ------------------------
LiquidCrystal_I2C lcd(0x27,16,2);
//------------------------------------------------------
//Variabel ---------------------------------------------
uint16_t dataADC = 0;
//------------------------------------------------------
void setup(){
pinMode(pinAdc, INPUT);
pinMode(pinSw1, INPUT);
pinMode(pinSw2, INPUT);
pinMode(pinSw3, INPUT);
pinMode(pinSw4, INPUT);
pinMode(pinClock, OUTPUT);
pinMode(pinData, OUTPUT);
pinMode(pinLatch, OUTPUT);
pinMode(pinClockLed, OUTPUT);
pinMode(pinDataLed, OUTPUT);
pinMode(pinLatchLed, OUTPUT);
Serial.begin(9600);
lcd.init();
lcd.backlight();
lcd.clear();
lcd.setCursor(0,0);
lcd.print("LKS 2025");
lcd.setCursor(0,1);
lcd.print("ELECTRONICS");
delay(2000);
lcd.clear();
}
void loop(){
dataADC = analogRead(pinAdc);
lcd.setCursor(0,0);
lcd.print("Putar Potensio ");
lcd.setCursor(0,1);
lcd.print("Nilai ADC :");
lcd.print(dataADC);
lcd.print(" ");
}
SW1
SW2
SW3
SW4
LED1
LED2
LED3
LED4
LED5
LED6
LED7
LED8