标题: Stduino IDE stm32 最小系统 小蓝板 驱动超声波传感器(四) [打印本页]

作者: 文涛    时间: 2020-7-31 18:23
标题: Stduino IDE stm32 最小系统 小蓝板 驱动超声波传感器(四)
利用HC-SR04超声波传感器测量到目标物体的距离,并利用GDB调试窗口显示。

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

2.超声波传感器HC-SR04一个

3.杜邦线4根。

4.stlink下载器一个

5.usb供电线一根


注意:该超声波传感器模块需工作在5.0V电压,所以仅仅有stlink下载器3.3v供电是不够的,需要再加上usb5.0v供电


话不多说了,上代码:
  1. int trig =PA4;//Trig端
  2. int echo = PA5;//Echo端
  3. float d=0.0;
  4. unsigned long time = 0;
  5. float Distance() {
  6.     digitalWrite(trig,HIGH);
  7.     delayMicroseconds(15);//需要大于10
  8.     digitalWrite(trig,LOW);
  9.     time = pulseIn(echo,HIGH);//高电平传回超声波从发射到接收所经过的时间。
  10.     float S = time/58.00; //使用浮点计算出距离,单位为cm,time除以58是由速度乘以时间换算而来
  11.     Serial.println(S);
  12.     time = 0;
  13.     return S;
  14. }
  15. void setup()
  16. {
  17. // put your setup code here, to run once:
  18.     pinMode(echo,INPUT);
  19.     pinMode(trig,OUTPUT);
  20.     Serial.begin(9600);
  21. }
  22. void loop()
  23. {
  24. // put your main code here, to run repeatedly:
  25.     d=Distance();
  26. //GDB调试状态下通过display d 即可查看其值
  27.     Serial.println(d);
  28. //串口调试状态下查看其值
  29.     delay(1000);
  30. }
复制代码


Stduino IDE是一款面向32位处理器快速入门学习的集成开发平台,目前已经支持Arduino_Core_STM32框架,集聚快捷、高效、免费、开源、易得于一身,软件还集成了GDB调试功能。

IDE当前支持的功能有:


已经支持的芯片&板型列表:

更多功能集成正在进行中~


c.jpg (137.46 KB, 下载次数: 63)

超声波测距模块距离测量值

超声波测距模块距离测量值





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1