Advertisement
hwthinker

ESP-12F Relay 10A 8 Channel SKU HD04A

Jan 18th, 2024
989
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Arduino 1.93 KB | Source Code | 0 0
  1. // Demo program SKU:HD04A by [email protected]
  2. // cara upload program
  3. // 1. pastikan jumper IO0 ke Ground
  4. // 2. klik tombol reset
  5. // 3. lepas jumper
  6. // 4. upload program
  7. // 5. pastikan tombol reset diklik lagi agar program running, kalau tidak direset tidak akan menjalankan program karena masih di mode download
  8.  
  9. // koneksi pin
  10. // Modul relay   serial USB
  11. // TX            RX
  12. // RX            TX
  13. // GND           GND
  14.  
  15. // definisi PinOUT
  16. #define RLY1 5
  17. #define RLY2 4
  18. #define RLY3 0
  19. #define RLY4 15
  20. #define RLY5 13
  21. #define RLY6 12
  22. #define RLY7 14
  23. #define RLY8 16
  24.  
  25. const byte numPins = 8;
  26. byte pinList[8] = {RLY1, RLY2, RLY3, RLY4, RLY5, RLY6, RLY7, RLY8};
  27.  
  28. // #define GPIO2 2  //internal LED
  29.  
  30. // Fungsi untuk membaca perintah dari serial port
  31. void readCommand() {
  32.   // Baca satu karakter dari serial port
  33.   char c = Serial.read();
  34.  
  35.   if (c == '1') {
  36.     // Set GPIO output ke HIGH
  37.     digitalWrite(RLY1, !digitalRead(RLY1));
  38.   }
  39.  
  40.   if (c == '2') {
  41.     // Set GPIO output ke HIGH
  42.     digitalWrite(RLY2, !digitalRead(RLY2));
  43.   }
  44.  
  45.   if (c == '3') {
  46.     // Set GPIO output ke HIGH
  47.     digitalWrite(RLY3, !digitalRead(RLY3));
  48.   }
  49.  
  50.   if (c == '4') {
  51.     // Set GPIO output ke HIGH
  52.     digitalWrite(RLY4, !digitalRead(RLY4));
  53.   }
  54.   if (c == '5') {
  55.     // Set GPIO output ke HIGH
  56.     digitalWrite(RLY5, !digitalRead(RLY5));
  57.   }
  58.   if (c == '6') {
  59.     // Set GPIO output ke HIGH
  60.     digitalWrite(RLY6, !digitalRead(RLY6));
  61.   }
  62.   if (c == '7') {
  63.     // Set GPIO output ke HIGH
  64.     digitalWrite(RLY7, !digitalRead(RLY7));
  65.   }
  66.   if (c == '8') {
  67.     // Set GPIO output ke HIGH
  68.     digitalWrite(RLY8, !digitalRead(RLY8));
  69.   }
  70. }
  71. // Fungsi setup
  72. void setup() {
  73.   // Inisialisasi serial port
  74.   Serial.begin(9600);
  75.  
  76.    for(int i=0; i<numPins; i++) {
  77.     pinMode(pinList[i], OUTPUT);
  78.     digitalWrite(pinList[i], LOW);
  79.   }
  80. }
  81.  
  82. // Fungsi loop
  83. void loop() {
  84.   // Baca perintah dari serial port
  85.   readCommand();
  86. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement