【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2

这篇具有很好参考价值的文章主要介绍了【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百四十九:MAX9814麦克风放大器模块 MIC话筒声音放大/咪头传感器

【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2,【Arduino】168种传感器模块系列实验,单片机,嵌入式硬件,Arduino,物联网,MAX9814咪头传感器模块
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百四十九:MAX9814麦克风放大器模块 MIC话筒声音放大/咪头传感器

第三项实验:用合成DTMF双音多频信号测试咪头传感器和DTMF解码模块

Arduino实验开源代码

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

 实验一百四十九:MAX9814麦克风放大器模块 MIC话筒声音放大/咪头传感器

 第三项实验:用合成DTMF双音多频信号测试咪头传感器和DTMF解码模块

 1、安装 "dtmf"库: 下载https://codeload.github.com/DFRobot/DTMF/zip/master

 2、需要材料:喇叭1个,68Ω电阻两个,咪头传感器和DTMF解码模块,两块UNO板

 3、合成信号硬件连接:在D11,D12引脚各接一个68Ω电阻一端,68Ω电阻另一端接喇叭,然后喇叭另一端接地。

 4、咪头模块接线:

 MAX9814 Arduino

 VCC    5V

 GND    GND

 OUT    IN(接到DTMF)

 5、DTMF解码模块接线

 DTMF   Arduino

 VCC    5V

 GND    GND

 Q1     12

 Q2     11

 Q3     10

 Q4     9

*/



#include "dtmf.h"

DTMF dtmf;

void setup()

{

 Serial.begin(9600);

}

void loop()

{

 // 读DTMF代码并且用串行输出

 int myDtmf;

 myDtmf = dtmf.getDTMF();

 if (myDtmf != -1)

  Serial.println(myDtmf);

 delay(100); // 以避免收到重复的输出。

}

DTMF解码识别模块实验视频
https://v.youku.com/v_show/id_XNDU3OTkzOTA4OA==.html

打开"dtmf.h"库文件查看,发现是针对不同硬件模块的(板上芯片都是MT8870),由于接脚对不上号,故串口输出的解码不对的

【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2,【Arduino】168种传感器模块系列实验,单片机,嵌入式硬件,Arduino,物联网,MAX9814咪头传感器模块

制作简易录音机

1、下载安装TMRpcm库,地址https://github.com/TMRh20/TMRpcm

https://gitee.com/hu1023/TMRpcm

【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2,【Arduino】168种传感器模块系列实验,单片机,嵌入式硬件,Arduino,物联网,MAX9814咪头传感器模块
2、解压缩后,打开文件夹,用记事本打开pcmConfig.h

【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2,【Arduino】168种传感器模块系列实验,单片机,嵌入式硬件,Arduino,物联网,MAX9814咪头传感器模块

3、TMRpcm里面还有一个用于录音的方法,源码中是被注释掉的,在安装该库之后需要打开源码库中的pcmConfig.h文件将以下的行取消注释,否则会编译不通过:

#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

保存,然后手动添加该库。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百四十九:MAX9814麦克风放大器模块 MIC话筒声音放大/咪头传感器
项目:MAX9814简易录音机
接线:MAX9814接A0
MicroSD uno
CS-------------10
MOSI(DI)------11
MISO(DO)------12
CLK------------13

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

 实验一百四十九:MAX9814麦克风放大器模块 MIC话筒声音放大/咪头传感器

 项目: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实验场景图

【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2,【Arduino】168种传感器模块系列实验,单片机,嵌入式硬件,Arduino,物联网,MAX9814咪头传感器模块

实验中使用串口命令,返回情况截图

【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2,【Arduino】168种传感器模块系列实验,单片机,嵌入式硬件,Arduino,物联网,MAX9814咪头传感器模块
在电脑上打开TF卡,发现确有一个名为“test.wav”的录音文件,直接播放该文件,声音非常小,看来只是个简单的演示实验

