Hi, Ich weiss das es schon Software-PWM's für mehr als 8 channel gibt (z.B. von atmel etc), allerdings hätte ich gerne das in dem Artikel Soft-PWM beschriebene erweitert, weil das ja doch recht performant ist =) Ich bin zwar kein Programmieranfänger, allerdings komme ich aus der Windows-Welt (C#), und dieses hardware-nahe programmieren fällt mir teilweise noch ein bisschen schwer. Grade das oben erwähnte Soft-PWM verstehe ich zwar vom Prinzip her, vom Code her wills mir aber leider noch nicht wirklich in den Kopf. Deswegen meine Frage: Hat vielleicht schon jemand das im Artikel beschriebene Soft-PWM so erweitert das man mehr als 8 Kanäle benutzen kann, falls nicht vielleicht hat ja jemand lust drauf, oder will mal jemand den source-code im Artikel noch ausführlicher kommentieren um ihn Anfängern noch begreiflicher zu machen? Danke schonmal, Björn
Falls es dir nicht zu spät ist.. ich bin gerade an sowas dabei. Man kann soviele Channels definieren wie man möchte. Jedem Channel kann man einen Port und einen Portpin zuteilen. Ich werde mich melden wenn ich fertig bin und interesse besteht. lg PoWl
hi, das klingt ja mal Spitze! Intresse bestünde immernoch, geb doch einfach nochma bescheid, hier im Forum oder wie auch immer, wenn du was fertig hast, wäre super! Danke schonmal Björn
So, hier ein erster Vorgeschmack. Hab es nun erstmals zum Laufen gebracht. Das ganze ist für einen ATmega8. Geschaltet werden im Moment noch nicht die PORTs sondern nur die DDRs, weil ich damit die Gates von Feldeffekttransistoren auf Masse ziehe um mir nen zusätzlichen Transistor pro FET zu sparen. Kann man leicht umändern indem man die DDRs standardmäßig mit 0xFF besetzt und alle DDRB und DDRC Anweisungen durch PORTB und PORTC ersetzt. Um weitere Ports hinzuzufügen muss man ein wenig umprogrammieren, ist aber mit ein bisschen Copy&Paste schnell erledigt. Das ganze Ding kann man per RS-232 Steuern. Es hört auf on <Channel> off <Channel> pwm <Channel> <PWM-Value> also z.B. pwm 1 100 pwm 2 150 Habe heute leider keine Zeit mehr. Am Code gibt es sicher noch eine ganze Menge zu verbessern und zu optimieren. Morgen bastel ich mal eine Standalone-Demo, u.A. eine für einen ATmega16 in dem ich dann einen Sinusartigen PWM-Verlauf auf 32 LEDs darstellen werde. Ach ja, die PWM läuft bei 8 Mhz internem RC-Oszi mit 244Hz (!!) Eventuell sind sogar 488Hz drin, hab noch nicht gemessen wie lange die ISRs brauchen ;-) lg PoWl
Huch, Anhang vergessen. Das ganze gibt übrigens ein Stromanschlusspanel für meinen PC hinten an dem ich 5V und 12V abgreifen und per Software Steuern kann. Ist ganz Praktisch für 5V und 12V Verbraucher wie meine Schaltungen, Lampen, TFT-Monitor, ext. TV-Karte, Minilötkolben, Lüfter. lg PoWl
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.