首页 > 编程知识 正文

超声波原理图详细解析,常见的三种滤波器

时间:2023-05-04 18:27:14 阅读:40858 作者:4454

% E8 % B6 % 85 % e9 % 9f % B3 % E6 % B3 % a2 % E3 % 81 % af % e9 % 9a % E5 % AE % B3 % 89 % a9 % E3 % 82 % e9 % 9f % E3 % 82 % 8a % E3 % 81 % 99 % E3 % 82 % 8b % E3 % 81 % AE % E3 % 81 % ab % E4 % BD % E3 % 82 % 8f % E3 % 82 % 8c % EC 3 % B3 % E3 % 82 % b5 % E3 % 83 % BC % E3 % 81 % a7 % E3 % 81 % 99 % 0a % E6 % 87 % E7 % ab % A0 % E7 % 9b % AE % e9 % 8c % E5 % BC % 8f % E3 % 83 % 86 % E3 % 82 % B9 % E3 % 83 % E3 % 83 % BC % E3 % 83 % 895115 STM 32 % 0a数据共享E5 % a4 % 96 % E8 % a6 % B3 % 0a HC-sr04 % E8 % B6 % 85 % e9 % 9f % B3 % E6 % B3 % a2 % E6 % b8 % AC % E8 % B7 % 9d % E3 % 83 e9 % 9d % 9e % E6 % 8e % a5 % E8 % a7 % E6 % BC % 8f % E8 % B7 % 9d % e9 % 9b % a2 % E6 % a4 % E5 % 87 % ba % E6 % a6 d % E7 % B2 % be % E5 % ba % a6 % E3 % 81 % af3mm % E3 % 81 % be % E3 % 81 % a7 % e9 % E3 % 82 % 81 % E3 % 82 % 8b % % E3 % 82 % b8 % E3 % 83 % a5 % E3 % 83 % BC % E3 % 83 % ab % E3 % 81 % ab % E3 % 81 % af % E8 % B6 % 85 % e9 % B3 % E6 % A8 % E5 % 88 % B6 % E5 % be % a1 % E5 % 9b % 9e % E8 % B7 % af % E3 % 81 % E5 % 90 % ab % E3 % 81 % be % E3 % 82 % 8c % EC 2 % ab % E3 % 83 % BC % E3 % 83 % 88 % E3 % 81 % AE % E6 % b8 % AC % E8 % B7 % 9d % E3 % 84 % E3 % 82 % B9 % E3 % 83 % 86 % 81 % 8f % E3 % 81 % a4 % E3 % 81 % 81 % E3 % 83 % 97 % E3 % 83 % ad % E3 % 82 % b8 % E3 % 82 % a7 % E3 % 82 % E3 % 81 % 84 % E3 % 81 % be % E3 % 81 % 99 % E3 % 80 % 82 % 20 % E3 % 82 % B9 % E3 % 83 % E3 % BC % E3 % 83 % 88 % E8 1 % AE % e9 % 9a % 9c % E5 % AE % B3 % E7 % 89 % a9 % E3 % 82 % E3 % 81 % E3 % 81 % E3 % 81 % ab % E7 % 99 % ba % 80 % 81 % E3 % 82 % B9 % E3 % 83 % 9e % E3 % 83 % 83 % 88 % E3 % 82 % ab % E3 % 83 % BC % E3 % 83 % 88 % E3 % 82 % E5 % AE % B3 % E7 % 89 % a9 % E3 % 82 % 92 % e9 % 81 % BF % E3 % 81 % E3 % 82 % 81 % E3 % 93 % E3 % 81 % A8 % E3 % 83 81 VCC % E3 % 80 % 81 gnd % E3 % 80 % 81 trig % E3 % 80 % 81 echo % E3 % 81 % ae4 % 81 % E3 % 81 % AE % E7 % ab % af % ee 3 % 81 % af5v % e9 % 9b % bb % E6 % ba % 90 % E3 % 81 % a7 % E3 % 81 % 99 % E3 % 82 % 20 % E3 % 81 % 93 % E3 % 82 % 8c % 83 % ad % E3 % 83 % BC % E3 % 83 % a9gnd % E3 % 81 % 8c % E6 % 8e % a5 % E5 % B0 % E3 % 83 % E3 % B3 % E3 % 81 6 % E3 % 81 % 84 % E3 % 82 % 8b % E3 % 81 % af % E3 % 81 % E3 % 81 % a7 % E3 % 81 % 99 % E3 % 80 % 82 % 20 % E3 % 83 % 9e % 83 % a9 % E3 % 81 % ab % E6 % 8e % a5 % E5 % 9c % B0 % E3 % 81 % E3 % 82 % E3 % 80 % 82 % 20 trig % E3 % 81 % af high ad % 90 % E3 % 81 % ab % E6 % 8e % a5 % E7 % B6 % 9a % E3 % 81 % 99 % E3 % 82 % 8b % E5 % E8 % a6 % 81 % E3 % 81 % 81 9b % a3 % E3 % 81 % 97 % E3 % 81 % 84 % E3 % 81 % a7 % E3 % 81 % 99 % E3 % 80 % 82 % 20hc-sr04 % E3 % 81 % 8c5v % E3 % 82 % 4 % E3 % 82 % af % E3 % 83 % ad % E3 % 82 % B3 % E3 % 83 % 83 % E3 % 83 % ad % E3 % 83 % BC % E3 % 83 % a9 % E3 9 % 9b % bb % E5 % 9c % a7 % E5 % a4 % 89 % E5 % 8c % 96 % ef % BC % 89 % E3 % 81 % E5 % a4 % 9a % E3 % 81 % 8f % E7 % A0 % E3 % 81 % 82 % E3 % 82 % 8a % E3 % 81 % be % E3 % 81 % 99 % E3 % 80 % 20 % e9 % 8d % E5 % 9c % a7 % E3 % 81 % AE % 8a % b5 % E6 % 8a % 97 % E5 % 99 % A8 % E3 % 81 % E3 % 81 % E3 % 81 % af % E5 % 86 % E5 % 9c % a7 % E5 % 9b % 99 3 % E3 % 82 % 8c % E3 % 81 % af % E3 % 80 % 81 % E4 % BD % E7 % 94 % A8 % E3 % 81 % E3 % 81 % a6 % E3 % 81 % 84 % E3 % B3 % E3 % 83 % B3 % E3 % 83 % E3 % 83 % ad % E3 % 83 % BC % E3 % 83 % a9 % E3 % 81 % ab % E3 % 82 % 88 % E3 % 81 % a3 % % E3 % 81 % AE % E6 % 9c % 80 % E5 % a4 % a7 % e9 % 9b % bb % E5 % 9c % a7 % E3 % 82 % E8 % a6 % E3 % 81 % a4 % E3 % 8b % E3 % 81 % 93 % E3 % 81 % A8 % E3 % 82 % 92 % E7 % a2 % ba % E8 % aa % 8d % E3 % 81 % E3 % 82 % 8b % E5 % BF % 85 % ed % E7 % ab % af % E5 % ad % 90 % E3 % 81 % ab % e9 % 99 % E3 % 82 % 8b % ef % BC % 89 % E3 % 80 % 81 % E3 % 81 % a4 % E3 % 83 % afft % E7 % ab % af % E5 % ad % 90 % E3 % 81 % ab % E3 % 81 % E3 % 81 % 8b % E6 % E5 % E7 % B6 % 9a % E3 % 81 % a7 % % 9f % E7 % 90 % 86t rig % E7 % ab % af % E5 % ad % 90 % E3 % 81 % af % E8 % B6 % 85 % e9 % B3 % E6 % B3 % a2 % E3 % 83 %

