基于stm32单片机srf04超声波传感器测距Proteus仿真
资料编号:185 下面是仿真功能视频演示:
185-基于stm32单片机srf04超声波传感器测距Proteus仿真
功能讲解:
采用stm32单片机作为控制CPU,LCD1602显示超声波测距的距离值,SRF04超声波传感器来进行测距,超声波测距原理如下:超声波测距原理是在超声波发射装置发出超声波,它的根据是接收器接到超声波时的时间差,与雷达测距原理相似。超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时,通过时间可以算出和物体之间的距离。
下面是该程序的展示:
void TIM3_Init(u16 arr,u16 psc)
{
TIM3_Handler.Instance=TIM3; //通用定时器3
TIM3_Handler.Init.Prescaler=psc; //分频系数
TIM3_Handler.Init.CounterMode=TIM_COUNTERMODE_UP; //向上计数器
TIM3_Handler.Init.Period=arr; //自动装载值
TIM3_Handler.Init.ClockDivision=TIM_CLOCKDIVISION_DIV1;//时钟分频因子
HAL_TIM_Base_Init(&TIM3_Handler);
HAL_TIM_Base_Start_IT(&TIM3_Handler); //使能定时器3和定时器3更新中断:TIM_IT_UPDATE
HAL_TIM_Base_MspInit(&TIM3_Handler);
}
//定时器底册驱动,开启时钟,设置中断优先级
//此函数会被HAL_TIM_Base_Init()函数调用
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef *htim)
{
if(htim->Instance==TIM3)
{
__HAL_RCC_TIM1_CLK_ENABLE(); //使能TIM3时钟
__HAL_RCC_TIM3_CLK_ENABLE(); //使能TIM3时钟
HAL_NVIC_SetPriority(TIM3_IRQn,1,3); //设置中断优先级,抢占优先级1,子优先级3
HAL_NVIC_EnableIRQ(TIM3_IRQn); //开启ITM3中断
}
}
//定时器3中断服务函数
void TIM3_IRQHandler(void)
{
msHcCount++;
HAL_TIM_IRQHandler(&TIM3_Handler);
}
//回调函数,定时器中断服务函数调用
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
if(htim==(&TIM3_Handler))
{
}
}
void SRF04_init(void)
{
GPIO_InitTypeDef GPIO_Initure;
__HAL_RCC_GPIOB_CLK_ENABLE();
GPIO_Initure.Pin=GPIO_PIN_5;
GPIO_Initure.Mode=GPIO_MODE_OUTPUT_PP;
GPIO_Initure.Pull=GPIO_PULLUP;
GPIO_Initure.Speed=GPIO_SPEED_HIGH;
HAL_GPIO_Init(GPIOB,&GPIO_Initure);
GPIO_Initure.Pin=GPIO_PIN_6;
GPIO_Initure.Mode=GPIO_MODE_INPUT;
GPIO_Initure.Pull=GPIO_NOPULL;
GPIO_Initure.Speed=GPIO_SPEED_HIGH;
HAL_GPIO_Init(GPIOB,&GPIO_Initure);
}
void Delay_Ms(uint16_t time) //延时函数
{
uint16_t i,j;
for(i=0;i<time;i++)
for(j=0;j<10260;j++);
}
下面是该资料的分享下载链接:
https://pan.baidu.com/s/1CTqld-zJR80hvn0Bj3u0-w?pwd=3rgz
基于stm32单片机srf04超声波传感器测距Proteus仿真相关推荐
- 基于stm32单片机BMP180气压计海拔高度温度测量Proteus仿真
资料编号:149 下面是相关功能视频演示: 149-基于stm32单片机BMP180气压计海拔高度温度测量Proteus仿真(源码+仿真+全套资料) 本设计: 基于STM32的BMP180气压传感 ...
- 基于stm32单片机智能温控风扇控制系统Proteus仿真
资料编号:103 下面是相关功能视频演示: 103-基于stm32单片机智能温控风扇控制系统Proteus仿真(源码+仿真+全套资料) 功能介绍:采用stm32单片机.ds18b20温度传感器采集温 ...
- 基于stm32单片机有害气体监测检测Proteus仿真(仿真+源码+全套资料)
资料编号:097 检测当前的有害气体浓度,LCD1602显示,并且可以自动打开关闭风扇,也可以通过手动按键打开关闭风扇通风,全套资料齐全,具体功能请看下面演示视频 97-基于stm32单片机有害气体监 ...
- 基于stm32单片机有害气体监测检测Proteus仿真
资料编号:097 下面是相关功能视频演示: 97-基于stm32单片机有害气体监测检测Proteus仿真(仿真+源码+全套资料) 功能介绍:检测当前的有害气体浓度,LCD1602显示,并且可以自动 ...
- 基于stm32单片机的甲醛气体检测proteus仿真(源码+仿真+参考论文)
资料编号:056 检测当前的甲醛气体浓度,LCD1602显示,并且可以自动打开关闭风扇,也可以通过手动按键打开关闭风扇通风,全套资料齐全,具体功能请看下方演示视频 56-基于stm32单片机的甲醛气体 ...
- 基于STM32单片机的智能加湿器(Proteus仿真+程序)
标号:11 基于STM32单片机的智能加湿器 功能描述: 11.基于STM32单片机的智能加湿器 本设计由STM32F103单片机最小系统+DHT11温湿度传感器+1602液晶显示模块+声光报警模块+ ...
- 基于STM32单片机的跑步机心率检测proteus仿真原理图PCB
功能: 0.本系统采用STM32F103RCT6作为单片机 1.系统采用LCD1602液晶实时显示转速 心率以及跑步时间等情况 2.系统设计有三个功能按键可以控制电机的启停以及复位跑步时间 3.心率检 ...
- 【030】基于51单片机的超声波液位测距报警系统(带温度显示)Proteus仿真设计
一.压缩包资料内容 (1).基于51单片机的超声波液位测距报警(带温度显示)系统proteus仿真设计一份: (2).基于51单片机的超声波液位测距报警(带温度显示)系统proteus仿真设计keli ...
- 【011】基于51单片机的低频信号发生proteus仿真与实物设计
一.资料内容 (1).基于51单片机的低频信号发生proteus仿真设计一份: (2).基于51单片机的低频信号发生proteus仿真设计keli源代码一份: (3).基于51单片机的低频信号发生A ...
- 基于51单片机的LCD1602电子钟闹钟proteus仿真设计
本设计是基于51单片机的LCD1602电子钟闹钟proteus仿真设计 源码+仿真+原理图+器件清单 仿真软件版本:proteus 7.8 程序编译器:keil 4/keil 5 编程语言:C语言 编 ...
最新文章
- CTreeCtrl标签的编辑
- ThreadPoolExecutor的七个参数详解
- Java读写二进制文件
- JAVA并发七(多线程环境中安全使用集合API)
- 使用VirtualEnv在Mac安装TensorFlow
- 软件公司产品营销大数据分析(上)
- stm32f407 串口干扰采集_无线采集又添新伙伴,蓝牙无线采集来助力
- 2020非常全的接口测试面试题及参考答案-软件测试工程师没有碰到算我输!
- CodeForces比赛规则
- 为什么中国人少有人得到诺贝尔奖呢?
- 解读提升百度权重-刷百度指数的方法
- 计算机储位分配,仓库储位分配的基本思路与原则
- 平面设计的福音,速看!
- nvcc -V和nvidia-smi中的cuda版本不同
- .NetCore——Autofac使用
- ubuntu 终端显示英文,桌面环境显示中文方法
- Android TV笔记1
- 微信订餐系统php,微信网上订餐系统多用户版 v0.52
- Python淘宝秒杀脚本
- 市场调研报告-全球与中国商用压缩机市场现状及未来发展趋势