因为作业要求使用c语言代码,这里先附上一段摘自网上的代码 感谢KalaerSun的c语言代码,摘自https://blog.csdn.net/qq_25247589/article/details/62892140 #include <wiringPi.h> #include <stdio.h> #include <sys/time.h> #define Trig 4 #define Echo 5 void ultraInit(void) { pinMode(Echo,…
之前写过一篇HC04的使用文章,当时是使用stm32来实现的,原文链接. 后来又多次使用51来驱动这个模块,有时候有测距需要,使用了几次,总是感觉我上次那个程序不是很好, 所以这次对它进行了改进.虽然上一次也使用了多次测量取平均值,但是内有排除中间会有错误数据的情况. 之前的程序是这样的(测距部分) : u32 t = ; ; ; ; ) { TRIG_Send = ; //发送口高电平输出 Delay_Us(); TRIG_Send = ; ); //等待接收口高电平输出 OpenTimerF…
前边我们已经详细的讲解了树莓派控制超声波模块测距(http://www.cnblogs.com/yuemo/p/8888342.html)和超声波控制蜂鸣器模块发声(http://www.cnblogs.com/yuemo/p/8906111.html). 今天我们就来看看怎么把两个模块全都应用起来,做一个防盗装置. 先来看一下各个引脚的连接方式(需要七根母对母的杜邦线): 超声波模块: 1.Vcc:接5V电源(接1号引脚) 2.Trig:输出端口(接16号引脚) 3.Echo:输入端口(接18…
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604   一.实验器材 1.TPYboard V102板  一块 2.电机驱动模块L298N   一个 3.电机 两块 4.小车底盘 5.超声波模块 6.5110屏  一块 二.超声波模块 1.什么是超声波模块 超声波传感器是利用超声波的特性研制而成的传感器, 它是通过传送一个超声波(远高于人的听觉范围)和提供一个对应于爆裂回声返回到传感器所需时间的输出脉冲来工作的.超声波传感器在非…
本实验是基于MSP430利用HC-SR04超声波传感器进行测距,测距范围是3-65cm,讲得到的数据显示在LCD 1602液晶屏上. 模块工作原理如下 (1)采用 IO 触发测距,给至少 10us 的高电平信号; (2)模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回; (3)有信号返回,通过 IO 输出一高电平,高电平持续的时间就是超声波从发射到返回的时间 (4计算测试距离测试距离=(高电平时间*声速(340M/S))/2; 根据工作原理,我们可以选择两种模式驱动 1. 采用中…
HC-SR04 一.主要参数1:使用电压:DC-5V2:静态电流:小于2mA3:电平输出:高5V4:电平输出:底0V5:感应角度:不大于15度6:探测距离:2cm-450cm7:高精度 可达0.2cm二.工作原理1.采用IO口TRIG触发测距,给至少10us的高电平信号来启动模块.2.模块自动发送8个40khz的方波,自动检测是否有信号返回.3.如果有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间.通过公式计算测试距离=(高电平时间*声速(340M/S)…
37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的.鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉. [Arduino]168种传感器模块系列实验(资料+代码+图形+仿真) 实验五十八: HC-SR04超声波测距传感器模块(5针宽电压) 超声波探头是在超声波检测过程中发射和…
首先,先来看一下这个模块的基本功能和原理. HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm:模块包括超声波发射器.接收器与控制电路.像智能小车的测距以及转向,或是一些项目中,常常会用到.智能小车测距可以及时发现前方的障碍物,使智能小车可以及时转向,避开障碍物. 注意是5v输入,但是我用stm32 的3.3v输入也是没有问题的. 二.工作原理 1.给超声波模块接入电源和地.      2.给脉冲触发引脚(trig)输入一个长为20us的高电平方波…
下面是关于stm32驱动超声波模块的一段代码,有需要的朋友可以复制参考,希望对大家能够有所帮助和启发. #define HCSR04_PORT GPIOB #define HCSR04_CLK RCC_APB2Periph_GPIOB #define HCSR04_TRIG GPIO_Pin_8 #define HCSR04_ECHO GPIO_Pin_9 #define TRIG_Send(n) do{ if(n == 0) GPIO_ResetBits(HCSR04_PORT,HCSR04_…
话不多说,先上代码: #include <wiringPi.h> #include <stdio.h> #include <sys/time.h> #define VOICE 0 void ultraInit(void){ pinMode(VOICE,OUTPUT);//我们此处是用的是GPIO.0输入输出端口,所以pin=0 } void doVoice(void){ digitalWrite(VOICE,LOW);//初始化引脚电平值为LOW ;i<=;i++…