LOJA FÍSICA
Praça Mauá, 4541 - Sala 22
09580-050 - São Caetano do Sul / SP
CENTRAL DE ATENDIMENTO
(11) 3522-7626
info@robocore.net
HORÁRIO DE FUNCIONAMENTO
De segunda à sexta das 9:00 às 18:30
Encontre um distribuidor perto de você
Retornar
ao topo

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

Level 0
324134 xp

Registrado em:
23/07/2011





Mensagens:
6
3
miguel123

Responder com citações
Mensagem Dom Ago 07, 2011 2:31 pm
juntar dois codigos arduino
olá eu gostaria de  pegar esses  dois codigos do arduino e juntar os dois para poder usar ao mesmo tempo porem nao consigui fazer isso


/*
  Led´s, saida digital
  
 Led´s conectados nas entradas PWM com um tempo sincronizado
 semelhante aos semáforos atuais

   O circuito
 * LED conectado nos pino digitais 5(verde), 6(vermelho), 9(verde),
 10(amarelo), 11(vermelho)

 Criado em  jul 2010
 by Vinicius Guedes

 */
int verde1 =  9;     // LED conectado no pino digital 9
int amarelo =  10;    // LED conectado no pino digital 10
int vermelho1 =  11;    // LED conectado no pino digital 11
int vermelho2 =  6;     // LED conectado no pino digital 6
int verde2 =  5;     // LED conectado no pino digital 7

  // o metodo setup() é executado uma vez, quando o programa começa:

void setup()   {                
  // declara a configuraçao:
  pinMode(verde1, OUTPUT);    
  pinMode(amarelo, OUTPUT);    
  pinMode(vermelho1, OUTPUT);    
  pinMode(vermelho2, OUTPUT);
  pinMode(verde2, OUTPUT);
}
  // o metodo loop() faz o programa se repetir:

void loop()                    
{
  digitalWrite(vermelho2, HIGH);   // o LED vermelho 2 liga
  delay(1000);                       // esperar os milisegundos
  digitalWrite(verde1, HIGH);      // o LED verde 1 liga
  delay(12000);                      // esperar os milisegundos
  digitalWrite(verde1, LOW);       // o LED verde 1 desliga
  delay(10);                         // esperar os milisegundos
  digitalWrite(amarelo, HIGH);     // o LED amarelo liga
  delay(2500);                       // esperar os milisegundos
  digitalWrite(amarelo, LOW);      // o LED amarelo desliga
  delay(10);                         // esperar os milisegundos
  digitalWrite(vermelho1, HIGH);   // o LED vermelho1 liga
  digitalWrite(vermelho2, LOW);    // o LED vermelho2 desliga
  digitalWrite(verde2, HIGH);      // o LED verde 2 liga
  delay(8500);                       // esperar os milisegundos
  digitalWrite(vermelho2, HIGH);   // o LED vermelho 2 liga
  delay(1000);                       // esperar os milisegundos
  digitalWrite(vermelho2, LOW);    // o LED vermelho 2 desliga
  delay(1000);                       // esperar os milisegundos
  digitalWrite(vermelho2, HIGH);   // o LED vermelho 2 liga
  delay(1000);                       // esperar os milisegundos
  digitalWrite(vermelho2, LOW);    // o LED vermelho 2 desliga
  delay(1000);                       // esperar os milisegundos
  digitalWrite(vermelho1, LOW);    // o LED vermelho1 desliga
  digitalWrite(verde2, LOW);       // o LED verde 2 desliga
} 



e juntar com esse e q o servo só mexeria quando o led verde 1 acendesse


// Sweep
// by BARRAGAN <http://barraganstudio.com>

#include <Servo.h>

Servo myservo;// cria um objeto do tipo myservo para acessar os metodos
              // podem ser criados um maximo de 8 objetos do tipo servo
int pos = 0; // variavel para armazenar a posição do servo

void setup()
{
  myservo.attach(9);// atribui o pino 9 do arduino para ser controlado pelo objeto
}