【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2,【Arduino】168种传感器模块系列实验,单片机,嵌入式硬件,Arduino,物联网,MAX9814咪头传感器模块

直通小喇叭模式,声音小的听不到

【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2,【Arduino】168种传感器模块系列实验,单片机,嵌入式硬件,Arduino,物联网,MAX9814咪头传感器模块

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百四十九:MAX9814麦克风放大器模块 MIC话筒声音放大/咪头传感器

程序:通过读取MAX9814咪头模块输入的电压值来控制电平模块的亮灯数量(0-5)

实验接线:MAX9814咪头模块OUT接Uno的A0,电平模块接D6(pwm)

Arduino实验开源代码

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

  实验一百四十九:MAX9814麦克风放大器模块 MIC话筒声音放大/咪头传感器

 程序:通过读取MAX9814咪头模块输入的电压值来控制电平模块的亮灯数量(0-5)

 实验接线:MAX9814咪头模块OUT接Uno的A0,电平模块接D6(pwm)

*/



int levelModule = 6;

int readValue = 0; //保存读到的模拟值

int ledValue = 0; //保存LED灯占空比

void setup() {

 pinMode(levelModule, OUTPUT); //数字口要选择带~号的具有pwm功能的输出口

}

void loop() {

 readValue = analogRead(A0);   //读取A0模拟口的数值(0-5V 对应 0-1024取值)

 ledValue = map(readValue, 0, 1023, -1, 6);

 // 将0到1024之间的数据映射成-1到6之间的数据

 analogWrite(levelModule, ledValue);  //PWM最大取值6

}

动感节奏灯实验场景图

【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2,【Arduino】168种传感器模块系列实验,单片机,嵌入式硬件,Arduino,物联网,MAX9814咪头传感器模块

使用MAX9814咪头模块的动感节奏音乐旋律电平灯(测试视频40秒)

https://v.youku.com/v_show/id_XNTE2OTUyMzgwOA==.html?spm=a2hcb.playlsit.page.1文章来源地址https://www.toymoban.com/news/detail-558354.html

到了这里,关于【雕爷学编程】Arduino动手做(149)---MAX9814咪头传感器模块2的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【雕爷学编程】Arduino动手做(143)---ML8511紫外线传感器模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)

    2024年02月15日
    浏览(44)
  • 【雕爷学编程】Arduino动手做(174)---Sensor Shield V5.0传感器扩展板

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)

    2024年02月15日
    浏览(46)
  • 【雕爷学编程】Arduino动手做(113)---5110液晶屏模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)

    2024年02月09日
    浏览(51)
  • 【雕爷学编程】Arduino动手做(119)---JQ6500语音模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)

    2024年02月10日
    浏览(56)
  • 【雕爷学编程】Arduino动手做(54)---大按键微动按钮模块3

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试多做实验,不管成功与否,都会记录下

    2024年02月13日
    浏览(44)
  • 【雕爷学编程】Arduino动手做(131)---跑马灯矩阵键盘模块

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)

    2024年02月11日
    浏览(53)
  • 【雕爷学编程】Arduino智能家居之触摸和声音传感器

    Arduino是一个开放源码的电子原型平台,它可以让你用简单的硬件和软件来创建各种互动的项目。Arduino的核心是一个微控制器板,它可以通过一系列的引脚来连接各种传感器、执行器、显示器等外部设备。Arduino的编程是基于C/C++语言的,你可以使用Arduino IDE(集成开发环境)来

    2024年02月03日
    浏览(56)
  • 【雕爷学编程】Arduino动手做(133)---LCD1602扩展板模块

    7款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与

    2024年02月11日
    浏览(42)
  • 【雕爷学编程】Arduino动手做(90)---4X4矩阵薄膜键盘模块2

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试多做实验,不管成功与否,都会记录下

    2024年01月17日
    浏览(53)
  • 【雕爷学编程】Arduino动手做(181)---Maixduino AI开发板2

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)

    2024年02月14日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包