ATMega328 crasht mit IR lib und analogwrite

OP #6505016
Lesenswert?

Ich verwende die folgende Lib an einem Arduino Uno / ATMega328:

https://github.com/z3t0/Arduino-IRremote

Beim Versuch, PWM mittels analogwrite auszugeben stelle ich das folgende 
Verhalten fest. Pinbelegung gemäss Arduino Uno

- IRlib verwendet Pin 13
- Pin 6/9/10 geben PWM aus
- Beim Versuch, auf Pin3 oder Pin11 PWM auszugeben crasht der 
Controller. Das erklärt sich weil sie auf denselben Timer zugreifen
- Pin 5 geht nicht mehr

Das passiert nur, solange die lib inkludiert ist. Sonst funktionieren 
alle Pins mit PWM.

Die lib verwendet soweit ich das sehen konnte Timer2. Die anderen beiden 
Timer stehen noch für PWM zur Verfügung. Hat jemand eine Erklärung warum 
Pin5 kein PWM mehr ausgibt?
Gast #6505022
Lesenswert?

Eben. Die vorgefertigten libs verwenden irgendwelche Resourcen und 
können kollidieren.
Es bleibt dir nichts anderes übrig, als richtig Programmieren zu lernen, 
weg vom Arduino-Lego.
Oder dir zumindest die Imlementation der Arduino-lib-Funktionen 
anzugucken, denn dokumentiert ist da ja fast nichts, die Doku kann man 
eher als Geheimhaltungsvereinbarung lesen.
OP #6505030
Lesenswert?

MaWin schrieb:
> Eben. Die vorgefertigten libs verwenden irgendwelche Resourcen und
> können kollidieren.
> Es bleibt dir nichts anderes übrig, als richtig Programmieren zu lernen,
> weg vom Arduino-Lego.
> Oder dir zumindest die Imlementation der Arduino-lib-Funktionen
> anzugucken, denn dokumentiert ist da ja fast nichts, die Doku kann man
> eher als Geheimhaltungsvereinbarung lesen.

Danke mawin.

Rein theoretisch: Wieviele Pins könnten mit PWM arbeiten unter der 
Voraussetzung, das ein Timer für IR reserviert ist (ohne I2C Bus 
Geschichten).

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren