Adicionado por Lab de Garagem:

  • Pedimos que postem seus tutoriais, notícias e projetos através do blog (clique aqui).
  • Dúvidas e questões técnicas através do fórum (clique aqui).
  • Comece o seu post com uma imagem ou video, assim ela aparecerá na primeira página do site, atraindo mais interessados.

Oi Amigos,

Este forum é uma comunidade.

Aqueles que aqui ajudam, são voluntários.

Não recebemos nada além de críticas ou elogios.

Muitas vezes recebemos muita alegria de saber que conseguimos auxiliar alguém,

e este expressou também muita alegria ao realizar algo que sozinho não estava conseguindo.

Sentimos muito prazer em auxiliar nas sua idéias ou dificuldades.

Mas para facilitar nosso entendimento, damos aqui uma sugestão de como

a idéia ou dificuldade deve ser exposta:

 

Descreva a de forma simples e clara, a idéia ou dificuldade, que está tendo, e

forneça informações complementares do tipo:

 

sketchs, esquemas, desenhos, fotos, etc.

 

Caso vá postar algum sketch, antes de posta-lo,

certifique-se que ele está com as linha de código comentadas e identado:

 

 

 Identar (ou dentear) o código é organizar visualmente seu código de

 forma que os blocos dependentes fiquem alinhados e mais à direita,

 facilitando o entendimento do que está subordinado a que.

 

Muitos voluntários daqui do LdG, ao verem um código desorganizado,

e sem comentários, desistem de ajudar.

 

Ao postar sketchs, dê preferência postando em arquivos, ou em sites como

o www.pastebin.com, pois postando na área de texto do seu post, caracteres

podem ser perdidos

 

Exemplo de identação:

 

Sem identação:

 

void loop ()

{

a = b;

if (a ==  c)

{

x =y;

z++;

}

}

 

Identação recomendada:

 

 void loop ()

 {

    a = b;                        //  Valor em a igual ao valor em b

    if (a ==  c)                 //  Se valor em a igual a valor em c

   {                                //  Faça

      x =y;                      //  Valor em x igual a valor em y

      z++;                       //  Incremente valor em z

    }

 }

 

Este simples procedimento, colocará a sua idéia no texto, e tornará muito mais fácil

ao amigo que te auxilia, a entender o que você quer fazer,

e o melhor ainda, é que no futuro você lembrará porque que escreveu uma determinada linha.

Editado por Lab de Garagem (dica de Maurício Ortega):

"Na própria ide do Arduino na aba "Edit ",selecione  >Copy as HTML.

E aqui no fórum selecionar HTML e colar o texto copiado, talvez tenha que corrigir algum caractere especial".

Como este site é uma comunidade de ajuda, e todos aqui o fazem por livre e espontânea

dedicação, uma solução descrita, pode ser a solução de outro amigo, portanto,

mais uma recomendação:

 

Ao verificar que sua ideia ou problema ficou resolvido, tome duas atitudes que serão

muito aplaudidas por todos deste site, faça assim:

Descreva a solução do seu caso, e escreva a palavra RESOLVIDO antes do inicio do
titulo do seu post.

Atenciosamente

Rui

Exibições: 14770

Responder esta

Respostas a este tópico

Sr. ARMC, boa noite.

Sugiro que abra um novo tópico colocando lá toda a sua dificuldade, e tudo que já fez.

Sugiro também que delete este tópico que acrescentou aqui, uma vez que este tópico

trata somente de atitude e de modos de abrir e atualizar tópicos.

Atenciosamente,

RV

Bom dia a todos ! Finalmente consegui criar um método para inserir código de Arduino nos Tópicos do Lab De Garagem :

  • Copio o código da IDE Arduino como "copiar como HTML" 
  • colo na janela  da direita em https://html-online.com/editor/
  • copio o código já  formatado (da janela esquerda) - select all e copy 
  • e colo no tópico do LabdeGaragem (usando a opção  - Editor de HTML) 
  • depois faço uns pequenos ajustes de formatação nos comentários

Exemplo :

unsigned long CAPTURA()                                      // Medição de peso
{
 byte data[3];                                                            // vetor com 3 bytes
 while (digitalRead(DOUT));                                    // enquanto lendo o pino DOUT do HX711 
 for (byte j = 0; j < 3; j++)                                         // contando a variável j de 0 a 2 (3 bytes)
 {
   for (byte i = 0; i < 8; i++)                                       // contando variavel i de 0 a 7 (8 bits)
   {
     digitalWrite(hxSCK, HIGH);                                // envia pulso HIGH para pino SCK do HX711
     bitWrite(data[2 - j], 7 - i, digitalRead(DOUT));    // lê os bits do DOUT e carrega no vetor
     digitalWrite(hxSCK, LOW);                                // envia pulso LOW para pino SCK do HX711
   }
 }
 digitalWrite(hxSCK, HIGH);                                   // envia pulso HIGH para pino SCK do HX711
 digitalWrite(hxSCK, LOW);                                    // envia pulso LOW para pino SCK do HX711
 return ((long) data[2] 16) | ((long) data[1] 8) | (long) data[0];  // montando os dados do peso com os bytes recebidos
}

Olá bom dia,

Estou precisando de ajuda quanto a este programa do própio site, o programa da fita de LED RGB programavel,
eu preciso que pela porta serial acenda um led de cada vez com comando na serial, o programa faz isso mas de 0 á 9

se for de 10 para frente ja não faz por que?

o que tenho que fazer para solucionar esse problema?

#include <Adafruit_NeoPixel.h>


