*** empty log message ***
[chuck-blob.git] / examples / pwm.ck
blob6c473b46ec5d68387ae3ba8cd42a57da3927e821
1 // pulse width modulation (gewang / philipd)
3 // drive sinosc with blackhole
4 sinosc modw => blackhole; 
5 0.125 => modw.freq;
7 // patch
8 phasor x => triosc t => ADSR te => dac;
9 40.0 => x.freq;
10 2 => t.sync;  // sync to input
12 // modulate pulse width
13 fun void pwm() {
14     while( true ) {
15         modw.last * .95 => t.width;
16         1::ms => now;
17     }
20 // go forth...
21 spork ~ pwm();
23 // go
24 while( true ) {
25     1 => te.keyOn; 125::ms => now;
26     1 => te.keyOff; 75::ms => now;