【Proteus仿真】BME280温湿度气压传感器数据串口输出

【Proteus仿真】BME280温湿度气压传感器数据串口输出


  • Proteus仿真
    在这里插入图片描述

BMP280资料下载链接:

1
2
3
https://pan.baidu.com/s/1TyQGJQ6R30hntzGr1SaSNg 
提取码:8888

接口类型

  • I2C接口
    在这里插入图片描述
  • SPI接口
    在这里插入图片描述

所需库

  • Adafruit_Unified_Sensor
  • Adafruit_BME280
  • Adafruit_BusIO

具体版本信息可以参考下面的编译信息。

程序代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <Wire.h>
#include <SPI.h>
#include <Adafruit\_Sensor.h>//点击这里会自动打开管理库页面: http://librarymanager/All#Adafruit\_Sensor
#include <Adafruit\_BME280.h>//点击这里会自动打开管理库页面: http://librarymanager/All#Adafruit\_BME280

#define BME\_SCK 13
#define BME\_MISO 12
#define BME\_MOSI 11
#define BME\_CS 10

#define SEALEVELPRESSURE\_HPA (1013.25)

//Adafruit\_BME280 bme; // I2C
Adafruit_BME280 bme(BME_CS); // hardware SPI
//Adafruit\_BME280 bme(BME\_CS, BME\_MOSI, BME\_MISO, BME\_SCK); // software SPI

unsigned long delayTime;

void setup() {
Serial.begin(9600);
Serial.println(F("BME280 test"));

bool status;

// default settings
// (you can also pass in a Wire library object like &Wire2)
status = bme.begin();
if (!status) {
Serial.println("Could not find a valid BME280 sensor, check wiring!");
while (1);
}

Serial.println("-- Default Test --");
delayTime = 1000;

Serial.println();
}


void loop() {
printValues();
delay(delayTime);
}


void printValues() {
Serial.print("Temperature = ");
Serial.print(bme.readTemperature());
Serial.println(" \*C");

// Convert temperature to Fahrenheit
/\*Serial.print("Temperature = ");
Serial.print(1.8 \* bme.readTemperature() + 32);
Serial.println(" \*F");\*/

Serial.print("Pressure = ");
Serial.print(bme.readPressure() / 100.0F);
Serial.println(" hPa");

Serial.print("Approx. Altitude = ");
Serial.print(bme.readAltitude(SEALEVELPRESSURE_HPA));
Serial.println(" m");

Serial.print("Humidity = ");
Serial.print(bme.readHumidity());
Serial.println(" %");

Serial.println();
}

  • 编译信息
1
2
3
4
5
6
7
8
9
10
使用: C:\Users\Administrator\Documents\Arduino\libraries\Adafruit_BusIO
使用 1.0 版本的库 Wire 在文件夹: C:\Users\Administrator\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\libraries\Wire
使用 1.0 版本的库 SPI 在文件夹: C:\Users\Administrator\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.4\libraries\SPI
使用 1.1.4 版本的库 Adafruit_Unified_Sensor 在文件夹: C:\Users\Administrator\Documents\Arduino\libraries\Adafruit_Unified_Sensor
使用 2.2.1 版本的库 Adafruit_BME280_Library 在文件夹: C:\Users\Administrator\Documents\Arduino\libraries\Adafruit_BME280_Library
使用 1.9.8 版本的库 Adafruit_BusIO 在文件夹: C:\Users\Administrator\Documents\Arduino\libraries\Adafruit_BusIO
"C:\\Users\\Administrator\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7/bin/avr-size" -A "d:\\arduino\\MyHexDir/bme280test.ino.elf"
项目使用了 13814 字节,占用了 (42%) 程序存储空间。最大为 32256 字节。
全局变量使用了636字节,(31%)的动态内存,余留1412字节局部变量。最大为2048字节。

程序源码和仿真资源

1
2
3
4
链接:https://pan.baidu.com/s/10M\_d51nd2jFMpm1RuORLLA 
提取码:reo8



先天下之忧而忧,后天下之乐而乐–范仲淹