aboutsummaryrefslogtreecommitdiff
path: root/pd/doc/3.audio.examples/J03.pulse.width.mod.pd
blob: 06301686b2d4b9ba9699c3380e44d68c7d93391a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#N canvas 46 315 784 514 12;
#X floatatom 95 64 0 0 0 0 - - -;
#N canvas 0 0 450 300 graph1 0;
#X array \$0-difference 882 float 0;
#X coords 0 1.02 882 -1.02 200 130 1;
#X restore 565 325 graph;
#X text 81 39 frequency;
#N canvas 0 0 450 300 graph1 0;
#X array \$0-phasor1 882 float 0;
#X coords 0 1.02 882 -1.02 200 130 1;
#X restore 565 24 graph;
#X text 57 9 CLASSICAL PULSE WIDTH MODULATION;
#X obj 111 156 phasor~ 0;
#X obj 111 132 + 0.2;
#X obj 95 206 -~;
#N canvas 0 0 450 300 graph1 0;
#X array \$0-phasor2 882 float 0;
#X coords 0 1.02 882 -1.02 200 130 1;
#X restore 565 176 graph;
#X text 24 314 This patch demonstrates pulse width modulation \, which
is accomplished simply by subtracting two sawtooth waves at a varying
phase difference. Here their frequencies are set to differ by 1/5 Hz.
so that the relative phase wanders continuously.;
#X text 570 457 ---- 0.02 seconds ----;
#X text 524 487 updated for Pd version 0.39;
#X obj 96 247 output~;
#X obj 200 124 tabwrite~ \$0-phasor1;
#X obj 200 182 tabwrite~ \$0-phasor2;
#X obj 200 236 tabwrite~ \$0-difference;
#X obj 95 97 phasor~;
#X obj 200 82 metro 193;
#X obj 200 62 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1
;
#X text 219 60 <-- start/stop graphing;
#X connect 0 0 6 0;
#X connect 0 0 16 0;
#X connect 5 0 7 1;
#X connect 5 0 14 0;
#X connect 6 0 5 0;
#X connect 7 0 12 0;
#X connect 7 0 12 1;
#X connect 7 0 15 0;
#X connect 16 0 7 0;
#X connect 16 0 13 0;
#X connect 17 0 13 0;
#X connect 17 0 14 0;
#X connect 17 0 15 0;
#X connect 18 0 17 0;