搜索代码

Lesson 66-2: Control 4 AC Bulbs or Loads Using a 4-Channel Relay with 4 Push Buttons—Push-Keep

Lesson 66-2: Control 4 AC Bulbs or Loads Using a 4-Channel Relay with 4 Push Buttons—Push-Keep

460-Lesson 66: Controlling a 4-channel relay with push-button switches
语言: C++
++
/*
  * Lesson 66-2: Controlling 4-channel relay with push button switches
 *  Arduino code to use 4 push buttons to turn ON or OFF 4 channel relays
 *  Push and hold to turn ON
 *  Release to turn OFF
 * This can be done with 4 push buttons to control 4 relays.
 See lesson 66-1 for the code that toggles the light push-on, push-off
  Watch instruction video for this code: https://youtu.be/0PW22PD89u0

 *  
 * Written by Ahmad Shamshiri for Robojax.com 
 * on December 11, 2018 at 19:39 in Ajax, Ontario, Canada


  
  This video is part of the Arduino Step by Step Course which starts here: https://youtu.be/-6qSrDUA5a8


If you found this tutorial helpful, please support me so I can continue creating 
content like this. Make a donation using PayPal by credit card https://bit.ly/donate-robojax

Get this code and other Arduino codes from Robojax.com
 * 
  * This code is "AS IS" without warranty or liability. Free to be used as long as you keep this note intact.
 * This code has been downloaded from Robojax.com
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.
 */
const int pushButton[] ={2,3,4,5};// define push button inputs
const int relayPin[]={11,10,9,8};// output pins where 4 relays will be connected
String relayNames[] ={"CH1", "CH2","CH3","CH4"};// Just put name for 4 relays
int pushed[] ={0,0,0,0};// status of each buttons
int relayStatus[] ={HIGH,HIGH,HIGH,HIGH};// initial status of relay


void setup() {
  // Robojax.com 4-Relay-4-Push button 20181211
  Serial.begin(9600);// initialize serial monitor 
  for(int i=0; i<4; i++)
  {
    pinMode(pushButton[i], INPUT_PULLUP); 
    pinMode(relayPin[i], OUTPUT);   
    digitalWrite(relayPin[i], HIGH);// initial relay status to be OFF
  }

// Robojax.com 4-Relay-4-Push button 20181211
}

void loop() {
// Robojax.com 4-Relay-4-Push button 20181211

  for(int i=0; i<4; i++)
  {
     int  val = digitalRead(pushButton[i]);   


      if(val == HIGH){
        Serial.print(relayNames[i]);
        Serial.println(" ON");
        digitalWrite(relayPin[i], LOW); 
       
      }else{
        Serial.print(relayNames[i]);
        Serial.println(" OFF");
        digitalWrite(relayPin[i], HIGH);
   
      }// else   
 
  }// for 
    Serial.println("=="); 
  delay(100);
// Robojax.com 4-Relay-4-Push button 20181211  
}// loop end

资源与参考

尚无可用资源。

文件📁

没有可用的文件。