PJE

Manipulando Vetores no Arduino

A linguagem de programação do Arduino é baseada na linguagem de programação C, apesar de ser semelhante pode haver erros na hora de copilar o programa.
Algumas versões do IDE não declara variáveis em um lugar do void setup, provavelmente seja um erro dos desenvolvedores. Para evitar dores de cabeça na hora de desenvolver seu programa, acompanhe as experiências.
 Esta é a IDE do Arduino, versão 1,0,5-r2...
Neste caso, o copilador não reconhece o:
char ca[0]; É  um erro na plataforma que vem dando muita dor de cabeça, se houver algum erro no seu programa, declare as variáveis e coloca um Serial.println, só para confirmar que elas foram reconhecidas pelo IDE.

Inicializando vetores

Quando você declara um vetor, é como se estivesse declarando n variáveis separadas uma das outras.
por exemplo:
char  nome[]="ABC";
Você estará criando três posições de memoria contando com o zero, digo:
char nome[0]="A";  = A
char nome[1]="B"; =  B
char nome[2]="C"; =  C


* Lembrando que o copilador aloca x posição de memoria quando você não especifica e atribui o valor do vetor..   
Exemplo: 
char nome[3]; // 3 posições  sem valor alocadas 
char nomee[]="ESTR";  // 4 posições alocadas
 É como se o copilador introduzisse um 4 no vetor      "char nomee[4]="ESTR"



SE você der um Sereal.println(nome); você obteria "ABC", caso você queira exibir apenas um caractere, por exemplo o "B"  Sereal.println(nome[1]) ;...
Muito fácil, para isolar um caractere do vertor veja o exemplo simples abaixo:

#include 
#include 
char b[]="ABCD";
char c[0];
void setup()
{ 
Serial.begin(19200);  // baude de ratos u.u
}
void loop ()
{
 delay(100);            // da um tempo de 100ms 
 Serial.println(b[2]); // imprime a 3° letra da char b[]
 c[0]=b[3];            //  diz que "char c" é igual a terceira letra do "char b" (D)
 Serial.println(c);   // imprime o valor de "char c"
 delay(20000);        // 20s
}
 
 

Esse programa isola um caractere de um vetor, muito útil para quem esta 
desenvolvendo um TCC sozinho 

2 comentários:

  1. Parabéns pelo post. Explicação simples e bastante didática. Me ajudou muito!! Agora uma dúvida: eu quero ler o vetor todo, como colocaria no println?

    ResponderExcluir
    Respostas
    1. No caso, não como char, mas como float. Sempre ocorre erro quando compilo.

      Excluir