#include <LiquidCrystal_I2C.h>
#define nama "dian"
#define nim "077"
#define soal "soal1"
char d[64] = "000000000000000000000000000000000000000000000000000000000000000";
int s1a = 0;
LiquidCrystal_I2C lcd(0x27, 20, 4);
int conn[63] = {2, 3, 4, 5, 6, 7, 8, 9, 10,
11, 12, 13, 14, 15, 16, 17, 18, 19,
22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 41, 42, 43, 44, 45, 46, 47, 48,
49, 50, 51, 52, 53, 54, 55, 56, 57,
58, 59, 60, 61, 62, 63, 64, 65, 66
};
void setup() {
Serial.begin(9600);
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("Wiring smulation for");
lcd.setCursor(0, 1);
lcd.print("3phase Motor Control");
lcd.setCursor(0, 2);
lcd.print("63 connection points");
lcd.setCursor(0, 3);
lcd.print("K1-K3 T1 S1-S3 L1-L3");
for (int i = 0; i < 63; i++) {
pinMode(conn[i], INPUT_PULLUP);
}
for (int i = 0; i < 63; i++) {
pinMode(conn[i], OUTPUT);
digitalWrite(conn[i], LOW);
for (int j = 0; j < 63; j++) {
int a = digitalRead(conn[j]);
if (a == 0 && d[j] == '0') d[j] = char(i + 49);
}
pinMode(conn[i], INPUT_PULLUP);
}
// Serial.println(d);
delay(1000);
}
void loop() {
int s1 = !digitalRead(A13);
if (s1 != s1a && s1) {
Serial.print(nama);
Serial.print(",");
Serial.print(nim);
Serial.print(",");
Serial.print(soal);
Serial.print(",");
Serial.println(d);
}
s1a = s1;
}
P1
P2
P3