#define P 0x000000//PRETO
#define Z 0x0000FF//AZUL
#define E 0x008000//VERDE
#define R 0x800080//ROXO
#define V         0xFF0000//VERMELLHO
#define L         0xFFA500//LARANJA
#define R 0xFFC0CB//ROSE
#define A 0xFFFF00//AMARELO
#define B 0xFFFFFF//BRANCO


#define PIN 4// Pino de controle
#define LED_COUNT 60// Quantidade de LED's
//Cria uma instância da Classe Adafruit NeoPixel chamado "leds"
Adafruit_NeoPixel leds = Adafruit_NeoPixel(LED_COUNT, PIN, NEO_GRB + NEO_KHZ800);

unsigned long time;//Contará o tempo
unsigned long timeout;//Estouro
int brilho[3];//Recebe os valores da serial
int i=0;//Quantidade de caracteres recebida pela serial
int posicao=0;
int flag=0;//Indica que foi recebida informação pela serial
char temp,cor;//Armazena dados recebidos pela serial


void setup()
{
  Serial.begin(9600);//Inicia a serial com baud rate
  leds.begin(); // Inicia a fita de LED
  clearLEDs();   // Apaga todos os LEDs
  leds.show(); // Atualiza o estados dos LEDs
 
  
}


void loop()
{
  //------------------------------------------------------------------------------------------
  // Retorna o tempo em milisegundos desde que o Arduíno começou a rodar,
  time = millis()%2;//Divide por 2 e salva o resto
  if(time==1||time==0)//Compara se o resto é igual a 0 ou 1 e sempre vai ser
  {
  timeout++;// Cronômetro
    if (timeout>500)// Compara se houve estouro do tempo
    {
    i=0;// Zera o quantidades de caracteres recebidos
    flag=0;// Zera o aviso de que foi recebido algum dado na serial
    }  
   }
 
  //-------------------------------------------------------------------------------------------
  

  //--------------------------------------------------------------------------------------------
  if (Serial.available()>0)// Verifica se houve recepção
  {
    flag=1;//Sinaliza que houve recepção
    timeout=0;// Zera o o tempo de reset
    //------------------------------------------------------------------------------------------
    temp = Serial.read();// Armazena o que foi recebido pela serial
    brilho[i]=temp-48;// Decrementa 48 na tabela ascii para converter de decimal para char
    i++;// Contabiliza um recebimento
  }
   //---------------------------------------------------------------------------
if (timeout>200&&flag==1)// Compara se houve estouro do timeout(se ficou um tempo sem recepção) e se houve recepção
{
  flag=0;// Sera aviso de recepção
  

   // Envia para serial informações em % e resolução de disparo
    posicao=brilho[0];
    cor= brilho[1]+ 48;
   
    switch (cor)
    {
    case 'Z'://AZUL
    leds.setPixelColor(posicao,Z);//Aciona o LED requerido
    leds.show();//Atualiza o LED
    break;
    
     case 'E'://VERDE
    leds.setPixelColor(posicao,E);//Aciona o LED requerido
    leds.show();//Atualiza o LED
    break;
    
     case 'V'://VERMELHO
    leds.setPixelColor(posicao,V);//Aciona o LED requerido
    leds.show();//Atualiza o LED
    break;
    
     case 'A'://AMARELO
    leds.setPixelColor(posicao,A);//Aciona o LED requerido
    leds.show();//Atualiza o LED
    break;
    
     case 'B'://BRANCO
    leds.setPixelColor(posicao,B);//Aciona o LED requerido
    leds.show();//Atualiza o LED
    break;
    
    case 'P'://APAGA
    leds.setPixelColor(posicao,0);//Aciona o LED requerido
    leds.show();//Atualiza o LED
    break;
    }
}
}


//Função liga led individual
void ligaLED(int g, unsigned long fita)//Recebe a posição e tempo de Delay
{
leds.setPixelColor(g, fita);//Aciona o LED requerido
 leds.show();//Atualiza o LED
}



//Função apaga LED individual
void apagaLED(int g, unsigned long fita)//Recebe a posição e tempo de Delay
{
leds.setPixelColor(g, 0);//Desaciona o LED requerido
 leds.show();//Atualiza o LED
}

//Função apaga LEDs geral
void clearLEDs()
{
  for (int p=0; p<LED_COUNT; p++)
  {
    leds.setPixelColor(p, 0);
    leds.show();
  }
}

João Corrá boa tarde, 

Você inseriu o seu tópico no lugar errado. 

E parece que também não leu as recomendações.

Por favor apague esse seu tópico e crie um novo, seguindo as orientações.

Obrigado. 

Grande RV:

   Tenho percebido que, muitas vezes, os iniciadores da discussão postam os sketches fazendo uso de bibliotecas, e já vi você ter que solicitar dados de origem da biblioteca, seja porque não são do site da Arduino, seja porque existem várias bibliotecas com nomes idênticos ( o arquivo .h que é incluído ).

   Desta forma, estou adotando a prática de incluir, como comentário do #include da biblioteca a URL utilizada para obtê-la.

   Assim, o próprio sketch já permite uma visita direta no site onde tem a documentação da biblioteca.

   Fica como sugestão sugerir ( Arrgghhh, ficou horrível! ) isto para os usuários.

D.T. Ribeiro.

Boa noite DTR,

obrigado pelo seu apoio.

Tenho ficado um pouco se responder os novos tópicos por questões que anda apanhando muito de um projeto.

Apanhando mas aprendendo...

RV mineirin

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço