一、测量原理

1.核心:使用定时器输入捕获函数来计算高低电平的差值,而后计算

2.利用状态标志位,来指示函数的进程

3.利用寄存器的变化值来计算

具体:当你设置的捕获开始的时候,cpu会将计数寄存器的值复制到捕获比较寄存器中并开始计数,当再次捕捉到电平变化时,这是计数寄存器中的值减去刚才复制的值就是这段电平的持续时间,你可以设置上升沿捕获、下降沿捕获、或者上升沿下降沿都捕获,由此计算超声波高电平时间。

4.cubemx的配置

具体看:(36条消息) 嵌入式创客工坊的博客_CSDN博客-STM32(HAL库)外设实战,AD20应用技巧,未分类内容领域博主

5.getdata函数()可获取一个数组的值

后续:可加卡尔曼滤波函数来消除测量误差

6.附加一点源程序

 while (1){SR04_GetData(  );HAL_Delay(200);KalmanFilter(&kfp,distant);printf("\r\n-¼ì²â¾àÀëΪ-%.2f-cm-\r\n",distant);HAL_Delay(200);distant1=((int)(distant*100)%100)/10;distant2=((int)(distant*100)%100)%10;/* USER CODE END WHILE *//* USER CODE BEGIN 3 */OLED_ShowNum(0,16,distant,2,16);
OLED_ShowNum(19,16,distant1,1,16);
OLED_ShowNum(27,16,distant2,1,16);
OLED_Refresh(); }

在此函数中,我解决了0.96oled怎么输出变量及小数点。

哦对,我在这个过程中也学会了使用串口。重定义串口等

STM32cubemx——超声波测距相关推荐

  1. 利用STM32CubeMX配置基于STMF32F407的FREERTOS操作系统控制直流电机速度和超声波测距实验

    前两周做基于STM32F407芯片的嵌入式系统设计的实验,主要完成利用超声波测距(电脑上用串口显示超声波所测距离,障碍物近于20cm时,使LED灯闪烁,并且可以通过串口更改报警距离)和利用编码器读取电 ...

  2. STM32单片机基于HAL库开发HC-SR04 超声波测距模块(终极版)

    参考: 某宝HC-SR04 超声波测距模块商品详情页 STM32L051C8T6 HAL库 输入捕获进行超声波测距 案例 STM32CubeMX学习笔记3--TIM2输入捕获(SR-04测距) cub ...

  3. 基于STM32F103C8T6(HAL库)的HC-SR501红外人体传感及HC-SR04超声波测距

    系列文章目录 一.基于STM32F103C8T6最小系统板和STM32CubeMX实现LED灯循环闪烁 二.基于STM32F103C8T6和STM32CubeMX实现UART串口通信数据收发 三.实战 ...

  4. 【STM32】标准库与HAL库对照学习教程外设篇--超声波测距传感器

    [STM32]标准库与HAL库对照学习教程外设篇--超声波测距传感器 一.前言 二.准备工作 三.超声波测距传感器 1.原理说明 2.使用说明 四.标准库使用传感器 1.实验程序 2.实验效果 五.H ...

  5. 经验分享帖 基于STM32的超声波测距HC-SR04(附程序)

    CSDN上其实有很多超声波测距的博客,但我还是想写一篇,主要是附上可用的程序,伸手党最爱.其实我也是个伸手党,不过还是希望大家能自己动手自己多练自己能实现. 同时写下我的心得与看法: 1,程序是用ST ...

  6. 超声波测距测速升压可调中周倒车雷达变频器传感器1:10

    简 介: 通过对于是用于超声波测速变压器的基本分析,为后面构成150kHz 放大节能信标组的感应信号打下基础. 关键词: 中周,电压器,超声波 ▌01 中周变压器   购买到这个周中变压器主要是为了构 ...

  7. 【 FPGA 】超声波测距小实验(一)

    超声波测距原理: 超声波测距原理是在超声波发射装置发出超声波,它的根据是接收器接到超声波时的时间差,与雷达测距原理相似. 超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播 ...

  8. 51单片机c语言测距,求助 关于C51单片机超声波测距 C语言程序设计 高手帮帮忙...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 C51编程:超声波测距程序(附图) [请帮助] 2006-9-30 18:44:03 #include #define k1 P3_4 #define c ...

  9. Arduino的光敏传感器和超声波测距传感器测试代码

    光敏传感器测试代码 使用的是一个未知名4pin模块, 4pin依次为Vcc, Gnd, DO, AO, 板载一个可调电阻以及一个LED, 调节电阻大小, 可以控制LED亮灭和DO输出变化对光亮的灵敏度 ...

最新文章

  1. Java 多线程同步和异步详解
  2. VS 断点无法调试学习总结
  3. Python自然语言处理工具包推荐
  4. 实用windows short cut
  5. 利用opencv读取图片将其作为opengl的纹理图片的实现方法
  6. 子窗口_不同线程下主窗口与子窗口的信息交互(一)
  7. 快速了解c#中的索引器
  8. LeetCode 822. 翻转卡片游戏(哈希)
  9. JAVA入门级教学之(第一章总结)
  10. 【华为云技术分享】大数据容器化,头部玩家尝到了甜头
  11. 使用fiddler4进行微信小程序抓包
  12. 数模比赛经验分享(美赛分享)
  13. robocode_Robocode大师的提示,技巧和建议的集合
  14. java银行叫号_银行排队叫号系统
  15. PySide2将控制台内容打印到textEdit控件
  16. 【C++】优先级队列priority_queue模拟实现仿函数
  17. HTML5-俄罗斯方块
  18. 平生事,此时凝睇,谁会凭栏意!(4)
  19. Poemscape|Beta阶段事后诸葛亮
  20. 分辨率PPI(Pixel Per Inch)与DPI(Dot Per Inch)

热门文章

  1. 课程理论知识、教学实施
  2. 矩阵的Kronecker积、Khatri-Rao积、Hadamard积
  3. React中文文档之Composition vs Inheritance
  4. DownUnderCTF 2021 osint 赛后复现
  5. postman如何设置字体大小
  6. 豆瓣评分9.6,推荐一本人工智能入门书籍《21天学通Python》
  7. 计算机操作系统——银行家算法
  8. excel排名_表格技巧—如何在Excel中快速计算排名
  9. 电脑自动开机是什么原因
  10. 计算机一直重启故障原因可能是,电脑一直自己重启的原因与修复方法大全