I'm most familiar with Arduino's PWM interface - basically,
Code:
// Usage: analogWrite(pin, value 0-255)
analogWrite(1, 255);
I'm trying to accomplish this with the FRC Java DigitalOutput class, which seems to contain some methods related to PWM output.
Our situation is that we use a LOT of motors - to the point that we have few (if not zero) PWM slots! Therefore, we are using the Digital I/O GPIO instead, which technically can also output PWM. We are trying to drive a 12 V LED ring that we bought using PWM and an op-amp to ramp the 5 V PWM output to 12 V. We haven't gotten the op-amp nor LED ring yet, so we're currently testing it using the breadboard and a small LED. At the moment, the code looks like this:
Code:
// robotInit
DigitalOutput doutput = new DigitalOutput(1);
doutput.enablePWM(0.0);
// testPeriodic
doutput.updateDutyCycle(1.0);
It does not light up.** The code seems to be correct, since the duty cycle is what affects the LED's brightness... but it doesn't work.
I would appreciate any help!
** I am probably too tired to think/remember, but it *might* be that it did light up - we went from 0.00 to 1.00 by 0.05 increments, going up and down. However, instead of a fading LED, it was just 100% on.