Olá...estou implementando em meu aquario um lcd 5" com arduino mega, estou ligando um relay de 2 canais. No menu do lcd touch no botão 1 funciona o relay1 mas se coloco em outro botão o relay2 não funciona, mesmo copiando e colando trocando somente de relay1 para relay2.

#include <tinyFAT.h>
#include <UTFT.h>
#include <UTFT_tinyFAT.h>
#include <UTFT_Geometry.h>
#include <UTouch.h>
#include <UTFT_Buttons.h>

int color = 0;
word colorlist[] = {VGA_WHITE, VGA_BLACK, VGA_RED, VGA_BLUE, VGA_GREEN, VGA_FUCHSIA, VGA_YELLOW, VGA_AQUA};
int  bsize = 4;

int RELAY1 = 9;
int RELAY2 = 8;  

boolean RELAY1Check = false;
boolean RELAY2Check = false;

// Declare which fonts we will be using
extern uint8_t SmallFont[];
extern uint8_t BigFont[];
extern uint8_t Dingbats1_XL[];
extern uint8_t SevenSegNumFont[];

UTFT           myGLCD(CTE50, 38, 39, 40, 41);  
UTFT_tinyFAT   myFiles(&myGLCD);
UTouch         myTouch(6,5,4,3,2);
UTFT_Buttons   myButtons(&myGLCD, &myTouch);
UTFT_Geometry  geo(&myGLCD);

char* files800[]={"PIC801.RAW", "PIC802.RAW", "PIC803.RAW", "PIC804.RAW", "PIC805.RAW", "PIC806.RAW", "PIC807.RAW", "PIC808.RAW", "", ""}; // 800x480
char* files[12];

int picsize_x, picsize_y;
boolean display_rendertime=false;  // Set this to true if you want the rendertime to be displayed after a picture is loaded
boolean display_filename=false;  // Set this to false to disable showing of filename

word res;
long sm, em;

int but1, but2, but3, but4, but5, but6, butX, butY, pressed_button;
boolean default_colors = true;

void setup() {
  
  myGLCD.InitLCD();
  myGLCD.clrScr(); 
  file.initFAT();
  Serial.begin(9600);
  pinMode(RELAY1, OUTPUT);
  digitalWrite(RELAY1,LOW);
  Serial.begin(9600);  
  pinMode(RELAY2, OUTPUT);
  digitalWrite(RELAY2,LOW);
  myGLCD.setColor(255,255,255);
  myGLCD.setFont(SmallFont);
  picsize_x=myGLCD.getDisplayXSize();
  picsize_y=myGLCD.getDisplayYSize();
  switch (picsize_x)
  {
  case 800:
      for (int z=0; z<sizeof(files800)/sizeof(*files800);z++)
        files[z] = files800[z];
  break;
  }
  
  myTouch.InitTouch(LANDSCAPE);
  myTouch.setPrecision(PREC_MEDIUM); 
  myButtons.setTextFont(BigFont);
  myButtons.setSymbolFont(Dingbats1_XL);  
 
  but1 = myButtons.addButton( 77,  57, 280,  68, "Button 1");
  but2 = myButtons.addButton( 443,  57, 280,  68, "Button 2");
  but3 = myButtons.addButton( 77, 152, 280,  68, "Button 3");
  but4 = myButtons.addButton( 443, 152, 280,  68, "Button 4");
  but5 = myButtons.addButton( 77, 248, 280,  68, "Button 5");
  but6 = myButtons.addButton( 443, 248, 280,  68, "Button 6");
  butX = myButtons.addButton(628, 354,  97,  68, "a", BUTTON_SYMBOL);
  butY = myButtons.addButton( 77, 354, 280,  68, "I", BUTTON_SYMBOL | BUTTON_SYMBOL_REP_3X); 
  
  myGLCD.setColor(VGA_WHITE);
  myGLCD.drawRect(0, 0, 799, 479);
  myGLCD.drawRect(10, 10, 789, 469);
  myGLCD.setFont(BigFont);
  myGLCD.print("You pressed:", 393, 365);
  myGLCD.setColor(VGA_BLACK);
  myGLCD.setBackColor(VGA_WHITE);
  myGLCD.setFont(BigFont);
  myGLCD.print("None       ",  393, 400);
}

