BMP180气压传感器+STM32
- 1 导入.c.h文件(不再赘述,详细见LED部分)
- 2 Cubemx配置
- 3 修改 .h 文件
- 4 测试
将BMP180从标准库移植到HAL库。模拟IIC。
极简工程代码如下:
https://github.com/wyfroom/HAL_BMP180
该份代码硬件配置:
板子:c8t6最小系统板。
外设:模拟IIC B6 B7,串口1调试用。
1 导入.c.h文件(不再赘述,详细见LED部分)
在keil工程中导入之前写好的.c.h文件。
2 Cubemx配置
采用模拟IIC,任意选两个io口设置为推挽输出模式。我这边选B7 B6。
配置串口1,重映射printf。
cubemx基本工程和配置看:【HAL库】HAL库STM32cubemx快速使用
3 修改 .h 文件
只需要修改下面2行代码即可任意改变引脚
4 测试
添加头文件
#include "bmp1801.h"
添加初始化
BMP_Init(); //BMP180初始化
BMP_ReadCalibrationData();//BMP180初始化
读取
uint8_t ID = 0; //BMP180器件号
ID = BMP_ReadOneByte(0xd0); //读取设备ID
BMP_UncompemstatedToTrue(); //读取气压值
printf("ID = %d\t temp = %d.%dC\t Pressure = %.2fkPa\t Altitude = %.5fm\r\n",ID,bmp180.Temp/10,bmp180.Temp%10,(float)bmp180.p/1000.0,bmp180.altitude);
HAL_Delay(500);