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

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

[复制链接]
stduino 发布时间:2020-7-19 14:35
37种传感器(二)之超声波传感器模块+Stduino Nano&UNO

本文转载自:http://www.stduino.com/forum.php?mod=viewthread&tid=24&extra=page%3D2

关键词:
( y5 r9 \! y, ]" S* x' |( p51、stm32、arduino、stduino、单片机、stduino UNO&Nano、超声波传感器模块

超声波测距原理简析:' Z* E8 k$ i& t- D, H+ I6 }
超声波传感器能够发射超声波并接收反射回的超声波信号。利用发射与接收的时间差以及传播速度(即声速,声音在空气中传播的速度约为340m/s)即可计算传感器到障碍物体的距离。单片机向超声波传感器发送脉冲,超声波传感器被此脉冲触发后会产生一个40 kHz的脉冲电信号,通过激励换能器处理以后,转换成机械振动,频率约在20 kHz以上,由此形成了超声波。

该信号经锥形“辐射口”处将超声波信号发射出去。接收器接收到反射回来的超声波信号后,将超声波变成微弱的电振荡,并将信号进行放大,就可得到所需的脉冲信号,此脉冲信号再返回给单片机。

超声波传感器.jpg & s! P0 j% k4 P+ C" u. }

实验目的:
! h) n6 S4 m$ `0 V( z8 r  R5 C. l. d利用HC-SR04超声波传感器测量到目标物体的距离,并利用串口通信窗口显示。

具体而言,在模块trig端输出一个至少10us的高电平信号,则该模块内部将循环发射8个40KHz频率的脉冲;若检测由回波信号,则会在echo端产生高电平信号。

器材:
) k4 E3 f) Z8 D& l7 t3 p# b! L. FStduino Uno/Nano、超声波传感器HC-SR04、杜邦线4根

电路连接:

02超声波传感器.png

, u# G) `" n& Z' T

代码展示:

  1. int trig = 8;//Trig端5 A6 L+ ]- N* j* ], [9 F" N* ?
  2. int echo = 9;//Echo端5 s" t% J! E/ w6 `9 r0 J
  3. void setup() # m* P2 A) K' z+ o6 ^3 q
  4. {4 E# C8 q; J8 ?  y6 s
  5. // put your setup code here, to run once:
    0 x' f' G2 l1 j+ v8 V
  6. pinMode(echo,INPUT);% Z% i8 J5 \$ h7 I! K
  7. pinMode(trig,OUTPUT);+ E% n1 v, m& U3 J; J- u  _( @
  8. Serial.begin(9600);
    0 s8 W6 ?/ _2 ]( k  \" Q* z
  9. }5 w4 n7 E/ x% W# q( U; ?! m9 V, h
  10. void loop()8 H3 O  r. ^& b- f
  11. {! d& D  m# L" B$ U. G& X- X, }
  12. // put your main code here, to run repeatedly:$ b" K3 c6 W! N/ T! v
  13. unsigned long time = 0;
    : S) ^, S( e5 R3 O) u4 ~1 \! q- r
  14. while(1){
    , K. Y) s( v: b1 c+ i( u
  15. digitalWrite(trig,HIGH);
    8 _) s. a' n7 d, U6 X
  16. delayMicroseconds(15);//需要大于10
    5 `+ _3 @5 i7 H" W/ H' l! \7 i- [
  17. digitalWrite(trig,LOW);
    $ J. D  J8 E( P, B0 c: h0 ]

  18. . @+ U+ h' s+ L
  19. time = pulseIn(echo,HIGH);//高电平传回超声波从发射到接收所经过的时间。5 R2 I' n# I; X3 M, M* L
  20. float S = time/58.00; //使用浮点计算出距离,单位为cm,time除以58是由速度乘以时间换算而来4 a' s; z( \; i/ n& H1 w
  21. Serial.println(S);) o: _6 }  u( m1 T, {9 Z
  22. S = 0;3 A  ?8 N  [$ Y; o/ _' Q
  23. time = 0;9 U* W4 \/ G+ L# y0 t3 j9 g
  24. delay(500);# K  z- S5 ]+ D: U0 x# t" b

  25. ' }6 W5 |/ R0 P0 b: o9 [: ?
  26. }
    " B1 o( d+ n4 ~. J+ ?
  27. }
复制代码

% w9 F- c( _" `# L+ c: F1 K

超声波传感器连接:

电路连接.jpg . Z8 t; ?% ?7 ]

* w+ s6 S8 j' w6 @9 Q4 |


$ t, c2 s- T0 I1 R6 S3 W
5 B0 ~/ |, R+ `! G' k3 o. @7 ^" o9 l; a# @5 B' K" |
收藏 评论0 发布时间:2020-7-19 14:35

举报

0个回答

所属标签

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