之前写过一篇HC04的使用文章,当时是使用stm32来实现的,原文链接. 后来又多次使用51来驱动这个模块,有时候有测距需要,使用了几次,总是感觉我上次那个程序不是很好, 所以这次对它进行了改进.虽然上一次也使用了多次测量取平均值,但是内有排除中间会有错误数据的情况. 之前的程序是这样的(测距部分) : u32 t = ; ; ; ; ) { TRIG_Send = ; //发送口高电平输出 Delay_Us(); TRIG_Send = ; ); //等待接收口高电平输出 OpenTimerF…
因为作业要求使用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,…
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)…
转载请注明:@小五义 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超声波测距模块可提供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_…
起因:项目中将公用的代码抽离到单独一个项目 cms-common.jar (注:公用的代码不只是工具类代码,包含service和dao等) 构建:每次构建项目 cms.war 的时候,需要引入cms-common.jar,还需要拷贝cms-common下的Mapper.xml文件 疑惑点:每次修改cms-common下mapper文件,都需要重新clean,删除old的mapper文件,给开发带来不便 从模块上区分,假如dao单独成为一个模块 cms-common-dao.jar 我们要引入da…
12月14日清单 1 readline模块 var readline = require("readline"); // input 是必须的,output是可选的 rl = readline.createInterface({input:process.stdin,output:process.stdout}); rl.question("question?",(answer)=>{ 处理 rl.close()}) rl.on("line"…
还好,这个模块有现成的库能够用: https://github.com/bosgood/arduino-playground/tree/master/lib/HCSR04Ultrasonic 下面仅仅给出測试代码: 当距离小于20CM时蜂鸣器发出警报 #include "Ultrasonic.h" #define TRIGGER_PIN 12 #define ECHO_PIN 13 #define BUF_PIN 7 Ultrasonic ultrasonic(TRIGGER_PIN,…