FSST - Hardwarenahe Programmierung

You are viewing an older revision! See the latest version

PWM Klasse

Siehe https://developer.mbed.org/users/mbed_official/code/mbed/docs/tip/classmbed_1_1PwmOut.html

Die Periodendauer (period) und die Pulsweite (puls width) kann sowohl in Sekunden, Milli-/Mikrosekunden als auch in Prozente der Periodendauer angegeben werden (siehe Tabelle). Die Default Periodendauer ist 20ms, und die Default-Pulsweite ist 0.

/media/uploads/fpucher/pwm_func.jpg

PwmOut myled(p6);
:
myled = 0.25f;

PwmOut & operator= (float value) A operator shorthand for write()

verwendet den PwmOut operator= als Abkürzung für led.write(0.25), was den duty cycle in Prozent als float angibt. D.h. der duty cycle ist 25%, die high-time pulse width ist 1/4 der Periode. Das gleiche bewirkt:

// specify period first, then everything else
    myled.period_ms(20.0f);  // 20 milli second period
    myled.write(0.25f);      // 25% duty cycle

Das gleiche aber mit absoluten Werten:

myled.period_ms(20.0f);  // 20 mili second period
    myled.pulsewidth_ms(5);  //  5 mili second pulse (on)


All wikipages