void loop() {

  int pressed_button;
  int current_demo;
  myButtons.drawButtons();
  
  current_demo = 0;    
  
  while(current_demo==0) {
  if (myTouch.dataAvailable() == true)  {
  pressed_button = myButtons.checkButtons();
  //current_demo = 0;
      
  if (pressed_button==butY)  {
  if (default_colors)        {
      myButtons.setButtonColors(VGA_YELLOW, VGA_RED, VGA_YELLOW, VGA_BLUE, VGA_GRAY);
      myButtons.relabelButton(butY, "_");
      myButtons.drawButtons();
      default_colors=false;
        }
        else
        {
       myButtons.setButtonColors(VGA_WHITE, VGA_GRAY, VGA_WHITE, VGA_RED, VGA_BLUE);
       myButtons.relabelButton(butY, "I");
       myButtons.drawButtons();
       default_colors=true;
        }
      }
      if (pressed_button==but1){
        myGLCD.print("Button 1", 393, 400);
        current_demo = 1;
      }else if (pressed_button==but2){
        myGLCD.print("Button 2", 393, 400);
        current_demo = 2;
      }else if (pressed_button==but3){
        myGLCD.print("Button 3", 393, 400);
        current_demo = 3;
      }else if (pressed_button==but4){
        myGLCD.print("Button 4", 393, 400);
        current_demo = 4;
      }else if (pressed_button==but5){
        myGLCD.print("Button 5", 393, 400);
        current_demo = 5;
      }else if (pressed_button==but6){
        myGLCD.print("Button 6", 393, 400);       
        current_demo = 6;
      }else if (pressed_button==-1){
        myGLCD.print("None    ", 393, 400);      
      }
      }
      if(current_demo != 0)
      {      
      if(current_demo==1){
        Demo1();
        //myGLCD.InitLCD(LANDSCAPE);
        //myGLCD.clrScr();
        Serial.begin(9600);  
        
      } else if(current_demo==2){
        Demo2();
       //myGLCD.InitLCD(LANDSCAPE);
        //myGLCD.clrScr();
        Serial.begin(9600); 
              
      } else if(current_demo==3){
        Demo3();
    //myGLCD.InitLCD(LANDSCAPE);
        //myGLCD.clrScr();
        Serial.begin(9600);
              
      } else if(current_demo==4){
        Demo4();
        myGLCD.InitLCD(LANDSCAPE);
        myGLCD.clrScr();  
           
      } else if(current_demo==5){
        Demo5();
        myGLCD.InitLCD(LANDSCAPE);
        myGLCD.clrScr(); 
       
      } else if(current_demo==6){
        Demo6();
        myGLCD.InitLCD(LANDSCAPE);
        myGLCD.clrScr();
           
      }
      }
      }
      }
    
  void Demo6()
{
  while(1){

}
void drawColorMarkerAndBrushSize(int col)
{
    randomSeed(analogRead(0));
  // Setup the LCD
  myGLCD.InitLCD();
  myGLCD.setFont(SmallFont);    
        
// Clear the screen and draw the frame
  myGLCD.clrScr();
    myGLCD.setColor(255, 0, 0);
  myGLCD.fillRect(0, 0, 319, 13);
  myGLCD.setColor(64, 64, 64);
  myGLCD.fillRect(0, 226, 319, 239);
  myGLCD.setColor(255, 255, 255);
  myGLCD.setBackColor(255, 0, 0);
  myGLCD.print("* Universal Color TFT Display Library *", CENTER, 1);
  myGLCD.setBackColor(64, 64, 64);
  myGLCD.setColor(255,255,0);
  myGLCD.print("a href="http://electronics.henningkarlsen.com>">http://electronics.henningkarlsen.com>;", CENTER, 227);

  myGLCD.setColor(0, 0, 255);
  myGLCD.drawRect(0, 14, 319, 225);
  
  
 
}

void Demo5()
{
  myGLCD.InitLCD();
  myGLCD.clrScr();
  myGLCD.setFont(BigFont);

  myTouch.InitTouch();
  myTouch.setPrecision(PREC_HI);
  
  myGLCD.setColor(VGA_WHITE);
  myGLCD.drawLine(32,0,32,myGLCD.getDisplayYSize()-1);
  myGLCD.drawLine(myGLCD.getDisplayXSize()-32,0,myGLCD.getDisplayXSize()-32,myGLCD.getDisplayYSize()-1);
  myGLCD.print("C", myGLCD.getDisplayXSize()-24, 8);
  myGLCD.print("L", myGLCD.getDisplayXSize()-24, 24);
  myGLCD.print("E", myGLCD.getDisplayXSize()-24, 40);
  myGLCD.print("A", myGLCD.getDisplayXSize()-24, 56);
  myGLCD.print("R", myGLCD.getDisplayXSize()-24, 72);
  myGLCD.print("+", myGLCD.getDisplayXSize()-24, 136);
  myGLCD.print("-", myGLCD.getDisplayXSize()-24, 200);
  myGLCD.fillRect(myGLCD.getDisplayXSize()-32,96,myGLCD.getDisplayXSize()-1,128);
  myGLCD.drawLine(myGLCD.getDisplayXSize()-32,160,myGLCD.getDisplayXSize()-1,160);
  myGLCD.drawLine(myGLCD.getDisplayXSize()-32,192,myGLCD.getDisplayXSize()-1,192);
  myGLCD.drawLine(myGLCD.getDisplayXSize()-32,224,myGLCD.getDisplayXSize()-1,224);
  for (int i=0; i<8; i++)
  {
    myGLCD.setColor(colorlist[i]);
    myGLCD.fillRect(0, (i*30), 24, (((i+1)*30)-1));
  }
  drawColorMarkerAndBrushSize(color);
  
  while(1)
  {
  long x, y;
  
  while (myTouch.dataAvailable() == true)
  {
      myTouch.read();
      x = myTouch.getX();
      y = myTouch.getY();
      if ((x!=-1) and (y!=-1))
      {
        if (x>(31+bsize) and (x<myGLCD.getDisplayXSize()-(31+bsize)))
        {
          if (bsize==1)
            myGLCD.drawPixel(x, y);
          else
            myGLCD.fillCircle(x, y, bsize);
        }
        else
        {
          if (x<(30+bsize))
          {
            if (y<240)
            {
              color = y / 30;
              drawColorMarkerAndBrushSize(color);
              while (myTouch.dataAvailable()) {};
              delay(50);
           }
          }
          else
          {
            if (y<96)
            {
              myGLCD.setColor(VGA_BLACK);
              myGLCD.fillRect(33, 0, myGLCD.getDisplayXSize()-33, myGLCD.getDisplayYSize()-1);
              myGLCD.setColor(colorlist[color]);
            }
            if ((y>128) and (y<160))
            {
              if (bsize<7)
              {
                bsize++;
                drawColorMarkerAndBrushSize(color);
                while (myTouch.dataAvailable()) {};
                delay(50);
              }
            }
            if ((y>160) and (y<192))
            {
                bsize=4;
                drawColorMarkerAndBrushSize(color);
                while (myTouch.dataAvailable()) {};
                delay(50);
            }
            if ((y>192) and (y<224))
            {
              if (bsize>1)
              {
                bsize--;
                drawColorMarkerAndBrushSize(color);
                while (myTouch.dataAvailable()) {};
                delay(50);
              }
            }
          }
        }
      }
    }    
  }
}

void Demo4()
{
  myGLCD.InitLCD(LANDSCAPE);
  myGLCD.clrScr();
  myTouch.InitTouch(LANDSCAPE);
  myTouch.setPrecision(PREC_MEDIUM);
  
  picsize_x=myGLCD.getDisplayXSize();
  picsize_y=myGLCD.getDisplayYSize();

  for (int i=2; i<12; i++)
  {
    if (files[i]!="")
    {
      res=myFiles.loadBitmap(0, 0, picsize_x, picsize_y, files[i]);
      if (res!=0)
      {
        if (res==0x10)
        {
          myGLCD.print("File not found...", 0, 0);
          myGLCD.print(files[i], 0, 14);
        }
        else
        {
          myGLCD.print("ERROR: ", 0, 0);
          myGLCD.printNumI(res, 56, 0);
        }
        delay(1000);
        myGLCD.clrScr();
      }
      else
      {
        delay(1500);
      }
    }
  }
  
}

void clearField()
{
  myGLCD.setColor(VGA_BLACK);
  myGLCD.fillRect(1,15,318,224);
  delay(3000);
}

void Demo3(void)
{
  
  //myGLCD.InitLCD(LANDSCAPE);
  //myGLCD.clrScr();
  myTouch.InitTouch(LANDSCAPE);
  myTouch.setPrecision(PREC_MEDIUM);
  Serial.begin(9600);
    if(pressed_button==but3){ // then someone pressed button 1
    if(RELAY2Check == false){   //Turn the relay ON
      digitalWrite(RELAY2, HIGH);
      RELAY2Check = true;
    }
    else if(RELAY2Check == true){  //Turn the relay OFF
      digitalWrite(RELAY2, LOW);
      RELAY2Check = false;
  

  }
    }
}

void Demo2(void)
{
  
  //myGLCD.InitLCD(LANDSCAPE);
  //myGLCD.clrScr();
  myTouch.InitTouch(LANDSCAPE);
  myTouch.setPrecision(PREC_MEDIUM);
  Serial.begin(9600);
    if(pressed_button==but2){ // then someone pressed button 1
    if(RELAY2Check == false){   //Turn the relay ON
      digitalWrite(RELAY2, HIGH);
      RELAY2Check = true;
    }
    else if(RELAY2Check == true){  //Turn the relay OFF
      digitalWrite(RELAY2, LOW);
      RELAY2Check = false;
  

  }
    }
}
void Demo1(void)
{
  
  //myGLCD.InitLCD(LANDSCAPE);
  //myGLCD.clrScr();
  myTouch.InitTouch(LANDSCAPE);
  myTouch.setPrecision(PREC_MEDIUM);
  Serial.begin(9600);
    if(pressed_button==but1){ // then someone pressed button 1
    if(RELAY1Check == false){   //Turn the relay ON
      digitalWrite(RELAY1, HIGH);
      RELAY1Check = true;
    }
    else if(RELAY1Check == true){  //Turn the relay OFF
      digitalWrite(RELAY1, LOW);
      RELAY1Check = false;
  

  }
    }
}

as funções do relay1 está igual a do relay2 mas só o 1 funciona:


int RELAY1 = 9;
int RELAY2 = 8;  

boolean RELAY1Check = false;
boolean RELAY2Check = false;

void setup() {

  Serial.begin(9600);
  pinMode(RELAY1, OUTPUT);
  digitalWrite(RELAY1,LOW);
  Serial.begin(9600);  
  pinMode(RELAY2, OUTPUT);
  digitalWrite(RELAY2,LOW);

  
void loop() {

      
      if (pressed_button==but1){
        myGLCD.print("Button 1", 393, 400);
        current_demo = 1;
      }else if (pressed_button==but2){
        myGLCD.print("Button 2", 393, 400);
        current_demo = 2;
     
      if(current_demo==1){
        Demo1();
        //myGLCD.InitLCD(LANDSCAPE);
        //myGLCD.clrScr();
        Serial.begin(9600);  
        
      } else if(current_demo==2){
        Demo2();
       //myGLCD.InitLCD(LANDSCAPE);
        //myGLCD.clrScr();
        Serial.begin(9600); 
              
     
void Demo2(void)
{
  
  //myGLCD.InitLCD(LANDSCAPE);
  //myGLCD.clrScr();
  myTouch.InitTouch(LANDSCAPE);
  myTouch.setPrecision(PREC_MEDIUM);
  Serial.begin(9600);
    if(pressed_button==but2){ // then someone pressed button 1
    if(RELAY2Check == false){   //Turn the relay ON
      digitalWrite(RELAY2, HIGH);
      RELAY2Check = true;
    }
    else if(RELAY2Check == true){  //Turn the relay OFF
      digitalWrite(RELAY2, LOW);
      RELAY2Check = false;
  

  }
    }
}
void Demo1(void)
{
  
  //myGLCD.InitLCD(LANDSCAPE);
  //myGLCD.clrScr();
  myTouch.InitTouch(LANDSCAPE);
  myTouch.setPrecision(PREC_MEDIUM);
  Serial.begin(9600);
    if(pressed_button==but1){ // then someone pressed button 1
    if(RELAY1Check == false){   //Turn the relay ON
      digitalWrite(RELAY1, HIGH);
      RELAY1Check = true;
    }
    else if(RELAY1Check == true){  //Turn the relay OFF
      digitalWrite(RELAY1, LOW);
      RELAY1Check = false;
  

  }
    }
}

Se alguém puder ajudar vlw

Exibições: 1619

Responder esta

Respostas a este tópico

Fiz esse Sketch aqui agora, faz o teste ai, espero ter ajudado!

 

 

//
//
// ...............................................  CONTROLE DE SAIDAS ATRAVES DO TOUCH SCREEN 5" ...............................................................................
//
//
// Produzido por: Bruno Gonçalves
// Data : 13/06/2014
// IDE: Arduino 1.5.6-r6
// Nome : Controle de 6 Saidas Touch Screen
//
//


// Bibliotecas usadas
#include <UTFT.h>           // Tela TTF
#include <UTouch.h>         // Touch Screen
#include <UTFT_Buttons.h>   // Botoes
#include <UTFT_Teclado.h>   // Teclado

//Fontes usadas
extern uint8_t Ubuntu[];


UTFT             Tela(ITDB50,38,39,40,41);         // Variavel da Tela 5.0 polegadas
UTouch           Touch(6,5,4,3,2);                 // Variavel do Touch Screen
UTFT_Buttons     Botao(&Tela, &Touch);             // Variavel dos botoes
UTFT_Teclado     Teclado(&Tela, &Touch, &Botao);   // Variavel do teclado


// Variaveis para controle das saidas
int contador1; //Contador para saida 1
int contador2; //Contador para saida 2
int contador3; //Contador para saida 3
int contador4; //Contador para saida 4
int contador5; //Contador para saida 5
int contador6; //Contador para saida 6

// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

void setup()
{
  Serial.begin(9600); 
  Touch.iniciarTouch();               // Inicia a tela Touch Screen           
  Touch.setPrecisao(PREC_MEDIA); // Seta a precisão da tela para Média
  Tela.iniciaLCD(HORIZONTAL);         // Inicia o Painel LCD
  Tela.alteraContraste(100);


// Declarando dos pinos 7 ao 12 como saidas digitais
pinMode(7,OUTPUT);// Saida para o botao 1
pinMode(8,OUTPUT);// Saida para o botao 2
pinMode(9,OUTPUT);// Saida para o botao 3
pinMode(10,OUTPUT);// Saida para o botao 4
pinMode(11,OUTPUT);// Saida para o botao 5
pinMode(12,OUTPUT);// Saida para o botao 6

 

// Contadores para fazer as funções dos botões entre ON e OFF
contador1 = 0; //Contador para saida 1
contador2 = 0; //Contador para saida 2
contador3 = 0; //Contador para saida 3
contador4 = 0; //Contador para saida 4
contador5 = 0; //Contador para saida 5
contador6 = 0; //Contador para saida 6

}

// ----------------------------------------------------------------------------------------------------

void loop()  // Inicia o LOOP
{
 
  // Variaveis para criar os botões
    int Ba, Bb, Bc, Bd, Be, Bf, BotaoPressionado;
 
 
  boolean sair = false; 
 
 
 
 
 
 //COMANDOS PARA LIBERAR AS SAIDAS ..........................................................................................................................................
 
 
 //saida 1
 if(contador1==1)
 {
   digitalWrite(7,1);
 }
 if(contador1==2)
 {
   digitalWrite(7,0);
   contador1 = 0;
 }
 
 
 
   //saida 2
 if(contador2==1)
 {
   digitalWrite(8,1);
 }
 if(contador2==2)
 {
   digitalWrite(8,0);
   contador2 = 0;
 }
 
 
   //saida 3
 if(contador3==1)
 {
   digitalWrite(9,1);
 }
 if(contador3==2)
 {
   digitalWrite(9,0);
   contador3 = 0;
 }
 
 
 
   //saida 4
 if(contador4==1)
 {
   digitalWrite(10,1);
 }
 if(contador4==2)
 {
   digitalWrite(10,0);
   contador4 = 0;
 }
 
 
   //saida 5
 if(contador5==1)
 {
   digitalWrite(11,1);
 }
 if(contador5==2)
 {
   digitalWrite(11,0);
   contador5 = 0;
 }
 
 
   //saida 6
 if(contador6==1)
 {
   digitalWrite(12,1);
 }
 if(contador6==2)
 {
   digitalWrite(12,0);
   contador6 = 0;
 }
 
 
 
 
 //IMPRIME DADOS NO DISPLAY TOUCH SCREEN 5" .................................................................................................................................
  while (true)
  {
   
     Tela.preencherTela(VGA_BLACK);
     Botao.excluiTodosBotoes(); 
 
      // coluna, linha, largura, altura, largura da caixa de texto, cor fundo, cor letra, fonte, frase a ser escrita, alinhamento
      Tela.molduraCheia(2, 1, 797, 40, VGA_BLUE, VGA_BLUE);
      Tela.alterarFonte(Ubuntu, VGA_WHITE, VGA_BLUE); 
      Tela.escreverString("  CONTROLE DE SAIDAS TOUCH   ", 10, 5);
    
                        // Lin, Col, Larg, Alt, Fonte, Cor Letra, CorFundo, Label
     Ba = Botao.novoBotao(  60,  10,  250, 200, Ubuntu, VGA_BLACK,  VGA_LIME, "SAIDA 1"); 
     Bb = Botao.novoBotao(  60, 270,  250, 200, Ubuntu, VGA_BLACK,  VGA_LIME,   "SAIDA 2"); 
     Bc = Botao.novoBotao(  60, 530,  250, 200, Ubuntu, VGA_BLACK,  VGA_LIME,   "SAIDA 3"); 
    
     Bd = Botao.novoBotao( 270,  10,  250, 200, Ubuntu, VGA_BLACK, VGA_LIME,     "SAIDA 4");    
     Be = Botao.novoBotao( 270, 270,  250, 200, Ubuntu, VGA_BLACK, VGA_LIME,    "SAIDA 5"); 
     Bf = Botao.novoBotao( 270, 530,  250, 200, Ubuntu, VGA_BLACK, VGA_LIME,    "SAIDA 6");      
    
     while(true)
     {

      //Verifica se algum lugar do touch foi pressionado, e se sim, apos isto verifica qual atraves das comparações abaixo
       if (Touch.telaPressionada() == true)
       {
         BotaoPressionado = Botao.verificaBotaoPressionado();// verifica qual botao foi pressionado abaixo
        
        
 // Comando para o botao SAIDA 1 .................................................................................................................................................       
       
         if (BotaoPressionado == Ba)
         {
          contador1++;
         
           if(contador1==1)
          {
          Serial.println("Saida 1 Ligado");
          }
           if(contador1==2)
          {
          Serial.println("Saida 1 Desligada");
          }
            
            
              break;
         }
         else
        
 // Comando para o botao SAIDA 2 .................................................................................................................................................       
        
         if (BotaoPressionado == Bb)
         {
             contador2++;
             
               if(contador2==1)
          {
          Serial.println("Saida 2 Ligado");
          }
           if(contador2==2)
          {
          Serial.println("Saida 2 Desligada");
          }
             
             
             
              break;
         }
         else
 // Comando para o botao SAIDA 3 .................................................................................................................................................      
        
        
         if (BotaoPressionado == Bc)
         {
             contador3++;
             
               if(contador3==1)
          {
          Serial.println("Saida 3 Ligado");
          }
           if(contador3==2)
          {
          Serial.println("Saida 3 Desligada");
          }
             
                           
              break;
         }
         else
        
// Comando para o botao SAIDA 4 .................................................................................................................................................        
       
         if (BotaoPressionado == Bd)
         {
              contador4++;
            
              if(contador4==1)
          {
          Serial.println("Saida 4 Ligado");
          }
           if(contador4==2)
          {
          Serial.println("Saida 4 Desligada");
          }
            
            
              break;
         }
         else


// Comando para o botao SAIDA 5 .................................................................................................................................................        
        
         if (BotaoPressionado == Be)
         {
              contador5++;
             
             
               if(contador5==1)
          {
          Serial.println("Saida 5 Ligado");
          }
           if(contador5==2)
          {
          Serial.println("Saida 5 Desligada");
          }
             
             
              break;
         }
         else


// Comando para o botao SAIDA 6 .................................................................................................................................................        
    
         if (BotaoPressionado == Bf)
         {
              contador6++;
            
              if(contador6==1)
          {
          Serial.println("Saida 6 Ligado");
          }
           if(contador6==2)
          {
          Serial.println("Saida 6 Desligada");
          }
            
            
              break;
         }        
       }
     }
 }
} // Fecha o LOOP

coloque apos os dados de pinMode..... declarando para saidas iniciarem desligadas, acho que fara o projeto ficar mais estavel ainda

 


// Força saidas iniciarem desligadas
digitalWrite(7,LOW); // Força começar desligada
digitalWrite(8,LOW); // Força começar desligada
digitalWrite(9,LOW); // Força começar desligada
digitalWrite(10,LOW); // Força começar desligada
digitalWrite(11,LOW); // Força começar desligada
digitalWrite(12,LOW); // Força começar desligada

 

aguardo resposta

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço