소스 검색

Add AudioInputPDM documentation

dds
PaulStoffregen 6 년 전
부모
커밋
15fe912697
2개의 변경된 파일51개의 추가작업 그리고 0개의 파일을 삭제
  1. BIN
      gui/img/pdmmic.jpg
  2. +51
    -0
      gui/index.html

BIN
gui/img/pdmmic.jpg 파일 보기

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

+ 51
- 0
gui/index.html 파일 보기

@@ -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>

Loading…
취소
저장