项目承接 发表于 2020-7-31 17:34:18

Stduino IDE stm32 最小系统 小蓝板 驱动超声波传感器(四)

本帖最后由 项目承接 于 2020-7-31 21:25 编辑

利用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供电


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

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

IDE当前支持的功能有:

[*]GDB调试
[*]封装库下载安装
[*]代码自动补全提示
[*]中英文模式
[*]UTF-8\GBK编码格式
[*]代码快速格式化
[*]SWD\串口程序下载&调试(已验证)
[*]DFU程序下载方式(待验证)
[*]USB HID程序下载方式(待验证)
[*]maple DFU程序下载方式(待验证)
[*]maple DFU2程序下载方式(待验证)
[*]MassStorage程序下载方式(待验证)
[*]更多功能细节请前往进行了解


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

[*]Stduino UNO&Nano
[*]Nucleo 144 boards
[*]Nucleo 64 boards
[*]Nucleo 32 boards
[*]Discovery boards
[*]Eval boards
[*]STM32MP1 series coprocessor boards
[*]Generic STM32F0 boards
[*]Generic STM32F1 boards
[*]Generic STM32F3 boards
[*]Generic STM32F4 boards
[*]Generic STM32H7 boards
[*]Generic STM32L0 boards
[*]3D printer boards
[*]LoRa boards
[*]Electronic Speed Controller boards
[*]Generic flight controllers
[*]Garatronics boards
[*]Midatronics boards

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

详情请搜索stduino.com进行了解

页: [1]
查看完整版本: Stduino IDE stm32 最小系统 小蓝板 驱动超声波传感器(四)