mirror of
https://github.com/espruino/Espruino.git
synced 2025-12-08 19:06:15 +00:00
25 lines
551 B
JavaScript
25 lines
551 B
JavaScript
Pin.prototype.pwm = function(dutyCycle, speed) {
|
|
var pin = this;
|
|
if (Pin.intervals===undefined)
|
|
Pin.intervals = {};
|
|
if (Pin.intervals[pin]!==undefined)
|
|
clearInterval(Pin.intervals[pin]);
|
|
var pulseLen = dutyCycle*1000/speed;
|
|
Pin.intervals[pin] = setInterval(function() {
|
|
// digitalPulse(pin, 1, pulseLen);
|
|
}, 1000/speed);
|
|
};
|
|
|
|
var p = new Pin();
|
|
|
|
pos = 0;
|
|
var s = function() {
|
|
pos = pos + 0.1;
|
|
p.pwm(Math.sin(pos)*0.5 + 0.5, 300); // 300Hz
|
|
if (pos>1) {
|
|
result=1;
|
|
clearInterval(); // finish
|
|
}
|
|
};
|
|
setInterval(s,10);
|