玩转X-CTR100 l STM32F4 l BMP280气压计传感器

2023-05-16

我造轮子,你造车,创客一起造起来!塔克创新资讯【塔克社区 www.xtark.cn 】【塔克博客 www.cnblogs.com/xtark/

    

本文介绍X-CTR100控制器 扩展BMP280气压计传感器,模块型号为GY-BM E/P280,淘宝上可以买到。

气压计可用于海拔高度测量,常用于无人机中,实现定高功能。

原理

BMP280是一款绝对的气压传感器,专为移动应用而设计。传感器模块采用极其紧凑的封装。其小尺寸和低功耗允许在诸如移动电话,GPS模块或手表的电池供电设备中实现。

作为其前身BMP180,BMP280基于博世经过验证的压阻式压力传感器技术,具有高精度和线性度以及长期稳定性和高EMC稳健性。众多器件操作选项提供了最高的灵活性,可针对功耗,分辨率和滤波器性能优化器件。为开发人员提供了一组经过测试的默认设置(例如用例),以便尽可能简化设计。

应用

- 增强GPS导航(例如,时间改进,航位推算,斜率检测)

- 室内导航(楼层检测,电梯检测)

- 户外导航,休闲和运动应用

- 天气预报

- 医疗保健应用(例如肺活量测定法)

- 垂直速度指示(例如上升/下降速度)

引脚说明:

Pin1:VCC(3.3V供电)

Pin2:GND

Pin3:SCL(I2C通信模式时钟信号)

Pin4:SDA(I2C通信模式数据信号)

Pin5:CSB(SPI通信模式下用到的引脚,本次没用到,可以悬空)

Pin6:SDO(传感器地址控制位,接GND的时候I2C中器件地址为0xEC,接高电平为0xEC+ 1,本次接GND)

传感器测试范围:

温度:-45℃~+85℃

大气压强:0~20000hPa(百帕)

测量主要模式:

Sleep Mode:作电流达到uA级别,典型值为0.1uA,最大值为0.3uA,所有测量工作都停止。

Normal Mode: 正常工作,相关工作间隔时间可以通过寄存器控制。

Forced Mode:主控发起一次采集命令,传感器采集一次信号,然后进入Sleep Mode,等待下次唤起(本次没用到)。

BMP280传感器内部所有寄存器及其地址如下图所示,更详细说明,请参考数据手册。

例程

初始化BMP180,采集气压值和温度数据并输出显示。

硬件说明

硬件资源:

  • 串口UART1
  • LF接口(IIC2接口)
  • 扩展模块BMP180气压计(需自备)

硬件连接:

模块连接到LF IIC2接口,连接如下图所示。

    

软件生态

X-SOFT软件生态,X-API文件如下。

ax_bmp280.c——X-CTR100 扩展BMP280气压计源文件

ax_bmp280.h——X-CTR100 扩展BMP280气压计头文件

操作函数如下:

uint8_t AX_BMP280_Init(void); //BMP280传感器初始化

uint32_t AX_BMP280_GetPressure(void);    //BMP280获取气压值

uint32_t AX_BMP280_GetTemperature(void);    //BMP280获取温度值

软件说明

主程序代码如下。

int main(void)

{

    uint32_t temp, press;

 

    //X-CTR100初始化

    AX_Init(115200);

    printf("***X-CTR100 BMP280气压传感器例程***\r\n\r\n");

 

    //模块初始化及配置

    AX_BMP280_Init();

 

    while (1)

    {

        press = AX_BMP280_GetPressure();

        temp = AX_BMP280_GetTemperature();

 

        printf("压力值:%d(0.1Pa) 温度:%d (0.01℃)\r\n", press, temp);

 

        AX_Delayms(1000);

        AX_LEDG_Toggle();

    }

}

实现效果

运行效果如下图所示。

    

参考

https://blog.csdn.net/sunshinebooming/article/details/79637822

