Hallo Zusammen, ich möchte gerne mit dem PIC24FJ64GB002 5 seperate PWM signale für div. LED´s erzeugen. Die Pulsweite soll durch Variablen (1 je PWM) gesteuert werden. Alle LED´s befinden sich auf einem Remappablen peripheral pin, die im entpsrechendem Register der Funktion zugeordnet werden muss soweit kein Problem. Mir ist unklar wie ich dies Programmieren muss da im Datenblatt immer die Rede von PWM mit "OUTPUT COMPARE WITH DEDICATED TIMERS" die rede ist. Datenblatt µC http://ww1.microchip.com/downloads/en/DeviceDoc/39940d.pdf Ich freue mich über eure Hilfe! Mit freundlichen Grüßen Amanre
Ich häng dir mal was für den PIC24FV32KA301 an, musst du halt anpassen. Da gibts einen Init-Funktion (initpwm), die schaltet die PWM ein. Die zweite Funktion setPWM(DC, periode, sysclock) berechnet und setzt Periodendauer und Tastverhältnis. DC ist in %, periode ist in µs, Der sysclock ist in Hz. Man kann auch andere Taktquellen verwenden. Diese Funktionen verwenden OCFB (Fault Input), dass musst du halt auskommentieren. Die PWM kommt zu OC2 heraus. Das musst du dann auf einen Port mappen. Der FV32KA301 hat kein Portmapping, weshalb das fehlt. Im Übrigen ist das vom Datenblatt abgetippt. Da gibts ein Kapitel "Ouput Compare", da steht ein Kochrezept drin. Ob das funktioniert? Weiß nicht, sehr viel getestet hab ich nicht. Mit 8MHz, 250µs und 80% gehts. Ich glaube, die ist "center alligned", aber das müsstest du nachkucken. Hat mich ca. 20min gekostet. Beispiele gibts auch bei Microchip, aber abtippen ging schneller, als sich da einlesen.
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.