你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【更好用的单片机】【Stduino】37种传感器(六)之声音传...

[复制链接]
stduino 发布时间:2020-7-23 21:46
37种传感器(六)之声音传感器模块+Stduino Nano&UNO
* _! S9 j5 v' Z+ s) N  o7 V) f7 x  m/ j5 h" U% V  T8 K( ^
本文转载自:http://www.stduino.com/forum.php?mod=viewthread&tid=28&extra=page%3D1=
9 c, b  L( X$ [
; W' }4 s9 f0 s  J' S  [3 C

/ R3 m$ r" x* r: t9 P" m- R关键词:
3 t9 N6 j9 }4 y' O  C51、stm32、arduino、stduino、单片机、stduino UNO&Nano、声音模块

' b6 l8 n. V  L2 ?- S) Q/ U$ y. K' Q0 N

  F3 B+ ~5 w0 [3 n; R5 Q8 H说明:, `: S  O; [. G9 R4 o" [/ p9 n
声音传感器的作用相当于一个话筒(麦克风)。它用来接收声波,显示声音的振动图象,但不能对噪声的强度进行测量。传感器内置一个对声音敏感的电容式驻极体话筒。
. l8 s1 E; U0 i3 l# `/ }* t声波使话筒内的驻极体薄膜振动,导致电容的变化,而产生与之对应变化的微小电压。这一电压随后被转化成0-5V的电压,经过A/D转换被数据采集器接收。
# \+ X. w/ I: e7 T3 z+ E模块有两个输出,AO输出模拟量,实时输出麦克风两端电压值;当声音强度到达某个阈值时,DO引脚输出高电平信号,否则输出为低电平信号。(阈值可通过电位器调节)
$ c$ a# J8 |3 m& M0 ~
声音传感器.jpg # h& M8 |3 W$ L3 ]6 s2 H" \/ ^
& ?4 o! f, g& l. s' T' t* Z8 I

实验目的:/ F+ b$ s" C& r
检测声音


8 h- V# W2 @# d5 Z  z! ?5 U, |

器材:% \7 }' p# P% ?
Stduino Uno/Nano;杜邦线;声音传感模块。

0 r) i( h6 g' C! ^' N

电路连接:

电路连接图.png / s6 \$ y2 d& K
4 h; L  P) D* n# _/ _
代码展示:9 d" Z% e6 c: q; q* s/ n
  • 数字输出:: f" O3 [! F- n, A6 @2 b4 s
  1. <font face="Arial">int LED = 13;
    + |" V1 _) F+ S2 f
  2. int BUTTON = 8;//DO接口
    9 V+ }2 m' l* z
  3. int val;//数字变量val
    ; b- o, f) ], r: b. X
  4. void setup()
    4 O# y, z2 D! g  q0 s2 D
  5. {, S% z! N$ n, Y  u$ G  I, K+ l" X
  6.   // put your setup code here, to run once:$ X" \. _, W$ z  V: n* G& w
  7.     pinMode(LED,OUTPUT);
    ' S1 ^# `8 _" v) ]
  8.     pinMode(BUTTON,INPUT);
    , P* q# \6 ^! w8 g9 q. X: z9 M
  9. }# q) ~- W0 {5 h5 Z
  10. void loop()' u+ H" |3 w+ E( D' K1 }) p( }
  11. {
    3 O) C  }; X$ ~' X1 s1 e2 \, i$ N( ?
  12.   // put your main code here, to run repeatedly:
    + e, G  q4 r0 z! M. }% `0 D$ V
  13.     val=digitalRead(BUTTON);! j6 ?( D- U) C8 F* [5 t; m' m
  14.     if(val ==HIGH)//当监测到有声音时,LED闪烁/ T* X: x( R# Q2 B. _. E
  15.     {
    : J: F5 U' h7 c
  16.         digitalWrite(LED,LOW);
    4 y" s/ B3 t8 t% X" _# L
  17.     }% S% g, x; U3 V! U
  18.     else  p; p- p" Z/ E" l$ _& m! [/ V4 ]
  19.     {
    3 N/ q/ o1 r& C7 S! ~1 t  e$ a, S
  20.         digitalWrite(LED,HIGH);
    2 T% R: X7 R8 }( m
  21.     }5 K: f& m* C* x
  22.     delay(1000);0 B; c- n- }7 x3 Y, [- Y" C- ?
  23.     val = 0;
    + ]/ t' P) Z) S8 C& d# J/ V% c
  24. }</font>) B3 F6 X3 Z3 D3 I1 a
复制代码

  S9 @( R. `3 Z, Y) Y) _  @' S7 w8 {1 F0 C) A1 Y
  • 模拟输出:) |$ ~$ Z$ x& _- a8 l& D
  1. <font face="Arial" size="3">int sensorPin = A0;//A0接口
    4 e9 _9 j3 N8 P3 L( b
  2. int ledPin = 13;
    : W5 z8 W1 C( N( W6 }
  3. int sensorValue = 0;//数字变量val
    ( O. Y1 p; D0 ~  L& k- c' M) g
  4. void setup()
    ( Q% J" g4 H- ^. \  v+ E1 U. t2 h
  5. {9 z! l) ]7 I* q9 a
  6.   // put your setup code here, to run once:. u' q8 v" v1 m: o0 l: E; d
  7.     pinMode(ledPin,OUTPUT);# ~$ Z6 n1 e1 T( _. v& w1 N! y
  8.     pinMode(sensorPin,INPUT_ANALOG);# d, `/ _6 A3 u8 E' L
  9.     Serial.begin(9600);
    + ?. Y; \( w/ y9 S9 c% d3 L
  10. }
    . b8 i! X4 m& E  m2 l
  11. void loop()
    $ w8 e' X) A5 D* c' f
  12. {5 Y# D" T# S1 D8 V7 [
  13.   // put your main code here, to run repeatedly:
    / S! M2 v0 j* b' Y6 k
  14.     sensorValue=analogRead(sensorPin);
    1 t7 P3 s" s$ A8 p5 Y' l
  15.     digitalWrite(ledPin,LOW);# e3 L% C. n4 W, U
  16.     delay(sensorValue);
    2 O% w7 |2 U: r' _# c' M
  17.     digitalWrite(ledPin,HIGH);1 H4 Z$ a, \! y- w! G5 V0 i) X; Y
  18.     delay(sensorValue);
    ; D, L. s; U  s
  19.     Serial.println(sensorValue);
    : M. I+ y! h7 u" j
  20. }</font>
复制代码
实验效果:
4 i5 x9 n3 v5 m 声音传感器实验效果.png
0 ?3 d' W2 a7 p! x1 P# U6 K! b% j
收藏 评论1 发布时间:2020-7-23 21:46

举报

1个回答
STMCU-管管 回答时间:2020-7-24 16:47:21
请不要将链接导入到其他地方,谢谢

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版