&= 0x7F; //不倍速// SCON = 0x50; //工作方式1,8位异步//AUXR &= 0xBF; //定时器1时钟为Fosc/12,即12T// AUXR &= 0xFE; //串口1选择定时器1为波特率发生器// TMOD &= 0x0F; // TMOD|=0X21;//定时器1工作方式2(8位定时器),定时器0工作方式1(16位定时器)////TH0=0;//TL0=0;//定时器0初值赋值////TH1=256-(11059200/12/32)/Baud;//TL1=TH1;//定时器1初值赋值////ET0=1;//定时中断0打开//ET1=0;//定时中断1禁止//TR0=1;//定时器0打开//TR1=1;//定时器1打开//TI=1;//51单片机配置程序PCON&=0X7F;//不倍速SCON=0X50;//工作方式1,8位异步TMOD=0X21;//定时器1工作方式2(8位定时器),定时器0工作方式1(16位定时器)TH0=0;TL0=0;//定时器0初值赋值TH1=256-(11059200/12/32)/Baud;TL1=TH1;//定时器1初值赋值ET0=1;//定时中断0打开ET1=0;//定时中断1禁止TR0=1;//定时器0关闭TR1=1;//定时器1打开TI=1;EA=1;//打开总中断}void timer0()interrupt 1{flag=1;} stm32

