PWM mit IO-Warrior56
Moderator: Guido Körber
-
- Posts: 97
- Joined: Wed Aug 03, 2011 3:46 pm
- Contact:
PWM mit IO-Warrior56
iopwmset(0) = &H20 'Kennung für PWM-Betrieb
iopwmset(1) = 1 'PWM is active
iopwmset(2) = 249 'Period LSB
iopwmset(3) = 0 'Period MSB
iopwmset(4) = 125 'Puls LSB
iopwmset(5) = 0 'Puls MSB
iopwmset(6) = 1 'PWM-clock generator
retint = IowKitWrite(iohandle, 1, iopwmset(0), 64)
Diese Settings würden gemäß Datenblatt folgendes verursachen:
PWM-Frequenz ist 1000 Hz denn Fout = Fclock/(Period+1)
somit 1000 Hz = 250 kHz / (249+1)
Das Puls/Pausen-Verhältnis ist 60% denn Duty cycle of the output is Pulse/(Period+1)
somit 0,6 = 150/(249+1)
Leider bekomme ich nur ein konstantes High.
Was mache ich falsch?
Viele Grüße
Franz Peter Zantis
iopwmset(1) = 1 'PWM is active
iopwmset(2) = 249 'Period LSB
iopwmset(3) = 0 'Period MSB
iopwmset(4) = 125 'Puls LSB
iopwmset(5) = 0 'Puls MSB
iopwmset(6) = 1 'PWM-clock generator
retint = IowKitWrite(iohandle, 1, iopwmset(0), 64)
Diese Settings würden gemäß Datenblatt folgendes verursachen:
PWM-Frequenz ist 1000 Hz denn Fout = Fclock/(Period+1)
somit 1000 Hz = 250 kHz / (249+1)
Das Puls/Pausen-Verhältnis ist 60% denn Duty cycle of the output is Pulse/(Period+1)
somit 0,6 = 150/(249+1)
Leider bekomme ich nur ein konstantes High.
Was mache ich falsch?
Viele Grüße
Franz Peter Zantis
-
- Site Admin
- Posts: 2856
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Re: PWM mit IO-Warrior56
Der IOW56 ist V2.0.0.0 oder neuer?
-
- Posts: 97
- Joined: Wed Aug 03, 2011 3:46 pm
- Contact:
Re: PWM mit IO-Warrior56
Es ist die Version V2.0.0.2R
- Christoph Jung
- Posts: 670
- Joined: Sun Oct 08, 2006 3:43 pm
- Location: Germany / Berlin
- Contact:
Re: PWM mit IO-Warrior56
Ich glaube wir haben da im Datenblatt evtl. einen dreher drin.
Wenn ich Ihre Daten eingebe, dann JA, es leuchtet auf meinem 56er Starterkit auch konstant, wenn ich LSB und MSB vertausche, dann
blinkt es . Ob es dem entspricht, was Sie ausgerechnet haben kann ich nicht sagen (hab gerade kein Oszi parat).
Wenn ich Ihre Daten eingebe, dann JA, es leuchtet auf meinem 56er Starterkit auch konstant, wenn ich LSB und MSB vertausche, dann
blinkt es . Ob es dem entspricht, was Sie ausgerechnet haben kann ich nicht sagen (hab gerade kein Oszi parat).
-
- Posts: 97
- Joined: Wed Aug 03, 2011 3:46 pm
- Contact:
Re: PWM mit IO-Warrior56
Auch bei dem folgenden Code bleibt es beim permanenten High:
iopwmset(0) = &H20 'Kennung für PWM-Betrieb
iopwmset(1) = 1 'PWM is active
iopwmset(2) = 0 'Period LSB
iopwmset(3) = 249 'Period MSB
iopwmset(4) = 0 'Puls LSB
iopwmset(5) = 125 'Puls MSB
iopwmset(6) = 1 'PWM-clock generator
retint = IowKitWrite(iohandle, 1, iopwmset(0), 64)
iopwmset(0) = &H20 'Kennung für PWM-Betrieb
iopwmset(1) = 1 'PWM is active
iopwmset(2) = 0 'Period LSB
iopwmset(3) = 249 'Period MSB
iopwmset(4) = 0 'Puls LSB
iopwmset(5) = 125 'Puls MSB
iopwmset(6) = 1 'PWM-clock generator
retint = IowKitWrite(iohandle, 1, iopwmset(0), 64)
-
- Posts: 97
- Joined: Wed Aug 03, 2011 3:46 pm
- Contact:
Re: PWM mit IO-Warrior56
Ich werde es wie bisher mit Bit-Banging machen. Ihr PWM-Modul funktioniert nicht.
-
- Site Admin
- Posts: 2856
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Re: PWM mit IO-Warrior56
Also ich habe hier grad nur ein Exemplar auf dem Tisch, bei dem PWM2 angeschlossen ist, der funktioniert einwandfrei exakt so wie im Datenblatt spezifiziert. Weder ein Dreher im Datenblatt, noch ein permanentes High.
Haben Sie vielleicht PWM1 und PWM2 verwechselt?
Haben Sie vielleicht PWM1 und PWM2 verwechselt?
-
- Posts: 97
- Joined: Wed Aug 03, 2011 3:46 pm
- Contact:
Re: PWM mit IO-Warrior56
Auf Seite 9 des Datenblattes finde ich das PWMout auf P6.7 geht. Von PWM1 oder PWM2 ist nichts erwähnt.
Auf Seite 19 ist das zugehörige Report-Array beschrieben. Auch dort ist nichts zu lesen von PWM1 oder PWM2.
Auf Seite 19 ist das zugehörige Report-Array beschrieben. Auch dort ist nichts zu lesen von PWM1 oder PWM2.
-
- Site Admin
- Posts: 2856
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Re: PWM mit IO-Warrior56
Ab Chipversion V2.0.0.2 gibt es einen zweiten PWM Kanal, der kommt auf P6.0 raus.
Wir haben dann wohl das aktuelle Datenblatt nicht online.
Ändert aber nichts daran, dass auch der eine Kanal funktioniert. Haben Sie mal mit SimpleHID versucht die Daten direkt zu schreiben? Das ist immer ein praktisches Werkzeug um auszuschließen, dass man die Daten irgendwie falsch verpackt, oder sonst welche Fehler in der eigenen Software hat.
Wir haben dann wohl das aktuelle Datenblatt nicht online.
Ändert aber nichts daran, dass auch der eine Kanal funktioniert. Haben Sie mal mit SimpleHID versucht die Daten direkt zu schreiben? Das ist immer ein praktisches Werkzeug um auszuschließen, dass man die Daten irgendwie falsch verpackt, oder sonst welche Fehler in der eigenen Software hat.
- Christoph Jung
- Posts: 670
- Joined: Sun Oct 08, 2006 3:43 pm
- Location: Germany / Berlin
- Contact:
Re: PWM mit IO-Warrior56
So ich hab mir auch nochmal einen jungfräulichen IOW56 mit Version 2.0.0.2 geschnappt, die Daten (oben) eingestellt und die LED leuchtet, allerdinst sollte das auch so sein, denn Sie stellen die PWM-Clock auf 250kHz.Wenn ich bei CLOCK &H00 einstelle (also 1kHz), dann blinkt die LED fröhlich vor sich hin.
-
- Site Admin
- Posts: 2856
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Re: PWM mit IO-Warrior56
Man kann auch die Pulslänge variieren, dann sieht man eine Änderung der Helligkeit der LED.
Funktioniert mit der V2.0.0.2 mit einem oder beiden Kanälen, so wie im Datenblatt beschrieben.
Mit den angegebenen Daten ist das Puls/Pausen-Verhältnis übrigens 50%
Funktioniert mit der V2.0.0.2 mit einem oder beiden Kanälen, so wie im Datenblatt beschrieben.
Mit den angegebenen Daten ist das Puls/Pausen-Verhältnis übrigens 50%