STM32驱动超声波+OLED显示,并上传数据到云端(ONENET)

这篇具有很好参考价值的文章主要介绍了STM32驱动超声波+OLED显示,并上传数据到云端(ONENET)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文将介绍如何使用STM32F103C8T6单片机和HC-SR04超声波测距模块来实现测距功能,并通过0.96寸OLED屏幕显示测距结果。

首先,我们需要了解一下HC-SR04超声波测距模块的工作原理。该模块通过发送超声波脉冲并接收回波信号的时间来计算物体与模块之间的距离。具体实现过程如下:

  1. 发送一个10微秒的高电平脉冲至Trig引脚,该脉冲将触发模块发送一组8个40kHz的超声波脉冲。
  2. 当超声波脉冲发射后,模块将Echo引脚输出高电平,并持续时间与超声波传播路径的长度成正比。
  3. 使用STM32F103C8T6单片机的定时器(Timer)来测量Echo引脚输出高电平的时间,即为超声波传播路径的时间t。
  4. 计算物体与超声波模块之间的距离:距离 = t * 340m/s / 2,其中340m/s是声速,除以2是因为超声波信号从模块发出后需要返回。

接下来,我们需要连接硬件。

准备硬件:

1.HC-SR04超声波测距模块

2.stm32c8t6核心板

3.OLED屏幕(4个引脚的)。

4.ESP-01S,wifi模块

准备软件

1.keil5

2.串口助手

将的Trig引脚连接到STM32F103C8T6单片机的GPIO口(例如PB11),将Echo引脚连接到另一个GPIO口(例如PB10)。同时,将0.96寸OLED屏幕模块连接到单片机的I2C口(例如PA5和PA7)。

接下来我们需要在STM32F103C8T6单片机上编写程序。首先,我们需要定义一些参数:

oled接stm32,stm32,单片机,嵌入式硬件

 oled接stm32,stm32,单片机,嵌入式硬件

后面主要是通过定时器4的中断处理

oled接stm32,stm32,单片机,嵌入式硬件

这是一个测量超声波传感器距离的函数。

函数使用HC-SR04超声波传感器进行测量,该传感器通过发送超声波脉冲并测量返回的回响时间来计算物体与传感器之间的距离。

在代码中,变量"t"保存回响时间,变量"lengthTemp"保存单次测量得到的距离值(以厘米为单位),变量"sum"保存多次测量时得到的距离值总和。 这个函数会进行5次测量,然后将这5次测量的平均值作为最终的距离值,并返回。

oled接stm32,stm32,单片机,嵌入式硬件

在主函数中,我们首先初始化GPIO口和I2C接口。然后进入一个无限循环中,在循环中发送超声波脉冲并使用定时器测量Echo引脚输出高电平的持续时间。最后,通过计算得到物体与模块之间的距离,并将其显示在OLED屏幕上。 需要注意的是,在程序中使用了延时函数和sprintf函数,需要自行实现或使用相应库函数。 以上就是使用STM32F103C8T6单片机和HC-SR04超声波测距模块实现测距功能,并通过0.96寸OLED屏幕显示测距结果的方法。

oled接stm32,stm32,单片机,嵌入式硬件

 直接找我要例程,对应的接上线,就可以复现一模一样的功能

oled接stm32,stm32,单片机,嵌入式硬件

上传数据到onenet

oled接stm32,stm32,单片机,嵌入式硬件

只需要在代码这样写就可以了  

oled接stm32,stm32,单片机,嵌入式硬件

 关于onenet上传数据的内容,可以看我其他的文章,都有写。文章来源地址https://www.toymoban.com/news/detail-524394.html

