Parcourir la source

Add AudioInputPDM documentation

dds
PaulStoffregen il y a 6 ans
Parent
révision
15fe912697
2 fichiers modifiés avec 51 ajouts et 0 suppressions
  1. BIN
      gui/img/pdmmic.jpg
  2. +51
    -0
      gui/index.html

BIN
gui/img/pdmmic.jpg Voir le fichier

Before After
Width: 128  |  Height: 98  |  Size: 6.2KB

+ 51
- 0
gui/index.html Voir le fichier

@@ -349,6 +349,7 @@ span.mainfunction {color: #993300; font-weight: bolder}
{"type":"AudioInputAnalog","data":{"defaults":{"name":{"value":"new"}},"shortName":"adc","inputs":0,"outputs":1,"category":"input-function","color":"#E6E0F8","icon":"arrow-in.png"}},
{"type":"AudioInputAnalogStereo","data":{"defaults":{"name":{"value":"new"}},"shortName":"adcs","inputs":0,"outputs":2,"category":"input-function","color":"#E6E0F8","icon":"arrow-in.png"}},
{"type":"AudioInputI2Sslave","data":{"defaults":{"name":{"value":"new"}},"shortName":"i2sslave","inputs":0,"outputs":2,"category":"input-function","color":"#E6E0F8","icon":"arrow-in.png"}},
{"type":"AudioInputPDM","data":{"defaults":{"name":{"value":"new"}},"shortName":"pdm","inputs":0,"outputs":1,"category":"input-function","color":"#E6E0F8","icon":"arrow-in.png"}},
{"type":"AudioInputTDM","data":{"defaults":{"name":{"value":"new"}},"shortName":"tdm","inputs":0,"outputs":16,"category":"input-function","color":"#E6E0F8","icon":"arrow-in.png"}},
{"type":"AudioInputUSB","data":{"defaults":{"name":{"value":"new"}},"shortName":"usb","inputs":0,"outputs":2,"category":"input-function","color":"#E6E0F8","icon":"arrow-in.png"}},
{"type":"AudioOutputI2S","data":{"defaults":{"name":{"value":"new"}},"shortName":"i2s","inputs":2,"outputs":0,"category":"output-function","color":"#E6E0F8","icon":"arrow-in.png"}},
@@ -762,6 +763,56 @@ span.mainfunction {color: #993300; font-weight: bolder}
</div>
</script>

<script type="text/x-red" data-help-name="AudioInputPDM">
<h3>Summary</h3>
<div class=tooltipinfo>
<p>Receive (and filter) a Pulse Density Modulated bitstream.
</p>
<p align=center><img src="img/pdmmic.jpg"><br><small>PDM MEMS Mic</small></p>
</div>
<h3>Audio Connections</h3>
<table class=doc align=center cellpadding=3>
<tr class=top><th>Port</th><th>Purpose</th></tr>
<tr class=odd><td align=center>Out 0</td><td>Filtered Audio Output</td></tr>
</table>
<h3>Functions</h3>
<p>This object has no functions to call from the Arduino sketch. It
simply streams data from the PDM data, filters out the high frequency
noise and gives you the audio signal.</p>
<h3>Hardware</h3>
<p>PDM has been tested with this <a href="https://www.adafruit.com/product/3492">
Adafruit MP34DT01-M Microphone Board</a>.
</p>
<table class=doc align=center cellpadding=3>
<tr class=top><th>Pin</th><th>Signal</th><th>Direction</th></tr>
<tr class=odd><td align=center>9</td><td>CLK</td><td>Output, 2.8235 MHz</td></tr>
<tr class=odd><td align=center>13</td><td>DATA</td><td>Input, Data on rising edge</td></tr>
</table>
<p>Data is input on the rising edge. The SEL pin on MP34DT01-M should be
connected LOW for proper data capture.</p>
<!--<h3>Examples</h3>-->
<h3>Notes</h3>
<p>Filtering consumes approximately 39% of the CPU when running at
96 MHz. The code currently consumes this time inside a high
priority interrupt, blocking other libraries. Perhaps future
versions will perform filtering at lower priority.
</p>
<p>The filter used is a 512 tap FIR with approx &plusmn;1.1 dB gain
flatness to 10 kHz. While far from audiophile grade, this should
perform far better than the rapid rolloff of Cascaded Integrator
Comb (CIC) or simple moving average filters commonly used on
other microcontrollers. The filter also consumes 2104 bytes of
RAM for buffering and 32K of Flash for a lookup table to optimized
the filter computation.
</p>
</script>
<script type="text/x-red" data-template-name="AudioInputPDM">
<div class="form-row">
<label for="node-input-name"><i class="fa fa-tag"></i> Name</label>
<input type="text" id="node-input-name" placeholder="Name">
</div>
</script>

<script type="text/x-red" data-help-name="AudioInputUSB">
<h3>Summary</h3>
<div class=tooltipinfo>

Chargement…
Annuler
Enregistrer