void loop()
{
  for(pos = 90; pos < 45; pos += 1)// vai de 0 a 180 graus incrementando a cada passagem do laço
  {
    myservo.write(pos);           // escreve o valor da posição (pos) movimentando o eixo do servo
    delay(15);                   // espera 15 milissigundos para movimentar o eixo e modificar o grau
  }
  for(pos = 180; pos>=1; pos-=1)// nesse laço supoem-se que o servo ja foi de o a 180, agora ele precisa voltar
  {                             // por isso sai de 180 e vai para 0
    myservo.write(pos);         // escreve o valor da posição (pos) movimentando o eixo do servo
    delay(6);                  // espera 15 milissigundos para movimentar o eixo e modificar o grau
  }
}

Mimos

Level 40
40316556 xp

Registrado em:
18/06/2005



Equipe:
ANDROIDOSS

Mensagens:
1021

Mimos

Responder com citações
Mensagem Dom Ago 07, 2011 3:32 pm
juntar dois codigos arduino
Voce precisa juntar os mesmos tipos de sintaxe com suas devidas correspondecias

Exemplo

void setup()
{
bla
bla
bla
}

void loop ()
{
onono
ononon
nonoon
onon
} 

void setup()
{
HHH
HHH
HHH
}

void loop ()
{
xoxox
xoxxo
xxooox
xxoxox
}

Na hora de juntar os códigos vc precisa fazer isso:

void setup()
{
bla
bla
bla
HHH
HHH
HHH
}

void loop ()
{
onono
ononon
nonoon
onon
xoxox
xoxxo
xxooox
xxoxox
}

_________________
2019 - Featherweight - WCXV
3
miguel123

Level 0
324134 xp

Registrado em:
23/07/2011





Mensagens:
6
3
miguel123

Responder com citações
Mensagem Dom Ago 07, 2011 4:19 pm
juntar dois codigos arduino
ahhhh entendi valeu esse seu exemplo me fez entender tudo vo tentar fazer aqui dps digo se deu certo
3
giovaniprego

Level 0
0 xp

Registrado em:
21/08/2018





Mensagens:
1
3
giovaniprego

Responder com citações
Mensagem Ter Ago 21, 2018 6:35 pm
juntar dois codigos arduino
Estou fazendo um projeto com 2 placas de LED tipo semaforo, e gostaria de acrescentar 2 LED's avulsos para que ficassem piscando intermitentes, porem não sei como fazer para que os mesmos trabalhem de forma simultanea.

Com ofaço para criar 2 loop simultaneos?

abaixo a configuração que fiz:

const int ledVerde1 = 3; //PINO DIGITAL UTILIZADO PELO LED VERDE
const int ledAmarelo1 = 4; //PINO DIGITAL UTILIZADO PELO LED AMARELO
const int ledVermelho1 = 5; //PINO DIGITAL UTILIZADO PELO LED VERMELHO
const int ledVerde2 = 8; //PINO DIGITAL UTILIZADO PELO LED VERDE
const int ledAmarelo2 = 9; //PINO DIGITAL UTILIZADO PELO LED AMARELO
const int ledVermelho2 = 10; //PINO DIGITAL UTILIZADO PELO LED VERMELHO
const int ledBranco = 12; //PINO DIGITAL UTILIZADO PELO LED BRANCO


void setup() {
  pinMode(ledVerde1,OUTPUT); //DEFINE O PINO COMO SAÍDA
  pinMode(ledAmarelo1,OUTPUT); //DEFINE O PINO COMO SAÍDA
  pinMode(ledVermelho1,OUTPUT); //DEFINE O PINO COMO SAÍDA
  pinMode(ledVerde2,OUTPUT); //DEFINE O PINO COMO SAÍDA
  pinMode(ledAmarelo2,OUTPUT); //DEFINE O PINO COMO SAÍDA
  pinMode(ledVermelho2,OUTPUT); //DEFINE O PINO COMO SAÍDA
  pinMode(ledBranco,OUTPUT); //DEFINE O PINO COMO SAÍDA

}