到了这里,关于STM32驱动超声波+OLED显示,并上传数据到云端(ONENET)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 【CubeMX配置STM32驱动超声波模块(HC-SR04)】

    一、CubeMX配置STM32 1、选择定时器 选择 输入捕获模式 预分频设置为71,向上计数,自动重装值65535 然后将名字改为 ECHO 2、配置TRIG口 这里的端口使用其它空闲的IO口是可以的,设置为输出模式,其它配置不需要改变,最主要的是 User Label 那儿,需要设置为 TRIG ,因为驱动函数里

    2024年02月02日
    浏览(27)
  • 电赛MSP430F5529之超声波测距+OLED 显示(含主要代码)

    目录 前言 一、超声波介绍 二、部分代码 三、总结 哎,又双叒叕,电赛延期了,看起来像是遥遥无期,但是肯定要考虑大局,大家就继续抓紧时间学习知识,巩固自己的知识,更进一步。好了,今天主要是继承上一篇博文(OLED显示)写的,主要是写超声波测距的(US-015)

    2024年02月14日
    浏览(22)
  • STM32超声波避障小车(舵机云台+超声波/stm32f103/HAL/Cube)

    一、小车1.0——基本蓝牙小车(仅蓝牙遥控小车运动方向,本篇) 二、小车2.0——蓝牙小车PLUS(可以蓝牙控制方向+蓝牙直接调节车速) 三、小车3.0——避障小车(超声波+舵机云台) 四、小车4.0——无线手柄方向感知操控小车(mpu6050+双蓝牙透传) 五、双轮自平衡小车(HAL库版

    2024年02月05日
    浏览(46)
  • 基于STM32F103ZET6的(单/三)路HC-SR04超声波测距+TFTLCD实时显示+距离报警

    一、成果图 说明:本程序的源码地址: https://github.com/Lfy-YF/Campus-Project            CSDN下载连接:https://download.csdn.net/download/weixin_58849239/87829470 源码包含四个版本,涉及单路测距、三路测距、增加外部中断(用来版本记录的~) 运行效果: 本程序实现脱机测距,共左中右

    2024年02月11日
    浏览(18)
  • STM32——超声波传感器

    需求: 使用超声波测距,当手离传感器距离小于 5cm 时, LED1 点亮,否则保持不亮状态   接线:     定时器配置: 使用 TIM2 ,只用作计数功能,不用作定时。 将 PSC 配置为 71 ,则计数 1 次代表 1us 。   编写微秒级函数: 1、总结 微秒级定时: 这个延迟函数的实现利用了定

    2024年02月05日
    浏览(24)
  • 基于STM32的超声波测距

    一、HC-SR04模块介绍 HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可高达3mm;模块包括超声波发射器、接收器、与控制电路。 模块的基本工作原理为: (1)采用 IO口 TRIG触发测距,给最少 10us的高电平信呈。 (2)模块自动发送 8个 40khz的方波,自动检测是

    2024年02月13日
    浏览(21)
  • 基于STM32的超声波雷达

    视频地址:1.基于STM32的超声波雷达-演示_哔哩哔哩_bilibili 备注:文档最后有所有文件的网盘地址 全部必要硬件(左到右) : ST-LINK调试器:调试下载程序 stm32f103c8t6核心板 1.8寸TFT显示器 sg90舵机 超声波传感器 其他扩展硬件 超声波传感器转接板:方便超声波传感器接到舵机上

    2024年02月12日
    浏览(19)
  • 基于STM32超声波测距系统设计

    随着社会的发展和科技的进步,人们对测距的要求越来越高,特别是在一些要求实时测距的场合,传统的测距方式已经无法满足人们的需求,而超声波测距由于其非接触和实时反馈的特点在生活中得到广泛应用。 本系统硬件部分由电源模块、控制模块、显示模块、报警模块、

    2024年02月04日
    浏览(24)
  • stm32之14.超声波测距代码

           -------------------- 源码  

    2024年02月11日
    浏览(24)
  • STM32:两种方式实现超声波测距

    超声波模块HC-SR04的工作原理很简单,有很多办法可以完成超声波测距,这里简单介绍两种。 配置定时器的中断并声明一个Time的变量,在中断中先判断标志位,然后检查echo端口是否为高电平,如果是,Time++,然后变量time乘以定时时间就能得到echo端口高电平持续的时间,经过

    2024年04月16日
    浏览(13)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包