jperkin / node-rpio

Raspberry Pi GPIO library for node.js
860 stars 126 forks source link

Feature Request: Reverse Clock Polarity on PWM #22

Open sbarwe opened 8 years ago

sbarwe commented 8 years ago

Sometimes it is neccessary to create an orthogonal PWM signals which is not easy to solve at high frequencies with inverters.

The reverse clock polarity feature of the BCM would be great to use here. May you extend the PWM at this e.g. that a call to rpio.open(12,PWM, 1) with init = 1 means that the clock is reversed?

example:

void bcm2835_pwm_set_mode(uint8_t channel, uint8_t markspace, uint8_t enabled, uint8_t reversepolarity)
{

...

  if (channel == 0)
    {
     ...
     if (reversepolarity) 
         control |= BCM2835_PWM0_REVPOLAR;
     else
        control &= ~BCM2835_PWM0_REVPOLAR;
    }
  else if (channel == 1)
    {
 ...
     if (reversepolarity) 
         control |= BCM2835_PWM1_REVPOLAR;
     else
        control &= ~BCM2835_PWM1_REVPOLAR;
    }
jperkin commented 5 years ago

Sorry I haven't had the chance to look at this for a long time. I'll leave this open for now, maybe someone else can submit a PR for this?