Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: soft_pwn.cpp
- Revision:
- 0:cff19fd9a3be
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/soft_pwn.cpp Wed Nov 04 21:47:34 2015 +0000
@@ -0,0 +1,40 @@
+#include "soft_pwm.h"
+
+SoftPwm::SoftPwm(float initialPeriod, float initialDutyCycle)
+{
+ this->period = initialPeriod;
+ this->dutyCycle = initialDutyCycle;
+
+ this->timer.start();
+}
+
+float SoftPwm::getPeriod()
+{
+ return this->period;
+}
+float SoftPwm::getDutyCycle()
+{
+ return this->dutyCycle;
+}
+void SoftPwm::setPeriod(float newPeriod)
+{
+ this->period = newPeriod;
+}
+void SoftPwm::setDutyCycle(float newDutyCycle)
+{
+ this->dutyCycle = newDutyCycle;
+}
+
+bool SoftPwm::isOn()
+{
+ float onPhaseDuration = this->dutyCycle * this->period;
+ float currentTime = this->timer.read();
+ if (currentTime > this->period) {
+ this->timer.reset();
+ }
+ if (currentTime<onPhaseDuration) {
+ return true;
+ } else {
+ return false;
+ }
+}
\ No newline at end of file