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

我造轮子,你造车,创客一起造起来!塔克创新资讯【塔克社区 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
玩转X-CTR100 l STM32F4 l BMP280气压计传感器的更多相关文章
- 玩转X-CTR100 l STM32F4 l ADC 模拟数字转换
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器 AD转换接 ...
- 玩转X-CTR100 l STM32F4 l MPU6050加速度陀螺仪传感器
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器 板载加速度 ...
- 玩转X-CTR100 l STM32F4 l X-CTR100与树莓派搭建机器人平台
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器与树莓派Linux系统 ...
- 玩转X-CTR100 l STM32F4 l 舵机控制
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器的舵机控制,X-CTR ...
- 玩转X-CTR100 l STM32F4 l DRV8825 A4988 步进电机控制
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器控制步进电机 ...
- 玩转X-CTR100 l STM32F4 l 基础例程printf、LED、蜂鸣器、拨码开关、位带操作
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器基础板载资源 ...
- 玩转X-CTR100 l STM32F4 l PS2无线手柄
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] SONY的PS2无线手柄是索尼游戏机的遥控手柄,控制 ...
- 玩转X-CTR100 l STM32F4 l DSP指令集性能测试
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器 DSP库的 ...
- 玩转X-CTR100 l STM32F4 l FPU单精度浮点性能测试
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器如何开启ST ...
随机推荐
- 【Coursera】Security Introduction -Summary
对这门课程的安全部分进行一个小结. 往期随笔 第八周第一节 第八周第二节 第九周第一节 第九周第二节 前言:为什么互联网要提及安全 因为security牵扯到我们每一个人,有人每时每刻都想着要偷取别人 ...
- NOI 4977 怪盗基德的滑翔翼(LIS)
http://noi.openjudge.cn/ch0206/4977/ 描述: 怪盗基德是一个充满传奇色彩的怪盗,专门以珠宝为目标的超级盗窃犯.而他最为突出的地方,就是他每次都能逃脱中村警部的重重围 ...
- C指针的一些知识
原文:http://blog.csdn.net/soonfly/article/details/51131141 前言:复杂类型说明 要了解指针,多多少少会出现一些比较复杂的类型,所以我先介绍一下如何 ...
- Oracle数据库常见版本
Oracle数据库常见版本 在Oracle数据库的发展中,数据库一直处于不断升级状态,有以下几个版本: Oracle 8,Oracle 8i:Oracle 8i表示Oracle正式向Internet上 ...
- DDD领域模型和充血对象
DDD领域模型 官方说法 领域驱动设计,它是对面向对象的的分析和设计(OOAD,Object Orient Analysis Design)的一个补充,对技术框架进行了分层规划,同时对每个类进行了策略 ...
- MySQL函数GROUP_CONCAT() 实现多条数据合并
group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来,group by指定的列进行分组. 例如: -- 根据物流订单id查询所有物流订单,车源订单,车辆信息(多条数据合并为一条 ...
- 算法笔记--KMP算法 && EXKMP算法
1.KMP算法 这个博客写的不错:http://www.cnblogs.com/SYCstudio/p/7194315.html 模板: next数组的求解,那个循环本质就是如果相同前后缀不能加上该位 ...
- bartender学习
参考: 官网 https://www.seagullscientific.com/label-software/barcode-label-design-and-printing 文章 http:/ ...
- Assert.IsNotNull 方法(判断对象不为NULL)
Assert.IsNotNull 方法 Visual Studio 2012 其他版本 Visual Studio 2010 Visual Studio 2008 Visual Studio 20 ...
- android--------listview之适配器
ListView之适配器的使用,包含了ArrayAdapter,SimpleAdapter ,BaseAdapter等适配器. 1:ArrayAdapter /**** * * * ArrayAdap ...