# analogRead, AnalogWrite, map, potenciômetro

**URL:** <https://forum.fazedores.com/t/analogread-analogwrite-map-potenciometro/6163>\
**Category:** Arduino\
**Created:** [Março 28, 2019, 9:01pm UTC](https://forum.fazedores.com/t/analogread-analogwrite-map-potenciometro/6163 "2019-03-28T21:01:44Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Pedro2](https://avatars.discourse-cdn.com/v4/letter/p/5fc32e/32.png) [@Pedro2](https://forum.fazedores.com/u/Pedro2)\
**Post date:** [Março 28, 2019, 9:01pm UTC](https://forum.fazedores.com/t/analogread-analogwrite-map-potenciometro/6163/1 "2019-03-28T21:01:44Z")

</div>

Pessoal, estou fazendo um trabalho e refiz o seguinte código algumas vezes… Sou novo com arduino e não sei o que pode estar errado aí. estou usando o map corretamente? Procurei em alguns site e me pareceu que sim. Também tem o analogRead e Write, que eu também tentei recolocar em alguns momentos…

Estou usando aquela placa que é colocada em cima do arduino, com conectores brancos para plugar os led, buzzer, etc…

Desde já agradeço a ajuda!

====================================================================

#include \<stdio.h\>

int led = 6; // atribui o led ao pino 6  
int buz = 4; // atribui o buzzer ao pino 4  
int pot = A0; // atribui o potenciômetro a entrada A0  
int x;  
int val, valor;  
void setup()  
{  
Serial.begin(9600);  
pinMode (A0, INPUT); // A0 como entrada  
pinMode (6, OUTPUT); // pino 6 como saida  
pinMode (4, OUTPUT); // pino 4 como saida  
}

void loop()  
{  
x = analogRead(A0);  
val = map(valor, 0, 1023, 0, 255);

while (0 \<= x \<= 50.8) //enquanto o potenciômetro ler 0V - 1V, o LED recebe 0V  
analogWrite(6, 0);

while (50.8 \<= x \<= 101.6) //enquanto o potenciômetro ler 1V - 2V, o LED recebe 1V  
analogWrite(6, 50.8);

while (101.6 \<= x \<= 152.4) //enquanto o potenciômetro ler 2V - 3V, o LED recebe 2V  
analogWrite(6, 101.6);

while (152.4 \<= x \<= 203.2) //enquanto o potenciômetro ler 3V - 4V, o LED recebe 3V  
analogWrite(6, 152.4);

while (203.2 \<= x \<= 228.6) //enquanto o potenciômetro ler 4 - 4.5V, o LED recebe 4V  
analogWrite(6, 203.2);

if (x \> 228.6)  
analogWrite (6, LOW);  
analogWrite (4, HIGH);  
}

---

<div class="post-metadata">

**Author:** ![Arnold\_Rudge](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.fazedores.com/arnold_rudge/32/1675_2.png) [@Arnold\_Rudge](https://forum.fazedores.com/u/Arnold_Rudge)\
**Post date:** [Março 29, 2019, 6:05am UTC](https://forum.fazedores.com/t/analogread-analogwrite-map-potenciometro/6163/2 "2019-03-29T06:05:43Z")

</div>

eu nao acredito que analogWrite() aceite floats, ou doubles, so inteiros, entao

analogWrite(6, 203.2); nao e possivel, seria, analogWrite(6,203)
