BME280 온도, 습도, 대기압센서
일반
BOSCH사의 BME280 칩을 이용한 고정밀 온도, 습도, 대기압 측정 센서입니다. I2C 또는 SPI 인터페이스를 사용합니다.

사양
- 습도범위: 0 ~ 100%
- 상대습도출력: 16b
- 출력유형: I²C, SPI
- 정확도: ±3%
- 응답시간: 1s
- 전압-공급: 1.71V ~ 3.6V
- 작동온도: -40°C ~ 85°C
사용 가능한 GPIO
- 라즈베리파이 0~4
- 라즈베리파이 5
- 비글본 블랙/그린
- 젯슨 나노
- FT232H, FT2232H, FT4232H
- MCP2221
명령
[SET_SAMPLING]
Mode, Sampling Rate, Filter등 센서를 설정합니다.
항목 | 타입 | 설명 |
---|---|---|
Mode | WRITE | 모드를 선택합니다. (Sleep: 대기모드, Forced: 1회 측정모드, Normal :연속 측정모드) |
온도 Sampling rate | WRITE | 온도 측정주기(Sampling rate)를 선택합니다. (off, x1, x2, x4, x8, x16) |
대기압 Sampling rate | WRITE | 대기압 측정주기(Sampling rate)를 선택합니다. (off, x1, x2, x4, x8, x16) |
습도 Sampling rate | WRITE | 습도 측정주기(Sampling rate)를 선택합니다. (off, x1, x2, x4, x8, x16) |
필터 | WRITE | 칩 내부의 IIR 필터의 모드를 선택합니다. 대기압의 Short-term fluxuation을 제거하기 위한 목적의 필터입니다. (off,x2,x4,x8,x16) |
대기시간 | WRITE | 연속측정모드 시 측정 후 다음측정까지 대기하는 시간을 선택합니다.(0.5ms,10ms,20ms,62.5ms,125ms,250ms,500ms,1000ms) |
[READ_DATA]
온도, 습도, 대기압을 읽어옵니다.
항목 | 타입 | 설명 |
---|---|---|
온도(℃) | READ | 측정된 온도입니다. |
대기압(Pa) | READ | 측정된 대기압입니다. |
상대습도(%) | READ | 측정된 상대습도입니다. |
[READ_ALTITUDE]
해면기압을 이용하여 현재위치의 고도를 계산합니다.
항목 | 타입 | 설명 |
---|---|---|
해면기압(hPa) | WRITE | 현재 위치의 해면기압을 입력합니다. |
고도(m) | READ | 계산된 고도입니다. |
[SEA_LEVEL_FOR_ALTITUDE]
고도를 이용하여 현재위치의 해면기압을 계산합니다.
항목 | 타입 | 설명 |
---|---|---|
고도(m) | WRITE | 현재 위치의 고도를 입력합니다. |
해면기압(hPa) | READ | 계산된 해면기압입니다. |
[TAKE_FORCED_MEAS]
수동으로 1회측정합니다. (Forced 모드에서만 가능)
항목 | 타입 | 설명 |
---|---|---|
온도(℃) | READ | 측정된 온도입니다. |
대기압(Pa) | READ | 측정된 대기압입니다. |
상대습도(%) | READ | 측정된 상대습도입니다. |
예제
목표
BME280에서 측정된 온도, 대기압, 상대 습도를 대시보드의 위젯에 표시합니다.
부품
부품 | 갯수 |
---|---|
라즈베리파이 4 * | 1 |
BME280 | 1 |
* 다른 하드웨어를 사용할 수도 있습니다. 사용 가능한 GPIO를 참고하세요.
연결 (I2C)
BME280 | GPIO |
---|---|
VIN | 3.3V |
GND | GND |
SDI | 2 (I2C1 SDA) |
SCK | 3 (I2C1 SCL) |
SDO * | GND |
* SDO핀을 GND에 연결하면 I2C주소는 0x76, 3.3V에 연결하면 0x77입니다.(모듈 제조사에 따라 다를 수 있습니다.)

연결 (SPI)
BME280 | GPIO |
---|---|
VIN | 3.3V |
GND | GND |
CS | 8 (SPI0 CE0) |
SDO | 9 (SPI0 MISO) |
SDI | 10 (SPI0 MOSI) |
SCK | 11 (SPI0 SCLK) |

프로젝트