bmp280c语言程序,51单片机读取BMP280 180 280气压值1602显示程序

//***************************************

// BMP085 IIC测试程序

// 使用单片机STC89C51

// 晶振:11.0592M

// 显示:LCD1602

// 编译环境 Keil uVision2

// 参考宏晶网站24c04通信程序

// 时间:2011年7月1日

// QQ:531389319

//****************************************

#include  

#include      //Keil library

#include    //Keil library

#include     //Keil library

#include   //Keil library

#define   uchar unsigned char

#define   uint unsigned int

#define   DataPort P0    //LCD1602数据端口

sbit          SCL=P1^0;      //IIC时钟引脚定义

sbit           SDA=P1^1;      //IIC数据引脚定义

sbit      LCM_RS=P2^4;   //LCD1602命令端口

sbit      LCM_RW=P2^5;   //LCD1602命令端口

sbit      LCM_EN=P2^6;   //LCD1602命令端口

#define        BMP085_SlaveAddress   0xec          //定义器件在IIC总线中的从地址

#define OSS 0        // Oversampling Setting (note: code is not set up to use other OSS values)

typedef unsigned char  BYTE;

typedef unsigned short WORD;

uchar ge,shi,bai,qian,wan,shiwan;           //显示变量

int  dis_data;                              //变量

short ac1;

short ac2;

short ac3;

unsigned short ac4;

unsigned short ac5;

unsigned short ac6;

short b1;

short b2;

short mb;

short mc;

short md;

void delay(unsigned int k);

void InitLcd();                            //初始化lcd1602

void WriteDataLCM(uchar dataW);

void WriteCommandLCM(uchar CMD,uchar Attribc);

void DisplayOneChar(uchar X,uchar Y,uchar DData);

void conversion(long temp_data);

void  Single_Write(uchar SlaveAddress,uchar REG_Address,uchar REG_data);   //单个写入数据

uchar Single_Read(uchar REG_Address);                                      //单个读取内部寄存器数据

void  Multiple_Read(uchar,uchar);                                          //连续的读取内部寄存器数据

//------------------------------------

void Delay5us();

void Delay5ms();

void BMP085_Start();

void BMP085_Stop();

void BMP085_SendACK(bit ack);

bit  BMP085_RecvACK();

void BMP085_SendByte(BYTE dat);

BYTE BMP085_RecvByte();

void BMP085_ReadPage();

void BMP085_WritePage();

//-----------------------------------

//*********************************************************

void conversion(long temp_data)

{

shiwan=temp_data/100000+0x30 ;

temp_data&#

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值