[Diao Ye lernt Programmieren] Arduino praktisch (52) --- Modul 4 zum Lesen und Schreiben von MicroSD-Karten

Der Hinweis auf 37 Sensoren und Module ist im Internet weit verbreitet. Tatsächlich muss es mehr als 37 Sensormodule geben, die mit Arduino kompatibel sind. Angesichts der Tatsache, dass ich einige Sensor- und Aktuatormodule zur Hand habe, die dem Konzept des wahren Wissens (muss praktisch sein) entsprechen, zum Zwecke des Lernens und der Kommunikation werde ich hier versuchen, nacheinander weitere Experimente durchzuführen.

[Arduino] 168 Arten von Experimenten mit Sensormodulserien (Datencode + Simulationsprogrammierung + Grafikprogrammierung)
Experiment 52: SPI-Schnittstelle Micro-SD-Kartenmodul TF-Kartenleser (mit Pegelumwandlungschip)

Fügen Sie hier eine Bildbeschreibung ein

Projekt: Erstellen Sie einen einfachen Audiorecorder

1. Laden Sie die TMRpcm-Bibliothek herunter und installieren Sie sie. Die Adresse lautet https://github.com/TMRh20/TMRpcm
https://gitee.com/hu1023/TMRpcm

Fügen Sie hier eine Bildbeschreibung ein

2. Öffnen Sie nach der Dekomprimierung den Ordner und öffnen Sie pcmConfig.h mit Notepad

Fügen Sie hier eine Bildbeschreibung ein

3. Es gibt auch eine Methode zum Aufzeichnen in TMRpcm, die im Quellcode auskommentiert ist. Nach der Installation der Bibliothek müssen Sie die Datei pcmConfig.h in der Quellcodebibliothek öffnen und die folgenden Zeilen auskommentieren, andernfalls schlägt die Kompilierung fehl:

#define buffSize 128  //must be an even number
#define ENABLE_RECORDING // Amount of space to pre-allocate for recording
#define BLOCK_COUNT 10000UL  // 10000 = 500MB   2000 = 100MB

Speichern Sie und fügen Sie die Bibliothek dann manuell hinzu.

[Arduino] 168 Sensormodul-Reihenexperimente (Datencode + Simulationsprogrammierung + Grafikprogrammierung)
Experiment 52: SPI-Schnittstelle Micro-SD-Kartenmodul TF-Kartenleser (mit Pegelumwandlungschip) Programm
: MAX9814 einfacher Rekorder
Verkabelung: MAX9814 verbunden mit A0
MicroSD uno
CS-------------10
MOSI (DI)------11
MISO (DO)------12
CLK------ ------13

/*
  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验五十二:SPI接口Micro SD卡模块TF卡读写卡器 (带电平转换芯片)
  程序:MAX9814简易录音机
  接线:MAX9814接A0
  MicroSD       uno
  CS-------------10
  MOSI(DI)------11
  MISO(DO)------12
  CLK------------13
*/

#define buffSize 128  //must be an even number
#define ENABLE_RECORDING // Amount of space to pre-allocate for recording
#define BLOCK_COUNT 10000UL  // 10000 = 500MB   2000 = 100MB

#include <SD.h>
#include <SPI.h>
#include <TMRpcm.h>

#define SD_ChipSelectPin 10
TMRpcm audio;   //  创建一个用于此程序的对象

void setup() {
    
    
  audio.speakerPin = 4;
  Serial.begin(115200);
  if (!SD.begin(SD_ChipSelectPin)) {
    
    
    Serial.println("SD Fail");
    return;
  } else {
    
    
    Serial.println("SD OK");
  }
  // 音频库需要知道使用哪个 CS pin 进行录音
  audio.CSPin = SD_ChipSelectPin;
}

void loop() {
    
    
  if (Serial.available()) {
    
                            //通过串行发送命令进行播放
    char c = Serial.read();
    Serial.println(c);
    switch (c) {
    
    
      case 'r': audio.startRecording("test.wav", 16000, A0); break;  //在引脚 A0 上以 16khz 采样率记录
      case 'R': audio.startRecording("test.wav", 16000, A0, 1); break; //录音,但要直通到扬声器
      case 't': audio.startRecording("test.wav", 16000, A0, 2); break; //不记录, 直接输出到扬声器
      //注意:如果样本在写入前被丢弃,则
      //在直通模式下不会被听到
      case 's': audio.stopRecording("test.wav"); break;              //停止录音
      case 'p': audio.play("test.wav"); break;                       //播放录音
      case '=': audio.volume(1); break;                              //音量加1,不影响录音
      case '-': audio.volume(0); break;                              //音量减1,不影响录音
      case 'S': audio.stopPlayback(); break;                         //停止所有播放

    }
  }
}

Arduino-Experiment-Szenendiagramm

Fügen Sie hier eine Bildbeschreibung ein

Verwenden Sie im Experiment den Befehl für die serielle Schnittstelle und geben Sie den Screenshot der Situation zurück

Fügen Sie hier eine Bildbeschreibung ein

Öffnen Sie die TF-Karte auf dem Computer und stellen Sie fest, dass es tatsächlich eine Aufnahmedatei mit dem Namen „test.wav“ gibt. Spielen Sie die Datei direkt ab und der Ton ist sehr leise. Es scheint, dass es sich nur um ein einfaches Demonstrationsexperiment handelt.

Fügen Sie hier eine Bildbeschreibung ein
Durch den kleinen Lautsprechermodus ist der Ton zu leise, um ihn zu hören

Fügen Sie hier eine Bildbeschreibung ein

Supongo que te gusta

Origin blog.csdn.net/weixin_41659040/article/details/131863403
Recomendado
Clasificación