设为首页
收藏本站
找回密码
开启辅助访问
登录
注册
只需一步,快速开始
首页
BBS
在线充值
搜索
工控币获得方法
联系方式
搜索
搜索
本版
帖子
用户
工控论坛
»
首页
›
电子技术
›
STM32/8
›
超声波模块程序 STM32F103ZET6 附件内有完整源码和视频 ...
返回列表
发新帖
超声波模块程序 STM32F103ZET6 附件内有完整源码和视频
[复制链接]
1
|
0
|
2020-6-5 10:20:20
|
显示全部楼层
|
阅读模式
完整源码和测试视频
STM32F103ZET6.7z
(3.1 MB, 售价: 1 工控币)
2020-6-5 10:20 上传
点击文件名下载附件
部分代码:
include "wave.h"
#include "sys.h"
#include "delay.h"
#include "usart.h"
#define Trig GPIO_Pin_4
#define Echo GPIO_Pin_6
float Distance;
void Wave_SRD_Init(void)
{
GPIO_InitTypeDef GPIO_InitSture;
EXTI_InitTypeDef EXTI_InitSture;
NVIC_InitTypeDef NVIC_InitSture;
//如果外部中断的话则一定使能AFIO复用功能
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOE,ENABLE);
//配置IO端口
GPIO_InitSture.GPIO_Mode=GPIO_Mode_Out_PP; //推挽输出模式
GPIO_InitSture.GPIO_Pin=Trig; //将PE4于Trig相连
GPIO_InitSture.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOE,&GPIO_InitSture);
GPIO_InitSture.GPIO_Mode=GPIO_Mode_IPD; //拉输入模式
GPIO_InitSture.GPIO_Pin=Echo; //将PE6于Echo相连
GPIO_InitSture.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOE,&GPIO_InitSture);
//中断和6端口映射一起
GPIO_EXTILineConfig(GPIO_PortSourceGPIOE,GPIO_PinSource6);
//外部中断配置
EXTI_InitSture.EXTI_Line=EXTI_Line6;
EXTI_InitSture.EXTI_LineCmd=ENABLE;
EXTI_InitSture.EXTI_Mode=EXTI_Mode_Interrupt;
EXTI_InitSture.EXTI_Trigger=EXTI_Trigger_Rising;
EXTI_Init(&EXTI_InitSture);
//中断优先级管理
NVIC_InitSture.NVIC_IRQChannel=EXTI9_5_IRQn;
NVIC_InitSture.NVIC_IRQChannelCmd=ENABLE;
NVIC_InitSture.NVIC_IRQChannelPreemptionPriority=2;
NVIC_InitSture.NVIC_IRQChannelSubPriority=2;
NVIC_Init(&NVIC_InitSture);
}
void EXTI9_5_IRQHandler(void)
{
delay_us(10);
if(EXTI_GetITStatus(EXTI_Line6)!=RESET)
{
TIM_SetCounter(TIM3,0);
TIM_Cmd(TIM3,ENABLE);
while(GPIO_ReadInputDataBit(GPIOE,Echo)); //等待低电平
TIM_Cmd(TIM3,DISABLE);
Distance=TIM_GetCounter(TIM3)*340/200.0;
if(Distance>0)
{
printf("Distance:%f cm\r\n",Distance);
}
EXTI_ClearITPendingBit(EXTI_Line6);
}
}
void Wave_SRD_Strat(void)
{
GPIO_SetBits(GPIOE,Trig); //将Trig设置为高电平
delay_us(20); //持续大于10us触发,触发超声波模块工作
GPIO_ResetBits(GPIOE,Trig);
}
复制代码
超声波
,
stm32
相关帖子
•
STM32+LabVIEW的USB数据采集与显示源程序
•
STM32示波器程序ILI9341_IO模拟源程序+Proteus仿真
•
STM32F407 FLAC软解压 源程序
•
用PROTEUS8.9仿真实现STM32 ADC一路连续转换,值显示在LCD12864上
•
Proteus实现stm32单片机的闪烁灯实验程序
•
STM32控制4个LED灯循环点亮源程序和Proteus仿真
•
STM32音频产生器Proteus仿真程序
•
用STM32F103C8T6去读取JY901的串口数据 源程序
•
基于STM32和ucos系统的室内环境检测源程序
•
STM32多个串口的应用含有人4G模块板载设计含sbus总线电路
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖后跳转到最后一页
路漫漫
194
主题
199
帖子
74
积分
初级会员
初级会员, 积分 74, 距离下一级还需 426 积分
初级会员, 积分 74, 距离下一级还需 426 积分
工控币
74
加好友
发消息
回复楼主
返回列表
电子技术综合讨论
单片机嵌入式
EDA设计仿真
STM32/8
51单片机
上位机开发及系统管理
Labview
Multisim仿真
图文推荐
西门子1200plc与RKC温控模组com-ml profinet通讯gsd 程序 文档
2021-02-24
PLC-LAB-非标自动化2D建模仿真软件 中文说明和操作演示视频
2021-02-15
组态王机械手加反应罐监控系统 工程源文件与设计文档
2021-02-04
太阳能翻板追日控制 采用s7-200plc与光照度模块modbus通信
2021-02-01
基于51单片机数字电压表 程序 原理图 pcb 仿真文件 论文
2021-01-26
热门排行
1
WINCC运行时动态锁定/解锁相应系统组合键
2
普洛菲斯触摸屏软件 GP-Pro EX 4.09
3
最全EPLAN部件库,淘宝购买的
4
彻底搞定C指针(完全版·修订增补版)
5
西门子SINUMERIK 828D 840D sl数控 培训教
6
激光焊接机电控系统 台达PLC程序 威纶触摸
7
GE iFIX 6.5 English安装软件
8
音频功率放大器Multisim仿真电路设计
9
数字电路拔河机Multisim仿真设计
10
函数信号发生器Multisim仿真 可调频 幅值(