本文参考自: 原文地址
BMP180是一种高精度数字压力传感器,BMP180的超低功耗,低电压电子元件经过优化,适用于移动电话,PDA,GPS导航设备和户外设备。
UP =压力数据(16到19位) UT =温度数据(16位)
采用标准的I2C总线传输方式,在手册里面【BMP10手册点击打开链接】有流程图:开始-开始测量温度-等待4.5ms-读温度-开始测量压力-等待(看模式)-读压力-计算温度与压力单元
测量温度和压力
开始测量温度值UT和压力值UP的时序图如下所示。在启动后,主机发送器件地址写入,寄存器地址和控制寄存器数据。当接收到数据时,BMP180每8个数据位发送一个确认(ACKS)。主机在最后一次ACKS后发送停止条件。
程序为:
/写一个数据到BMP180
void BMP_WriteOneByte(uint8_t WriteAddr,uint8_t DataToWrite)
{
IIC_Start(); //发送起始信号
IIC_Send_Byte(0xEE); //芯片的地址+写信号
IIC_Wait_Ack(); //等待应答
IIC_Send_Byte(WriteAddr); //内部寄存器地址
IIC_Wait_Ack(); //