这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 活动中心 » 板卡试用 » 【ArduinoNiclaVision】基于platform板载麦克风的测试

共2条 1/1 1 跳转至

【ArduinoNiclaVision】基于platform板载麦克风的测试

助工
2025-12-26 18:31:38     打赏

硬件介绍

nicla 开发板上板载了一个麦克风外设,ST MP34DT06J 数字 MEMS 麦克风,下面来尝试驱动一下此模块。

原理图如下,引脚pe-7.

image.png

物理布局如下

image.png

代码测试

关于nicla的板卡配置文件路径:C:/Users/**.platformio/packages/framework-arduino-mbed/variants/NICLA_VISION

代码如下

#include <Arduino.h>
#include <PDM.h>

// put function declarations here:
#define ADC_PIN PE_7
const float VREF = 1.0;
short sampleBuffer[512];
volatile int samplesRead = 0;
void onPDMdata();

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
    PDM.onReceive(onPDMdata);
    if (!PDM.begin(1, 16000)) {
        Serial.println("PDM 初始化失败!");
        while (1);
    }
    Serial.println("PDM 就绪");
}

void loop() {
  // put your main code here, to run repeatedly:
  delay(100);
  //Serial.print("cdcdcdcdcd:"); Serial.println(samplesRead);
    if (samplesRead) {
        Serial.println(samplesRead);
        for (int i = 0; i < samplesRead; i++) {
          //float voltage = ; // 假设16位音频数据
          Serial.println(sampleBuffer[i]);
        }
        samplesRead = 0;
    }
}
void onPDMdata() {
    int bytesAvailable = PDM.available();
    int bytesRead = PDM.read(sampleBuffer, bytesAvailable);
    samplesRead = bytesRead / 2;
//  Serial.print("读取到的样本数: "); Serial.println(samplesRead);
}
// put function definitions here:

串口波形工具显示效果如下





关键词: nicla     pdm    

院士
2025-12-29 16:55:31     打赏
2楼

谢谢分享器件应用资料。请问ST MP34DT06J 数字 MEMS 麦克风的技术参数如何?


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]