void loop() {

     digitalWrite(ledBranco,HIGH); //acende O LED BRANCO
     delay(250); //INTERVALO DE 0,25 SEGUNDOS
     digitalWrite(ledBranco,LOW); //APAGA O LED BRANCO
     delay(5000); //INTERVALO DE 5 SEGUNDOS
   
 {
  
  digitalWrite(ledVerde1,HIGH); //ACENDE O LED VERDE 1
  digitalWrite(ledVermelho2,HIGH); //ACENDE O LED VERMELHO 2
  delay(7000); //INTERVALO DE 7 SEGUNDO
  digitalWrite(ledVerde1,LOW); //APAGA O LED VERDE 1
  digitalWrite(ledAmarelo1,HIGH); //ACENDE O LED AMARELO 1
  delay(2000); //INTERVALO DE 2 SEGUNDO LED AMARELO 1
  digitalWrite(ledAmarelo1,LOW); //APAGA O LED AMARELO 1
  digitalWrite(ledVermelho2,LOW); //APAGA O LED VERMELHO 2 
  digitalWrite(ledVermelho1,HIGH); //ACENDE O LED VERMELHO 1
  digitalWrite(ledVerde2,HIGH); //ACENDE O LED VERDE 2
  delay(5000); //INTERVALO DE 5 SEGUNDOS LED VERDE 2
  digitalWrite(ledVerde2,LOW); //APAGA O LED VERDE 2
  digitalWrite(ledAmarelo2,HIGH); //ACENDE O LED AMARELO 2
  delay(2000); //INTERVALO DE 2 SEGUNDO LED AMARELO 2
  digitalWrite(ledAmarelo2,LOW); //APAGA O LED AMARELO 2
  digitalWrite(ledVermelho1,LOW); //APAGA O LED VERMELHO 1

  
  }
}

altemarmiranda

Level 0
86384 xp

Registrado em:
26/08/2012





Mensagens:
2

altemarmiranda

Responder com citações
Mensagem Dom Jun 02, 2019 12:13 pm
juntar dois codigos arduino
amigos... tenho dois codigos... para rodarem no Arduino Uno ok? 

nas declarações de:  bibliotecas , pinos , constantes , void setup() , modo de entrada e saida deu tudo ok!
porem em :

void loop() 

eu so consigo colocar 1 codigo... ok?

mas eu tenho 2 codigos... 

gostaria de rodar os dois codigos no void loop()....

tudo que tento... juntar... criar... etc... não vai... e não da certo... me ajudem... se possivel... aqui seguem os codigos...

------------------------------------codigo 1-----------------------------------------

void loop() {  
  Leitura();  //Chama a função responsável por fazer a leitura das Tag's
}
 
void Leitura(){
 
        IDtag = ""; //Inicialmente IDtag deve estar vazia.
        
        // Verifica se existe uma Tag presente
        if ( !LeitorRFID.PICC_IsNewCardPresent() || !LeitorRFID.PICC_ReadCardSerial() ) {
            delay(50);
            return;
        }
        
        // Pega o ID da Tag através da função LeitorRFID.uid e Armazena o ID na variável IDtag        
        for (byte i = 0; i < LeitorRFID.uid.size; i++) {        
            IDtag.concat(String(LeitorRFID.uid.uidByte[i], HEX));
        }        
        
        //Compara o valor do ID lido com os IDs armazenados no vetor TagsCadastradas[]
        for (int i = 0; i < (sizeof(TagsCadastradas)/sizeof(String)); i++) {
          if(  IDtag.equalsIgnoreCase(TagsCadastradas[i])  ){
              Permitido = true; //Variável Permitido assume valor verdadeiro caso o ID Lido esteja cadastrado
          }
        }       
 
        if(Permitido == true) acessoLiberado(); //Se a variável Permitido for verdadeira será chamada a função acessoLiberado()        
        else acessoNegado(); //Se não será chamada a função acessoNegado()
 
        delay(2000); //aguarda 2 segundos para efetuar uma nova leitura
}
 
void acessoLiberado(){
  Serial.println("Tag Cadastrada: " + IDtag); //Exibe a mensagem "Tag Cadastrada" e o ID da tag não cadastrada
    efeitoPermitido();  //Chama a função efeitoPermitido()
    Permitido = false;  //Seta a variável Permitido como false novamente
}
 
void acessoNegado(){
  Serial.println("Tag NAO Cadastrada: " + IDtag); //Exibe a mensagem "Tag NAO Cadastrada" e o ID da tag cadastrada
  efeitoNegado(); //Chama a função efeitoNegado()
}
 
