Forum: Mikrocontroller und Digitale Elektronik Kurte Frage bezüglich AnalogRead und AnalogWrite beim Arduino


von Arduino (Gast)


Lesenswert?

Hallo,

dies ist mein Code:
1
int led = 9;
2
int poti = 8;
3
int wert = 0;
4
void setup() 
5
{
6
Serial.begin(9600);     
7
pinMode(led, OUTPUT);
8
pinMode(poti, INPUT);
9
}
10
11
void loop() 
12
{
13
wert = analogRead(poti);
14
Serial.println(wert);
15
analogWrite(led, wert);
16
}

Habe ein 10K Poti und eine Led angeschlossen. Drehe ich nun am Poti soll 
sich die Helligkeit der LED verändern. Dies tut sie auch, allerdings 
erreicht die LED 3 Mal die volle Helligkeit während einer Drehung des 
Potis. Hat dies irgendetwas mit diesen 255 oder 1023 zu tun? Wie kann 
ich das beheben?

von Falk B. (falk)


Lesenswert?

@ Arduino (Gast)

>sich die Helligkeit der LED verändern. Dies tut sie auch, allerdings
>erreicht die LED 3 Mal die volle Helligkeit während einer Drehung des
>Potis. Hat dies irgendetwas mit diesen 255 oder 1023 zu tun?

Jo.

>Wie kann ich das beheben?

analogWrite(led, wert/4);

Denn der AD-Wandler liefert 10 Bit, die analogWrite Funktkion arbeitet 
nur mit 8 Bit.

von Arduino (Gast)


Lesenswert?

Falk Brunner schrieb:
> analogWrite(led, wert/4);
>
> Denn der AD-Wandler liefert 10 Bit, die analogWrite Funktkion arbeitet
> nur mit 8 Bit.

Vielen lieben Dank. Funktioniert.

Wusste nicht genau, wonach ich deswegen bei Google suchen musste, 
deswegen habe ich hier gefragt.

von Falk B. (falk)


Lesenswert?

@ Arduino (Gast)

>Wusste nicht genau, wonach ich deswegen bei Google suchen musste,

RTFM?

http://www.arduino.cc/en/Reference/HomePage

http://www.arduino.cc/en/Reference/AnalogRead

http://www.arduino.cc/en/Reference/AnalogWrite

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.