Hallo Leute, Ich habe eine ganz einfache Frage an euch, Ist es möglich mittels Software PWM bei einem ATtiny 85 einen 4ten PWM Pin zu erhalten oder ist dieses Vorhaben definitiv unmöglich?
Hi Warum sollte Das unmöglich sein? Da Du beim Soft-PWM ja 'nur' einen Timer-Wert vergleichst, kannst Du da jeden zur Verfügung stehenden Pin schalten. Wie groß Du Das aufziehst (z.B. 4 verschiedene PWM-Frequenzen) hängt davon ab, wie Du Das ins Programm gegossen bekommst und ob die Ausführungsgeschwindigkeit dann noch akzeptabel ist. Allerdings ist bei 4 Schicht, Nummer 5 wäre Reset und Den solltest Du, zumindest während der Entwicklung, als Reset behalten. Somit ist auch eine Anpassung der PWM-Werte nicht möglich, da Du keinen 'Weg' mehr in den ATtiny85 frei hast. MfG
Pb 0 ; PB 1; und PB4 sind ja hardware PWM über OC0B OC1A und OC0A über timer0 aber über timer0 kann ich dann PB3 nicht mehr ansteuern der ist docht invertiert.....oder habe ich da einen denkfehler
Hi Aaah, Du benutzt bereits beide Timer für die PWM-Hardware. Somit müsstest Du sehen, wie Du ein halbwegs gleichmäßigen Zähler hinbekommst. Dieser Zähler wird aber wohl bestenfalls zu Umschaltzeiten der Hardware-PWM-Pins automatisch veränderbar sein, was die Sache wesentlich langsamer als die Hardware-PWM macht. Diesen Zählerwert in der Hauptschleife prüfen und den 4.ten Pin entsprechend schalten. Da ist die Frage, ob Du dann nicht alle 4 PWM in Software ausführts, dadurch wäre der Timer 'schneller' (da überhaupt für diese Funktion 'greifbar') und die vier PWM-Signale wären 'gleich schnell'. Hast natürlich den Vorteil vergeben, daß der Hardware-PWM die Software nicht beeinflusst, also autark läuft. Oder zwei ATtiny, Jeder 2 PWM und Du hast noch Pinne für Kommunikation/Ansteuerung über, kannst also die Werte von Außen beeinflussen. Bei obiges 'bei 4 ist Schicht' ist aber falsch, PB0-PB4 sind 'normal' ja schon benutzbar und PB5 ist Reset. Somit könntest Du 0-4 = 5 Software-PWM erreichen. MfG
An 2 Tiny's hab ich auch schon gedacht....aber Deine idee alle 4 auf Soft PWM gefällt mir auch sehr gut. Daran hab ich noch gar nicht so gedacht.....oft denkt man viel komplizierter als nötig....
Nikolaus J. schrieb: > Daran hab ich noch gar nicht so gedacht.....oft denkt man viel > komplizierter als nötig.... Ja, nur muss man sehen, dass es auch mit Frequenz und Auflösung hinhaut - bei 1KHz ergeben 10bit knapp 1uS Auflösung - das ist bei 8MHz und in Software kaum zu schaffen. 100Hz und 8bit sollten aber ohne Probleme gehen - lass die schnellere PWM über Timer1 in Hardware laufen und die langsamere in Software über Timer0.
Marc V. schrieb: > lass die > schnellere PWM über Timer1 in Hardware laufen und die langsamere > in Software über Timer0. Mit Ausgabe der Soft-PWM über PB2 und PB5(ehemals Reset). Tolle Wurst. Nikolaus J. schrieb: > Danke für den Tipp....das werd ich mir auch gleich noch ansehen. Vergiss es. 2 Kanäle in Hardware auf Timer0, 2 Kanäle mit Softwareunterstützung auf Timer1.
Thomas E. schrieb: >> schnellere PWM über Timer1 in Hardware laufen und die langsamere >> in Software über Timer0. > > Mit Ausgabe der Soft-PWM über PB2 und PB5(ehemals Reset). Tolle Wurst. Wo hast du das gelesen ? Thomas E. schrieb: > Vergiss es. > > 2 Kanäle in Hardware auf Timer0, 2 Kanäle mit Softwareunterstützung auf > Timer1. Aha. Das du nicht gerade der klügste bist ist schon lange klar, aber ich dachte, dass du wenigstens lesen kannst...
:
Bearbeitet durch User
Nikolaus J. schrieb: > Ja ich dachte da an 3 u. 4 über Software und 0 u. 1 über hardware > .... Ja. Wie jeder geistig gesunder Mensch auch.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.