void efeitoPermitido(){  
  int qtd_bips = 2; //definindo a quantidade de bips
  for(int j=0; j<qtd_bips; j++){
    //Ligando o buzzer com uma frequência de 1500 hz e ligando o led verde.
    tone(BUZZER,1500);
    digitalWrite(LED_VERDE, HIGH);   
    delay(100);   
    
    //Desligando o buzzer e led verde.      
    noTone(BUZZER);
//    digitalWrite(LED_VERDE, LOW);
    delay(100);
  }  
}
 
void efeitoNegado(){  
  int qtd_bips = 1;  //definindo a quantidade de bips
  for(int j=0; j<qtd_bips; j++){   
    //Ligando o buzzer com uma frequência de 500 hz e ligando o led vermelho.
    tone(BUZZER,500);
//    digitalWrite(LED_VERMELHO, HIGH);   
    delay(500); 
      
    //Desligando o buzzer e o led vermelho.
    noTone(BUZZER);
//    digitalWrite(LED_VERMELHO, LOW);
    delay(500);
  }  
}

-------------------------------------------------fim do codigo 1 --------------------------------------------------

---------------------------------------------codigo 2-------------------------------------------------------------


void loop() {
  // Preparamos o 1 sensor ultrassônico
  iniciarTrigger();
 
  // Obtemos a distancia
  float distancia = calcularDistancia();
 
  // Apagamos todos os LEDs
  apagarLEDs();
 
  // ativamos alerta de perigo
  if (distancia < sombra1)
  {
    // ativamos alertas
    alertas(distancia);
  }
 
}
 
// Apaga todos os LEDs
void apagarLEDs()
{
  // Apagamos todos os LEDs
  digitalWrite(LEDVERDE, LOW);
  digitalWrite(LEDAMARELO, LOW);
  digitalWrite(LEDVERMELHO, LOW);
}
 
// função que comprova o funcionamento dos leds e do som de testes
void alertas(float distancia)
{
  if (distancia < sombra1 && distancia >= sombra2)
  {
    // Acendemos os LED verde
    digitalWrite(LEDVERDE, HIGH);
    tone(BUZZER, 2000, 200);
  }
  else if (distancia < sombra2 && distancia > sombra3)
  {
    // Acendemos o LED amarelo
    digitalWrite(LEDAMARELO, HIGH);
    tone(BUZZER, 2500, 200);
  }
  else if (distancia <= sombra3)
  {
    // acendemos o LED vermelho
    digitalWrite(LEDVERMELHO, HIGH);
    tone(BUZZER, 3000, 200);
  }
}
 
// Método que calcula a distância que se encontra um objeto.
// Devolve uma variável tipo float que contém a distancia
float calcularDistancia()
{
  // função n pulse In obtém o tempo de demora em ativar entre estados, neste caso o HIGH (Alto)
  unsigned long tempo = pulseIn(ECHO, HIGH);
 
  // Obtemos a distância em cm, tem que converter o tempo em segundos que está em microssegundos
  // por isso se multiplica por 0.000001
  float distancia = tempo * 0.000001 * som / 2.0;
  Serial.print(distancia);
  Serial.print("cm");
  Serial.println();
  delay(250);
 
  return distancia;
}
 
// Método que inicia a sequência do Trigger para começar a medir
void iniciarTrigger()
{
  // Colocamos o Triiger no estado ZERO (baixo) e esperamos 2 ms
  digitalWrite(TRIGGER, LOW);
  delayMicroseconds(2);
 
  // Colocamos o pino Trigger no estado UM (alto) e esperamos 10 ms
  digitalWrite(TRIGGER, HIGH);
  delayMicroseconds(10);
 
  // Começamos colocando o pino Trigger no estado ZERO (baixo)
  digitalWrite(TRIGGER, LOW);
}


----------------------------------------------fim do codigo 2------------------------------------------------------------

como faço para juntar os dois sem dar erros?

geralmente os erros são:

'Leitura' was not declared in this scope




desde ja agradeço aos amigos... desejando um feliz ano de 2019

meu email: altemar.miranda@gmail.com
meu whattsaap: (51) 996840348
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: Permitido
Powered by phpBB © 2001 phpBB Group