///////////File hedHeader pin Shift register 74HC595///////////////
#include <ShiftRegister74HC595.h>
ShiftRegister74HC595<10> sr(3, 2, 4);
////////////////////////end////////////////////////////////////
///////////File hedHeader pin Shift SevenSeg4D ///////////////
#include <SevenSeg4D.h>
const int latchPin = 10;
const char buf[18] = " HALLO PEOPLE";
const char buf1[18] = " READY";
const char buf2[18] = " OFF";
const char buf3[18] = " GOOD BY";
unsigned long last_out = 0;
ScrollDirection sdir = Right2Left ;
SevenSeg4D disp(latchPin, Anode);
////////////////////////end////////////////////////////////////
///////////File Header pin Shift register 74HC165///////////////
const int dataPin65 = 7; /* Q7 */
const int clockPin65 = 5; /* CP */
const int latchPin65 = 6; /* PL */
const int numBits = 8; /* Set to 8 * number of shift registers */
///////////////////////// End ////////////////////////////
////////////File header pin power/////////////////////////
const int Tombol_Power = 8;
const int reset = 12;
//////////////////////// End /////////////////////////////
void setup()
{
Serial.begin(115200);
pinMode(dataPin65, INPUT);
pinMode(clockPin65, OUTPUT);
pinMode(latchPin65, OUTPUT);
pinMode(Tombol_Power, INPUT);
pinMode(reset, OUTPUT);
}
void loop()
{
int inputPowerState = digitalRead(Tombol_Power);
if (inputPowerState == HIGH) {
Serial.print("Status:");
Serial.print(" Off");
} else {
Serial.print("Status:");
Serial.print(" On");
}
Serial.println();
delay(500);
int input = inputPowerState ; // Contoh input (misalnya, dari tombol atau sensor)
switch (input) {
case 0:
sr.setAllHigh();
delay(100);
disp.scrollMsg(buf, sdir, 200);
unsigned long tms = millis();
sr.setAllLow();
delay(100);
for (int i = 0; i < 100; i++) {
uint8_t pinValues[] = {B10000000};
sr.setAll(pinValues);
delay(500);
disp.scrollMsg(buf1, sdir, 200);
unsigned long tms = millis();
// Step 1: Sample
digitalWrite(latchPin65, LOW);
digitalWrite(latchPin65, HIGH);
// Step 2: Shift
Serial.println("Bits: ");
for (int i = 0; i < numBits; i++) {
int bit = digitalRead(dataPin65);
if (bit == HIGH) {
Serial.print("1");
} else {
Serial.print("0");
}
digitalWrite(clockPin65, HIGH); // Shift out the next bit
digitalWrite(clockPin65, LOW);
}
Serial.println();
delay(100);
int inputPowerState = digitalRead(Tombol_Power);
if (inputPowerState == HIGH) {
Serial.print("Status:");
Serial.print(" Off");
break;
} else {
Serial.print("Status:");
Serial.print(" On");
}
Serial.println();
delay(100);
}
case 1:
{
sr.setAllHigh();
delay(100);
disp.scrollMsg(buf2, sdir, 200);
sr.setAllLow();
delay(100);
disp.scrollMsg(buf3, sdir, 200);
}
break; // Berhenti di sini setelah LED 1 menyala
}
}
Suhu 0°
Suhu 30°
Suhu 40°
Suhu 60°
Waktu 15mnt
Waktu 30mnt
Waktu 40mnt
Waktu 60mnt
Level air 15 %
Level air 30%
Level air 40 %
Level air 60 %
Kecepatan 15 %
Kecepatan 30%
Kecepatan 40 %
Kecepatan 60 %
Mode Spin 1
Mode Spin 2
Mode Spin 3
Mode Spin 4
indikator sensor suhu
indikator sensor kecepatan
indikator sensor level air
indikator mode spin
indikator waktu Start dan Finis
mulai/
berhenti
Spin
waktu
suhu
level air
keceptan
automatic/
manual
setrika/
Mencuci
Encoder otomatis 16
MODULE MESIN CUCI
Bersiap proses
Berhenti / mulai
Otomatis/manual
Setrika/ mencuci
OFF / ON
Suhu
Kecepatan
Level Air