diff options
Diffstat (limited to 'examples-xml/serialRead.csd.xml')
-rw-r--r-- | examples-xml/serialRead.csd.xml | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/examples-xml/serialRead.csd.xml b/examples-xml/serialRead.csd.xml new file mode 100644 index 0000000..ecb030f --- /dev/null +++ b/examples-xml/serialRead.csd.xml @@ -0,0 +1,42 @@ +<programlisting> +<emphasis role="csdtag"><CsoundSynthesizer></emphasis> +<emphasis role="csdtag"><CsOptions></emphasis> +<emphasis role="comment">; Select audio/midi flags here according to platform</emphasis> +-n <emphasis role="comment">;;;no output</emphasis> +<emphasis role="comment">;-iadc ;;;uncomment -iadc if realtime audio input is needed too</emphasis> +<emphasis role="comment">; For Non-realtime ouput leave only the line below:</emphasis> +<emphasis role="comment">; -o serialRead.wav -W ;;; for file output any platform</emphasis> +<emphasis role="csdtag"></CsOptions></emphasis> +<emphasis role="csdtag"><CsInstruments></emphasis> + +<emphasis role="ohdr">sr</emphasis> <emphasis role="op">=</emphasis> 44100 +<emphasis role="ohdr">ksmps</emphasis> <emphasis role="op">=</emphasis> 500 <emphasis role="comment">; the default krate can be too fast for the arduino to handle</emphasis> +<emphasis role="ohdr">nchnls</emphasis> <emphasis role="op">=</emphasis> 2 +<emphasis role="ohdr">0dbfs</emphasis> <emphasis role="op">=</emphasis> 1 + +<emphasis role="oblock">instr</emphasis> 1 + +iPort <emphasis role="opc">serialBegin</emphasis> "<emphasis role="op">/</emphasis>dev<emphasis role="op">/</emphasis>cu.usbmodemfa131", 9600 <emphasis role="comment">;connect to the arduino with baudrate = 9600</emphasis> + +kGain <emphasis role="opc">init</emphasis> 16 <emphasis role="comment">;read our knob value</emphasis> +kVal <emphasis role="opc">serialRead</emphasis> iPort +<emphasis role="octrl">if</emphasis> (kVal <emphasis role="op">!=</emphasis> <emphasis role="op">-</emphasis>1) then + kGain <emphasis role="op">=</emphasis> kVal<emphasis role="op">/</emphasis>128 +<emphasis role="octrl">endif</emphasis> + +aSig <emphasis role="opc">in</emphasis> <emphasis role="comment">;get our audio input and get its rms</emphasis> +kRms <emphasis role="opc">rms</emphasis> aSig<emphasis role="op">*</emphasis>kGain + +kRms <emphasis role="op">=</emphasis> kRms<emphasis role="op">*</emphasis>kRms<emphasis role="op">*</emphasis>255 <emphasis role="comment">;scale the rms to a good value for the LED and send it out</emphasis> +<emphasis role="opc">serialWrite</emphasis> iPort, (kRms <emphasis role="op"><</emphasis> 255 <emphasis role="op">?</emphasis> kRms <emphasis role="op">:</emphasis> 255) <emphasis role="comment">;must be in range: 0-255</emphasis> + +<emphasis role="oblock">endin</emphasis> +<emphasis role="csdtag"></CsInstruments></emphasis> +<emphasis role="csdtag"><CsScore></emphasis> +<emphasis role="stamnt">f</emphasis> 1 0 1024 10 1 1 1 1 1 1 + +<emphasis role="stamnt">i</emphasis> 1 0 200 +<emphasis role="stamnt">e</emphasis> +<emphasis role="csdtag"></CsScore></emphasis> +<emphasis role="csdtag"></CsoundSynthesizer></emphasis> +</programlisting>
\ No newline at end of file |