SUPORTE TÉCNICO
De segunda à sexta pelo e-mail:
suporte@robocore.net
CENTRAL DE ATENDIMENTO
De segunda à sexta das 8:00 às 17:00
(11) 3522-7626 / vendas@robocore.net
Retornar
ao topo

Classifique este tópicoPéssimoRuimMedianoBomÓtimo
Autor
Mensagem
3
eductm

Level 0
0 xp

Registrado em:
28/08/2021





Mensagens:
1
3
eductm

Responder com citações
Mensagem Sab Ago 28, 2021 10:58 am
AJUDA COM ARDUINO + NEXTION
Boa noite pessoal, venho pedir uma ajudinha, tenho um projeto com Arduino botões físicos e o nextion, onde utilizo o nextion como uma IHM, para acionar um rele. Porém ao executar o meu código o Botao somente funciona 1 vez, vejo que o Arduino está recebendo a informação com o RX E TX piscar, porém nada. 
#include <Nextion.h> 
#include <NexButton.h>
#include <NexText.h>
//Porta ligada ao pino IN1 do modulo
int porta_rele1 = 9;
//Porta ligada ao botao 1
int porta_botao1 = 2;// HOMEM AO MAR
//Porta ligada ao botao 2
int porta_botao2 = 3;// BAIXA VISIBILIDADE
//Porta ligada ao botao 3
int porta_botao3 = 4;//BOTAO LIVRE
//Porta ligada ao botao 3
int porta_botao4 = 5;//BOTAO LIVRE
int i=0;
int CurrentPage = 0;
NexButton bapito = NexButton(0, 1, "b0"); 
NexButton b0 = NexButton(1, 1, "b0");  // Button added
NexButton bback = NexButton(1, 6, "b1");
NexButton b2 = NexButton(1, 3, "b2");  // Button added
NexButton b3 = NexButton(1, 4, "b3");  // Button added
NexDSButton bt0 = NexDSButton(1, 5, "bt0");  // Dual state button added
NexPage page0    = NexPage(0, 0, "page0");
NexPage page1    = NexPage(1, 0, "page1");
char buffer[10] = {0};
uint32_t ds_var;
bool isPage0 = true;
int a,b;
void b0PopCallback (void * ptr) 
{ 
    digitalWrite(porta_botao1,LOW);
}
void b2PopCallback(void * ptr) {
       while (i<6)
    {
   digitalWrite(porta_rele1, LOW);
   delay(3000);
   digitalWrite(porta_rele1, HIGH);
   delay(1000);
   i++; 
     b0;      
     }
}
void bapitoPopCallback(void *ptr)
{
  page1.show();
}
void bbackPopCallback(void *ptr)
{
  page0.show();
}
NexTouch *nex_listen_list[] = 
{
    &bapito,
    &b0,
    &bback,
    &b2,
    &b3,
    &bt0,
    NULL
};
void setup(){
  Serial.begin(9600);
  nexInit();
  //Define pinos para o rele como saida
  pinMode(porta_rele1, OUTPUT); 
  //Define pinos dos botoes como entrada
  pinMode(porta_botao1, INPUT_PULLUP); 
  pinMode(porta_botao2, INPUT_PULLUP);
  pinMode(porta_botao3, INPUT_PULLUP);
  pinMode(porta_botao4, INPUT_PULLUP);
  //Estado inicial dos reles - desligados
  digitalWrite(porta_rele1,HIGH);
 bapito.attachPop(bapitoPopCallback, &bapito); //callback para o evento de release do botão btnNext
 bback.attachPop(bbackPopCallback, &bback); //callback para o evento de release do botão btnBack
b0.attachPop(b0PopCallback,&b0); 
b2.attachPop(b2PopCallback,&b2); 
}
void loop(){
nexLoop(nex_listen_list);
Serial.print("estado:"); 
Serial.println(buffer);
  //Verifica o acionamento do botao 1
  if (digitalRead(porta_botao1) !=1 || a==1 ) 
  {
  while (i<6)
    {
   digitalWrite(porta_rele1, LOW);
   delay(3000);
   digitalWrite(porta_rele1, HIGH);
   delay(1000);
   i++; 
  } 
digitalWrite(porta_botao1,HIGH);
  }
if (digitalRead(porta_botao2) == LOW ) {
      while(digitalRead(porta_botao2) == LOW ){
     digitalWrite(porta_rele1, LOW);
  delay(3000);
   digitalWrite(porta_rele1, HIGH);
     delay(3000);
      }
}
  //Verifica o acionamento do botao 3
if (digitalRead(porta_botao3) == LOW || b==1) {
        delay(30);
     if (digitalRead(porta_botao3) == LOW || b==1) {
    digitalWrite(porta_rele1, LOW);
        while (digitalRead(porta_botao3) == LOW ||b==1)
        {
     }
     digitalWrite(porta_rele1, HIGH);
    }
    }
  }
Mostrar mensagens desde a última:




Ir para:  
Todos os horários são GMT - 3 HorasVocê não tem permissão para escrever novas mensagens
v não tem permissão para responder às mensagens
Você não tem permissão para editar suas mensagens
Você não tem permissão para deletar suas mensagens
Você não tem permissão para classificar tópicos
Você não tem permissão para classificar mensagens
Você não tem permissão para votar em enquetes
Anexar downloads : Proibido
Fazer Download de Arquivos: Proibido
Powered by phpBB © 2001 phpBB Group