Olá amigos !!

Pretendo realizar um pequeno projeto, utilizando o recurso (ADC) de10 bits do arduino uno, mas apesar da estrutura simples do Sketch, estou encontrando dificuldades em configurar e declarar algumas variáveis. Pois desejo que especificamente, o pino (D10) mude para nível (HIGH), quando o pino (A0) via potenciômetro, variar a voltagem entre  2,5 Vcc  &&  5,0 Vcc.

Porém, que o pino (D10),  permaneça em (LOW), enquanto a Vcc permaneça entre 0 && 2,4 Vcc.

Na verdade, não estou conseguindo traduzir pra máquina meu objetivo, com isso, não consigo inserir as variáveis em seus respectivos lugares corretamente. Como por exemplo:

Uma vez que há duas formas de se declarar variáveis, (global e ou local), onde devo declará-las ? ou como utilizar corretamente um laço, etc e tal...

Já tentei buscar ajuda em outros links sobre esse assunto, mas outros Sites informam apenas algumas semelhanças, por exemplo: ao invés de se tratar de ativar PINOS em HIGH ou LOW,  tratam de informá-los seus valores ao (monitor serial da ide), via  Serial.begin(9600);

 Caso alguem possa me ajudar, agradeço !!

abraço à todos !!!

float potenciometro = A0;
float valor = 0;
int pinLed = 10;
int for                            //   error line   expected unqualified-id before "for"

void setup() {
pinMode(pinLed, OUTPUT);
pinMode(pinLed, LOW);
}

void loop() {

for
float Valor = analogRead(potenciometro);
float potenciometro = valor * (5.0 / 1023.0);
for (i=0; i++;

if valor = analogRead(potenciometro) i++ >= 2.5 {

digitalWrite(10, HIGH);

else

digitalWrite (ledPin, LOW);
delay(10);
}
}

Exibições: 339

Responder esta

Respostas a este tópico

Boa tarde ALP. Testa este sketch. Rui

Anexos

Olá caro Rui, tudo bem ? espero que sim !!

Esse sketch compilou, agora vou partir para a parte do hardware ...

Pronto Rui, realizei os testes e tudo funcionou como eu desejava ...

Quero deixar aqui meus agradecimentos à sua pessoa, e bem como seus préstimos !!!

tudo funcionou certinho hein, fico feliz em ter me ajudado, que beleza !!!

só fiquei na dúvida de como chegou a esse número (0.048875 ... ... ...)

GRANDE ABRAÇO !

Anexos

Oi ALP.

Eu escrevi o calculo deste valor no sketck.

É assim:

O ADC  do arduino ao ler os valores no port analogico, ele traduz para um valor entre 0 e 1023. (10 bits).

0V vale  0 e 5V vale 1023.

Então  5/1023 é igual a  =0.0048875855.

Cada unidade no port equivale à =0.0048875855 V.

Então 2.5V equivalem a +- 511.

Rui

Ok, entendi sim RUI ...

Depois que me esclareceu as dúvidas no sketch, dei uma incrementada no programa  ...

Agora posso ler no monitor serial, o valor que pretendo fazer com que o led acenda, ou pisque ao se atingir o valor pré determinado. Como exemplo: 675 = 3,3 vcc.

Mais uma vez, muito obrigado amigo !!!

ficou assim meu sketch;

float potenciometro = A0;
float valor = 0;
int pinLed = 10;
// --------------------------------
void setup()
{
pinMode(pinLed, OUTPUT);
pinMode(pinLed, LOW);
Serial.begin(9600);
}
// --------------------------------
void loop()
{


valor = analogRead(potenciometro);
if (valor >= 675)
{

Serial.println(valor);
digitalWrite( pinLed, HIGH);
delay(250);
digitalWrite( pinLed, LOW);
delay(250);

}
else
{
digitalWrite (pinLed, LOW);
delay(10);
}
}

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço