传感器
ba_wang_mao
目标:(1)、熟练使用FreeRTOS嵌入式操作系统编写单片机程序。(2)、初步熟悉C#和MySQL编写比较简单可靠的C/S架构的TCP通信程序及B/S架构的WEB SERVER程序。(3)、简单熟悉阿里云物联网开发技术(单片机端SDK开发和上位机端SDK开发)。
展开
-
HCSR04超声波传感器驱动
HC_SR04是一款使用较为广泛的超声波测距模块,模块图如下该模块具有四个引脚,分别为VCC GND TRIG ECHO,其中VCC GND为供电脚TRIG为测距触发引脚,ECHO为测距输入引脚该模块的驱动模式为控制口发一个10US以上的高电平,就可以在接收口等待高电平输出.一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,方可算出距离.如此不断的周期测,就可以达到你移动测量的值了模块工作原理如下(1)采用IO触发测距,给至少...转载 2020-09-08 21:42:17 · 1694 阅读 · 0 评论 -
四旋翼惯导融合之观测传感器滞后问题汇总与巴特沃斯低通滤波器设计(气压计MS5611、GPS模块M8N、超声波、PX4FLOW等)
前文讲到APM的三阶互补方案,之前附的图是从学长博客里面抠的,感觉还不是很详细,于是自己就画了下,顺便重新理一下思路。上图中下标为O的表示原始量(Origion),C表示矫正后的量(Correction),a,v,s这些一目了然,表示加速度、速度、位置,其中带下标c的表示融合后的状态量,即在控制中用作实际反馈的量,读者可以结合上图与上文博客后面所贴的相关代码、注释阅读。链接如下:四旋翼定高篇之惯导加速度+速度+位置三阶互补融合方案上文最后提到由于观测传感器滞后性(主要原因:1、支持的最大转载 2020-12-04 11:42:53 · 1200 阅读 · 0 评论 -
STM32F407单片机移植ADS1115驱动程序
最近一个工程项目需要使用ADS1115采集电压,网上研究了一下,测试成功,期间走了很多弯路,为避免后来的研究者重走我的老路,特分享给大家。注:网上很多ADS1115驱动程序移植到STM32F407单片机上虽然可以采集到电压,但是采集的电压有问题,大部分程序只能采集到高8位,采集不到低8位(低8位始终为0),用万用表添加电压信号,只有当电压变化幅度在0.2V---0.3V以上时,采集的码值才会发生变化。 本程序经过测试,电压只要变化幅度在0.01V,采集的码值都会发生变化,以...原创 2020-11-26 21:50:17 · 5093 阅读 · 13 评论 -
气压计MS5611编程操作流程
文章更新版本 时间 备注 修订人 V0.1 发布于 2019-09-21 11:03:46 初始版本 libo 文章目录 一、开发笔记 二、初始化与工作流程 1. 从PROM读取出厂校准值 2. 启动温度AD转换,读取AD值 3. 启动气压AD转换,读取AD值 4. 计算真实气压和温度值 5. 计算海拔值 ESPlane 项目更名为 ESP-Drone 现已公开代码仓库和文档代码仓库:https..转载 2020-11-26 16:38:26 · 1958 阅读 · 0 评论 -
【原创】ADS1115在STM32下的使用
采用IO模拟I2C读写时序,程序如下图所示#include "stm32f10x_lib.h"#include "ads1115.h"//#include "ap_i2c.h"static void Confige1115 (unsigned char port);static void PointRegister (void);static u16 ReadData (unsigned char chn, unsigned char cnt);unsigned char WriteInt转载 2020-11-25 17:19:09 · 1927 阅读 · 0 评论 -
基于STM32F429的ADS1115驱动程序
1.ADS1115中文资料:https://wenku.baidu.com/view/8bab101feef9aef8941ea76e58fafab069dc44e7.html?rec_flag=default&sxts=15579877809202.IIC协议程序IIC协议是大多数传感的通信协议,每个嵌入式工程师都要有自己的IIC底层协议IIC可细分为7个函数1.开始2.读取3.发送4.结束5.主机检测从机应答6. 主机应答7. 主机不应答/***转载 2020-11-25 16:18:11 · 1162 阅读 · 1 评论 -
STM32+MS5611测气压温度例程详解,测试无误
硬件平台:STM32F10X+MS5611+JLink软件平台:Keil4一、基础知识首先,MS5611是什么?MS5611气压传感器是集合SPI和I²C(高达20MHz)总线接口的高分辨率气压传感器,分辨率可达到10cm。内部有一个高线性度的压力传感器和一个超低功耗的24位AD。MS5611主要用于智能手机、海拔高度测量和导航辅助,做四轴的朋友一般都了解。其次,对于飞行器的姿态控制,我们使用GY-8610DOF的模块,里面带有MS5611+MPU6050+...转载 2020-11-24 14:16:37 · 5418 阅读 · 3 评论 -
STM32F103C8T6读取气压计MS5611,I2C读取模式
笔者最近想用气压计模块来测一下相对高度,使用的元器件如下图所示。所使用的最小系统板 **所使用的气压计模块 其实读取还是蛮简单的,根据核心板引脚图选择I2c接口,然后借鉴正点原子的模拟i2c程序,再根据datesheet里的图写出读气压计温度和大气压的程序,高度可由经验公式直接给出,笔者一开始对这个经验公式是持怀疑态度的,因为空气变化无常,咋可能根据这得出精确的高度,MS5611高度精度是10cm,已经很精确了。不过后来看来公式推导之后,发现还是很有道理了,自己想不通是自己菜,物理学家早就搞定了这些转载 2020-11-24 14:08:03 · 1979 阅读 · 2 评论 -
MS5611气压计 I2C驱动代码 STM32
文章目录前言 通信接口:IIC 一,MS5611的5种命令 RESET : 重启芯片 READ PROM: D1,D2 CONVERSION READ ADC RESULT: 二,实现代码 1 初始化 : 2,读取数据 3,补偿温度数据 前言这篇博客将介绍使用stm32的IIC库函数开发MS5611气压计,获取气压数据和温度数据,并对数据进行补偿。过程将结合芯片手册与代码。手册下载地.转载 2020-11-24 13:59:51 · 1473 阅读 · 2 评论 -
基于正点原子STM32F103精英板IIC实验的MS5611气压计的使用
MS5611是一款气压计,能够提供高精度的气压值与温度值,这次做项目正好需要用到这款传感器,包括之前也没好好学习用过IIC,所以写下博客记录一下。如果有需要使用的朋友可以去https://download.csdn.net/download/a792544191/12115530下载,我把代码资源放到里面了,如果是STM32F103精英板的,在IIC1上接上模块就能直接使用了。我主要在原子哥的myiic文件根据数据手册和网上大佬们的实验思路,添加了一些iic函数,同时新增了一个ms5611的文件用于读取转载 2020-11-24 13:46:39 · 1063 阅读 · 0 评论 -
ADS1115的IIC通信
帮人给移远bc芯片和ads1115通信。这里根据datasheet总结下ADS1115的IIC通信datasheet里面其实有个quick guide,比较详细的介绍了和ADS1113/4/5 IIC通信的流程.这个流程是让ADS1113/4/5能够连续的进行A/D转换并且读取结果的过程。将详解下这个流程中的步骤1.写congif register,这是为了写配置寄存器,确定ADS1115的工作模式。1)首先要确定从机地址(slave address),slave address 可选,转载 2020-11-24 09:57:41 · 1111 阅读 · 0 评论 -
IIC知识整理以及ADS1115
什么是IIC?IIC (Inter-Integrated Circuit), 通常发音为: I-squared-C,是多主、多从、分组交换、单工的串行总线,通常用于处理器或微控制器与低速外围器件的短距离通信连接。这个通信协议是由(NXP半导体的前生)飞利浦公司发明,并在2006年开始,I2C协议的实施不要许可费,但仍要收取I2C从机分配地址的费用。来自:wikiIIC的特性如下:仅用两线连接; 不像RS232那样有着严格的波特率要求,而是由主设备(mater)产生时钟信号; 设备之间的主/从转载 2020-11-24 09:45:51 · 1508 阅读 · 0 评论 -
ADS1115(ADC)16 位分辨率的高精度模数转换器的操作步骤
ADS1113、ADS1114 和ADS1115 是具有16 位分辨率的高精度模数转换器(ADC),采用超小型的无引线QFN-10 封装或MSOP-10 封装。 ADS1113/4/5 在设计时考虑到了精度、功耗和实现的简易性。ADS1113/4/5 具有一个板上基准和振荡器。数据通过一个12C 兼容型串行接口进行传输;可以选择4个I2C 从地址。ADS1113/4/5 采用2.0V 至5.5V 的单工作电源。以下是ADS1115的操作指引: ADS1115 的使用操作是IIC,主要分...原创 2020-11-24 09:21:15 · 4649 阅读 · 0 评论 -
STM32F103RCT6实验代码之ADS1115的使用
重点是对于ADS1115的配置,IIC只是粗略的介绍ADS1115的使用ADS1115概况 IIC介绍 开始信号 结束信号 ack信号 nack信号 读数据 写数据 代码讲解ADS1115概况ads1115是一款低功耗16位的ADC四路的输入,分别是:A0,A1,A2,A3供电引脚:VDD地:GND与其他设备通信:SCL,SDA地址:ADDR比较器的结果输出:ALERT(简单应用一般用不到)一般VDD与GND的压差为2-5.5VADDR.转载 2020-11-23 17:04:27 · 2803 阅读 · 0 评论 -
STM32开发项目:软件模拟I2C功能
日期 作者 版本 说明 2020.10.29 Tao V1.1 1. 修复了端口配置输入输出方向函数的bug(没有设置端口速度) 2. STM32F103与F407平台的源码分开提供 3. 改进了等待从机应答的逻辑 2020.11.05 Tao V1.2 1. 增加了I2C Device的数据结构封装 目录背景介绍 I2C协议介绍 I2C总线特征 I2C总线协议 I2C总线操作 本套.转载 2020-11-23 15:11:23 · 923 阅读 · 0 评论 -
STM32开发项目:ADS1115的驱动与使用
日期 作者 版本 说明 2020.09.24 Tao V1.0 发布第一版文档 2020.10.20 Tao V1.1 改进了void ADS1115_RefreshAllChannel()函数的实现,增加了出错检查机制 目录ADS1115介绍 驱动源码 头文件 源文件 使用指南 基本步骤 注意事项 ADS1115介绍ADS1115是具有 PGA、振荡器、电压基准、比较器的 16 位、860..转载 2020-11-23 15:01:16 · 4094 阅读 · 1 评论 -
飞控开发--气压计MS5611
ms5611简介:官方给出的最大分辨率:10cm工作电压: 1.8v ~ 3.6v气压 AD 精度:24位工作环境:-40 ~ +85°C,10 ~ 1200mbar(毫巴 = 百帕)通讯接口: I2C/SPI (PS:1 - I2C ; PS:0 - SPI)焊接条件: <250°C < 40秒开发环境:开发板: stm32F4discovery气压计模块:GY-63(ms5611)开发工具:window7 + MDK(转载 2020-11-21 22:52:51 · 3709 阅读 · 1 评论 -
STM32学习笔记之IIC(1) ADS1115
1.ADS1115简介 ADS1115是德州仪器推出的具有IIC接口的16位ADC转换器,超小型X2QFN或VSSOP 封装,低功耗(20uA),宽电压输入2.0V-5.5V,可编程数据转换速率8SPS-860SPS,四个单端输入或两个差分输入。可应用于,电池电压电流检测,低速便携式仪表以及温度测量系统中。ADS1115简化方框图VSSOP封装的ADS1115顶部视图ADS1115典型电路连接ADS1015模块原理图2.引脚功能引脚名...转载 2020-11-21 22:49:59 · 22078 阅读 · 16 评论 -
ADS1115(测量ADC)的使用教程(IIC)
ADS1115可以测量ADC,能够测量单端对地电压和差分对输入的电压,测量范围是0-6V。1、main.c:#include "led.h"#include "delay.h"#include "sys.h"#include "usart.h"#include "lcd.h"#include "key.h" #include "ads1115.h"float aa; int main(void) { float t1; u16 t,result;转载 2020-11-21 22:41:01 · 17299 阅读 · 4 评论 -
MS5611气压计IIC源程序
前段工程项目需要测量大气压力,网上搜集了MS5611气压计这方面的资料,并完全参考了相关网友的程序。1、MYIIC.h#ifndef __MYIIC_H#define __MYIIC_H#include "sys.h"////////////////////////////////////////////////////////////////////////////////// //本程序只供学习使用,未经作者许可,不得用于其它任何用途//Mini STM32开发板//IIC 驱动原创 2020-11-21 22:33:27 · 1549 阅读 · 5 评论 -
传感器学习——旋转编码器
旋转编码器是将旋转机械位移量转换为电器信号,对该信号进行处理后检测位置,速度等的传感器旋转编码器可分为 “增量式”编码器和 “绝对值”式编码器 1.增量式编码器 旋转盘转动时,光敏二极管断续收到发光二极管发出的光,从而输出方波增量式编码器通过对产生的方波脉冲进行计数来检测角度,增量式编码器有3个相分别为 A相 B相 Z相 ...转载 2020-02-26 15:16:06 · 2500 阅读 · 0 评论 -
传感器学习——蓝牙模块HC-05
传感器学习——蓝牙模块HC-05硬件连接VCC: 接电源的正极(这里需要接+5V) GND:接电源的负极 RXD:接收端,蓝牙模块接收从其他设备发来的数据;正常情况接其他设备的发送端TXD TXD: 发送端,蓝牙模块发送数据给其他设备;正常情况接其他设备的发送端RXD STATE:状态端 EN:使能端,需要进入AT模式时...转载 2020-02-26 15:03:57 · 1463 阅读 · 0 评论 -
传感器学习——DHT11
DHT11简介 DHT11 与单片机之间能采用简单的单总线进行通信,仅仅需要一个 I/O 口。传感器内部湿度和温度数据 40Bit 的数据一次性传给单片机 DHT11 的技术参数如下: 工作电压范围: 3.3V-5.5V 工作电流 :平均 0.5mA 输出:单总线数字信号 测量范围: 湿度 20~90%RH,温度 0~50℃ ...转载 2020-02-26 14:52:30 · 1729 阅读 · 0 评论 -
传感器学习——DS18B20
DS18B20 DS18B20是Dallas公司生产的数字温度传感器,具有体积小、适用电压宽、经济灵活的特点。它内部使用了onboard专利技术,全部传感元件及转换电路集成在一个形如三极管的集成电路内。DS18B20有电源线、地线及数据线3根引脚线,工作电压范围为3~5.5 V,支持单总线接口。DS18B20的结构和工作原理 DS18B20 的测量范围为 -...转载 2020-02-26 14:46:06 · 910 阅读 · 0 评论 -
传感器学习——ESP8266(无线串口使用)
ESP8266模块是一款高性能的WIFI串口模块,只要知道串口怎么编程使用,就可以实现所谓的透明传输。将usb转ttl如下连接,USB转TTL模块上有3.3V和5V两个引脚可以作为VCC,但是一般选取5V作为VCC.AT指令 在使用USB转TTL模块与电脑连接之后,就可以使用串口调试助手进行WIFI模块的调试了。首先有一点,AT指令不区分大小写,均以回车、换行结尾。下...转载 2020-02-26 14:40:03 · 2453 阅读 · 0 评论