转载于:https://www.cnblogs.com/xtark/p/9429289.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

玩转X-CTR100 l STM32F4 l BMP280气压计传感器 的相关文章

  • 反客STM32F4核心板DAP无法下载程序解决

    反客STM32核心板DAP无法下载程序解决 问题解决 问题 反客STM32F407ZGT6核心板使用反客的DAP下载器下载程序 xff0c 无法识别下载器 xff0c 说明下载器没有正常工作 xff08 这里是已经换过杜邦线了 xff0c
  • STM32F4无人机6轴运动处理组件MPU6050

    目的 学习MPU6050的原理 MPU6050初始化方法 原理 MPU6050是9轴运动处理传感器 它集成了3轴MEMS陀螺仪 xff0c 3轴MEMS加速度计 xff0c 以及一个可扩展的数字运动处理器DMP xff08 Digital
  • FreeRTOS在STM32F4上移植

    本文是 ALIENTEK STM32F429 FreeRTOS 开发教程 第二章学习笔记 第一章笔记 FreeRTOS简介与源码下载 一 移植 1 准备工程文件 MCU用的是STM32F429的CORE xff0c 用keli创建一个基础工
  • STM32F4_串口通信详解

    目录 1 串口相关介绍及使用 1 1 串口设置的一般步骤 xff1a 1 1 1 串口时钟和GPIO时钟使能 1 1 2 设置引脚复用器映射 1 1 3 GPIO端口模式设置 1 1 4 串口参数初始化 1 1 5 开启中断并且初始化NVI
  • stm32F4 hal库之CAN通信的实现

    本文的目的是为了能够实现功能 xff0c 故写的时候比较简略 参考资料 xff1a https blog csdn net u012308586 article details 81001102 正点原子开发手册 目标 xff1a 通过ca
  • STM32F4 使用结构体配置功能

    1 IIC配置 void IIC Mode Config void I2C InitTypeDef I2C InitStructure I2C InitStructure I2C Mode 61 I2C Mode I2C IIC模式 I2C
  • STM32F4 DMA

    STM32F4有2个DMA xff0c 每个DMA控制器有8个数据流 xff0c 每个数据流有多达8个通道 xff0c 但是DMA1 控制器 AHB 外设端口与 DMA2 控制器的情况不同 xff0c 不连接到总线矩阵 xff0c 因此 x
  • FreeRTOS移植STM32F4

    64 TOC FreeRTOS FreeRTOS移植到STM32F4上 本文章讲解一下如何将FreeRTOS移植到STM32F4开发板上 xff0c 如有不对之处 xff0c 欢迎指正 xff0c 多多交流 一 创建工程文件及代码调试 我们
  • STM32F4-KeyFIFO

    STM32按键FIFO 主要思想就是 xff1a 1 先配置按键的初始计数值为滤波值 如 xff0c 滤波为40ms xff0c 则配置该值为固定初始值 xff0c 如10 假如扫描周期为10ms xff0c 每间隔一定时间 上面说的10m
  • STM32F4配置内部时钟(HSI)

    STM32F4配置内部时钟 半年多没更新了 xff0c 今天配置F4的时候内部时钟问题整了2个小时 xff0c 记录下这个坑 有些板子由于没有贴外部晶振 xff0c 所以代码运行起来的时候时钟就会出问题 xff0c 本来配置的中断是1ms实
  • STM32F4移植FreeRTOS

    在之前的文章 xff1a FreeRTOS全解析 2 源码结构与移植 中我们已经讲解过FreeRTOS移植的方法 xff0c 并且给出了一个在ARM9上移植的例子 xff0c 今天再来看一个例子 xff1a 板子的芯片为STM32F407
  • 关于stm32f4上对(28byj-48)步进电机的应用控制和解读。

    1 关于stm32f4上对 xff08 28byj 48 xff09 步进电机的应用控制和解读 xff08 1 ULN2003驱动模块电路 步进电机不能直接和单片机连接 xff0c 需要对应驱动模块提供电机所需的电流 电路图分析 xff1a
  • STM32F4 使用SPI读取气压计MS5611的数据并转化为大气压强

    ms5611是同时支持I2C和SPI通信协议的气压计芯片 已经很普遍的被用在飞行器控制板上作为高度传感器 开发过stm32的朋友都知道它的硬件I2C是由bug的 xff0c 一般使用的都是自己编写的软件I2C通信协议 但是其硬件SPI通信却
  • STM32F4中断(Interrupt)详解

    STM32F4中断 Interrupt 详解 文章目录 STM32F4中断 Interrupt 详解一 中断是什么 二 STM32的中断体系2 1 STM32的中断分类2 2 STM32中断优先级2 2 1 抢占优先级2 2 2 响应优先级
  • 串口发送通信---UART发送---STM32F4实现

    串口发送程序配置过程 xff08 HAL库 xff09 初始化串口相关参数 xff0c 使能串口 HAL StatusTypeDef span class token function HAL UART Init span span cla
  • 关于stm32f429的MDA2D的M2M模式

    LTDC的使用问题 可参考官方例程的配置 需要注意的是 它只是一个LCD控制器 需要定义缓存的地址 可以设置在flash里 但是不便于操作 一般还是建议设置外部SDRAM里 LTDC中DMA2D的使用问题 429中LTDC的2D加速功能还比
  • 用STM32F030F4的SPI总线获取BMP280的气压和温度

    1 用STM32Cube MX生成SPI总线的初始化函数 static void BMP280 SPI Init void LL SPI InitTypeDef SPI InitStruct 0 LL GPIO InitTypeDef GP
  • stm32f407zgt6的pdr_on引脚怎么接

    原文链接 https www amobbs com thread 5495105 1 1 html dsign c6460fe9 407的100脚封装没有这个PDR ON 就是VSS 在引脚分布图中为pdr on 但实际量pdr on对VS
  • 家庭IOT监测之摄像头数据上传ONENET

    本篇目标 将摄像头OV7670的照片数据 转换成BMP二进制 上传到ONENET平台 用于远程监测 材料准备 之前移植的温湿度及红外修改工程 温湿度及红外修改工程 继续往里面移植摄像头驱动上传代码 STM32F407最终摄像头上传ONENE
  • STM32的HAL中实现单按、长按和双按功能

    我正在尝试实现单击 双击和长按功能来执行不同的功能 到目前为止 我已经理解了单击和长按的逻辑 但我不知道如何检测双击 至于代码 我使用计数器实现了单击和长按 但代码仅停留在第一个 if 条件上 bool single press false

