Dependents:   InjectorValveFourthMicro InjectorValveFourthMicro1 InjectorValveFourthMicro2 ReadingInLines_copy

Fork of PWM-Coil-driver by David Wahl

coil-driver.cpp

Committer:
dmwahl
Date:
2017-06-02
Revision:
1:cdb7aba111ce
Parent:
valve-driver.cpp@ 0:eb16d6847d9e
Child:
2:6df05ae10a1a

File content as of revision 1:cdb7aba111ce:

#include "valve-driver.h"

// Default constructor
Valve::Valve(PinName _controlPin, uint16_t _spikeus, uint16_t _holdperiod_us, uint16_t _holdpulse_us)
    :   controlOut(_controlPin),
        spikeus(_spikeus),
        holdperiod_us(_holdperiod_us),
        holdpulse_us(_holdpulse_us)
{
    controlOut.write(0.0); // Ensure valve output is off by default
    controlOut.period_us(holdperiod_us); // PWM control period (uint16_t microseconds)

};

void Valve::on()
{
    controlOut.write(1.0);
    wait_us(spikeus);
    controlOut.pulsewidth_us(holdpulse_us);
}

void Valve::off()
{
    controlOut.write(0.0);
}