STM32 CubeIDE 超声波测距

将超声波测距模块与stm32连接配置其接口(PA10---PA11)

PA10是TIM1的通道3对应的GPIO口

在TIM1将时钟源设置为内部时钟源,将通道3设置为输入捕获直接模式(Input Capture direct mode)将通道4设置为输入捕获间接模式(Input Caputre indirect mode)。将定时器的预分频器设置为72分频使计数器的频率为1MHz。在输入捕获通道3默认保持上升沿检测,在输入捕获通道4修改为下降沿检测。

在NVIC设置开启TIM1捕获/比较中断

在时钟设置将主频改为72MHz

因为需要使用OLED屏幕显示测试距离所以需要打开I2C1

并且勾选为每个外设单独生成单独的.c/.h文件

将oled.c/.h font.c/.h 文件放入本次工程文件夹中

在输入捕获回调函数首先 if 一下进入中断的是不是定时器1,在判断一下触发回调函数的是不是通道4

成立则通过通道3捕获回波的上升沿时间与通道4捕获回声的下降沿时间计算距离并保存到distance中。

在main函数中初始化OLED函数 ,启动定时器计数,启动输入捕获通道3通道4函数

在while函数中首先触发超声波发射,然后重置定时器计数保证每次测距从0开始

最后在OLED显示频中将输入捕获回调函数计算的距离显示在OLED屏幕中。

相关推荐
youcans_3 小时前
【STM32C5教程】(3)GPIO 按键输入实验
stm32·单片机·嵌入式硬件
俊基科技4 小时前
回音消不掉、底噪压不住、主板还对不上口?——A-59P 多功能语音处理模组技术解析
嵌入式硬件·回音消除·ai降噪模块
北京盛世宏博5 小时前
通信异常深度排查:以太网温湿度设备 TCP 粘包、UDP 丢包根治方案
单片机·网络协议·tcp/ip·udp·以太网·传感器·温湿度
蓝天居士6 小时前
PY32F系列MCU在串口接收时跑飞的根因分析(2)
单片机·嵌入式硬件
wuyk5559 小时前
嵌入式驱动开发:量产级工程化实战(第9篇)——低功耗下的通信可靠性
c语言·驱动开发·stm32·单片机·嵌入式硬件
创界工坊工作室9 小时前
24-基于单片机的仓鼠养殖环境监控系统设计
stm32·单片机·嵌入式硬件·proteus
碧海银沙音频科技研究院9 小时前
基于炬芯ATS录音卡BLE控制协议
人工智能·嵌入式硬件·算法·语音识别
comyccccc10 小时前
PCB走线设计秘籍:从载流到3D预览全解析学习笔记
单片机·嵌入式硬件
俊基科技10 小时前
A-59 工业级 AI 语音处理模组:100 dB 消回音 + 神经网络降噪的工程实践
嵌入式硬件·神经网络·硬件开发·语音模块·回音消除·拾音降噪
endeavor1211 小时前
can总线(五)
c语言·stm32·单片机·can