随机推荐

  • 香橙派Orangepi Zero2控制舵机转动

    通过香橙派输出PWM波控制舵机 xff0c 首先需要了解Linux的定时器功能 xff0c 通过配置定时器产生PWM波 xff1a 218条消息 Linux时间函数与定时器简介 xff2c xff2a xff38 的博客 CSDN博客 1
  • UDP Linux编程(客户端&服务器端)

    服务器端 服务器不用绑定地址 xff0c 他只需要进行绑定相应的监听端口即可 include lt sys types h gt include lt sys socket h gt include lt pthread h gt incl
  • Visual Studio 与 Visual C++ 关系

    Visual Studio netVisual C 43 43 netVisual C 43 43 MSC VER备注Visual Studio net 2002Visual C 43 43 net 2002Visual C 43 43 7
  • C语言之基本算法08—去掉最高分去掉最低分求平均值

    61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61
  • MySQL -- Fast Index Creation

    1 fast index creation简介 MySQL5 5之后 xff0c 对innodb表创建或删除辅助索引的效率提升了很多 xff0c 即增加了新的功能fast index creation 因为MySQL5 5之后 xff0c
  • .NET Core2.0 环境下MVC模式的支付宝扫码支付接口-沙箱环境开发测试

    所有配置以及相关信息均可以从PC支付中获取 使用的生成二维码的组件名为QRCoder xff0c 该组件引用了一个第三方实现的System Drawing类库 xff0c 和支付宝官网类似 当面付SDK为Alipay AopSdk F2FP
  • 让自己的网站实现在线编辑office文档

    我们可以通过Office Web Apps xff08 OWA xff09 来实现在线编辑word xff0c excel xff0c power point xff0c one note xff0c 并集成到自己的网站里去 1 准备工作
  • 设置openjdk docker容器的时区

    openjdk 8 jre镜像是基于debian系统的 默认时区是UTC 下面两个方法都可以把时区改为Asia Shanghai 启动java应用时设置jvm参数 jvm参数 Duser timezone 61 Asia ShangHai
  • MYSQL的longtext字段能放多少数据?

    生产上遇到问题 xff0c 同事说MYSQL里的字段放不下5m大小的数据 于是 xff0c 将django model里textfield里的max length变长了 依然无效 xff0c 于是 xff0c 更改mysql的设置 xff1
  • 排查CentOS 7中chronyc sources 时间无法同步问题

    chronyc sources结果显示 controller 这表示时间同步服务器不可到达 经以下步骤成功排除错误 xff0c 供参考 在控制节点 1 检查controller节点服务器的时间同步服务是否开启成功 systemctl sta
  • SIM900A

    介绍 本文介绍SIM900A模块 xff0c 并给出一个使用教程 玉照 caption id 61 34 attachment 2625 34 align 61 34 alignnone 34 width 61 34 350 34 SIM9
  • C#读取excel的有效行数或者最大有效列数

    using System using System Collections Generic using System Linq using System Text using NPOI SS UserModel using NPOI HSS
  • [RQNOJ]PID1-明明的随机数

    http www rqnoj cn problem 1 1 include lt stdio h gt 2 include lt stdlib h gt 3 4 用法 xff1a void qsort void base int nelem
  • arguments

    arguments是什么 xff1f 答 是一个对象 xff0c 是一个长的很像数组的对象 arguments内容是什么 xff1f 答 arguments是函数运行时的实参列表 函数运行期间 xff0c 关键的三个对象 AO 本函数AO上
  • xcode5项目图标添加

    转载文章 地址http www 360doc com content 14 0103 08 14615320 342227413 shtml 最近提交itunesconnect应用时 xff0c 有个警告说缺少120x120图标 xff0c
  • 三款扒站神器

    https www shiyanlou com questions 80548 10个 webzip xff0c HTTrack Website Copier xff0c teleport pro 我主要用2 个配合起来使用 xff0c 效
  • kubeadm部署kubernetes 1.13.1集群

    kubeadm是Kubernetes官方提供的用于快速部署Kubernetes集群的工具 xff0c 本篇文章使用kubeadm搭建一个单master节点的3节点k8s集群 kubernetes部署dashboard可视化插件 xff1a
  • curl 同时发送多个请求

    创建一对cURL资源 ch1 61 curl init ch2 61 curl init 设置URL和相应的选项 curl setopt ch1 CURLOPT URL 34 http test cm a php 34 curl setop
  • 网络通信第四课 C++发送Post请求的完整案例

    说明 当前例子采用boost asio库发送HTTP数据报文 xff0c 采用boost asio streambuf request流封装数据报文 xff0c 在例子的后面 通过string对响应数据包进行分析 xff0c 获取其中的js
  • 玩转X-CTR100 l STM32F4 l BMP280气压计传感器

    我造轮子 xff0c 你造车 xff0c 创客一起造起来 xff01 塔克创新资讯 塔克社区 www xtark cn 塔克博客 www cnblogs com xtark 本文介绍X CTR100控制器 扩展BMP280气压计传感器 xf