hcsr04.c

#include "hcsr04.h"#include "delay.h"u16 overcount=0;//溢出计数//中断配置void NVIC_Config(void){NVIC_InitTypeDef NVIC_InitStruct;//设置中断优先级NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//中断初始化NVIC_InitStruct.NVIC_IRQChannel=wrddg2_IRQn;NVIC_InitStruct.NVIC_IRQChannelCmd=ENABLE;NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority=0;NVIC_InitStruct.NVIC_IRQChannelSubPriority=0;NVIC_Init(&NVIC_InitStruct);}//超声波初始化void HCSR04_Init(void){GPIO_InitTypeDef GPIO_InitStruct;wrddg_TimeBaseInitTypeDef wrddg_TimeBaseInitStruct;//时钟使能RCC_APB2PeriphClockCmd(HCSR04,ENABLE);RCC_APB1PeriphClockCmd(RCC_APB1Periph_wrddg2,ENABLE);//trig脚-推挽输出GPIO_InitStruct.GPIO_Mode=GPIO_Mode_Out_PP;GPIO_InitStruct.GPIO_Pin=HCSR04_TRIG;GPIO_InitStruct.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(HCSR04_PORT,&GPIO_InitStruct);GPIO_ResetBits(HCSR04_PORT,HCSR04_TRIG);//echo脚-浮空输入GPIO_InitStruct.GPIO_Mode=GPIO_Mode_IN_FLOATING;GPIO_InitStruct.GPIO_Pin=HCSR04_ECHO;GPIO_Init(HCSR04_PORT,&GPIO_InitStruct);GPIO_ResetBits(HCSR04_PORT,HCSR04_ECHO);//定时器wrddg2初始化wrddg_DeInit(wrddg2);wrddg_TimeBaseInitStruct.wrddg_Period=1000-1;wrddg_TimeBaseInitStruct.wrddg_Prescaler=72-1;wrddg_TimeBaseInitStruct.wrddg_ClockDivision=wrddg_CKD_DIV1;wrddg_TimeBaseInitStruct.wrddg_CounterMode=wrddg_CounterMode_Up;wrddg_TimeBaseInit(wrddg2,&wrddg_TimeBaseInitStruct);//定时器中断配置_更新中断wrddg_ITConfig(wrddg2,wrddg_IT_Update,ENABLE);//中断配置NVIC_Config();//关闭定时器使能wrddg_Cmd(wrddg2,DISABLE);}//打开定时器void OpenTimeForHc(void){//计数器清空wrddg_SetCounter(wrddg2,0);overcount=0;wrddg_Cmd(wrddg2,ENABLE);}//关闭定时器void CloseTimeForHc(void){wrddg_Cmd(wrddg2,DISABLE);}//获取定时器时间u32 GetEchoTimer(void){u32 t=0;t=overcount*1000;t+=wrddg_GetCounter(wrddg2);//计数器清0wrddg2->CNT=0;delay_ms(50);return t;}//超声波测距float Hcsr04GetLength(void){u32 t=0;int i=0;float lengthTemp=0;float sum=0;while(i!=5){TRIG_Send=1;delay_ms(20);TRIG_Send=0;while(ECHO_Reci==0);OpenTimeForHc();i=i+1;while(ECHO_Reci==1);CloseTimeForHc();t=GetEchoTimer();lengthTemp=((float)t/58.0);sum+=lengthTemp;}lengthTemp=sum/5;return lengthTemp;}//定时器2中断void wrddg2_IRQHandler(void){if(wrddg_GetITStatus(wrddg2,wrddg_IT_Update)!=RESET){//清除中断标志位wrddg_ClearITPendingBit(wrddg2,wrddg_IT_Update);overcount++;}}

hcsr04.h

#ifndef __HCSR04_H#define __HCSR04_H #include "sys.h"#define HCSR04_PORT GPIOB #define HCSR04 RCC_APB2Periph_GPIOB#define HCSR04_TRIG GPIO_Pin_5#define HCSR04_ECHO GPIO_Pin_6#define TRIG_Send PBout(5)#define ECHO_Reci PBin(6)void NVIC_Config(void);//中断配置void HCSR04_Init(void);//超声波初始化float Hcsr04GetLength(void);//超声波测距#endif

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。