BME280 環境センサー
製品概要
これは、環境温度、境界、および大気圧を感知し、IC および SPI インターフェイスをサポートし、3.3V/5V の電気レベルに対応し、小型サイズで、電力消費が少なく、高精度で安定性が高く、環境温度の測定、天気圧に適した 1 セント環境センサーです。预测、海拔高度测、物联網応用场景。
特点
- I2Cインターフェース通信をサポートし、コンピュータの場所を設定できます
- SPI インターフェース通信をサポートします。
- 板電平转换回路、3.3V/5V対応の動作電平
- 提供する完善的配膳料手册(Raspberry/Arduino/STM32例題手順と用户手册など)
製品パラメータ
動作電圧: | 5V/3.3V |
通信インターフェース: | I2C/SPI |
温度范围: | -40~85°C (分率0.01°C,偏差±1°C) |
范围: | 0~100%RH (分率0.008%RH,±3%RH) |
圧力范围: | 300~1100hPa (分辨率0.18Pa,偏差±1hPa) |
製品寸法: | 27mm×20mm |
貫通孔径: | 2.0mm |
インターフェース定义
I2C インターフェース | ||||
機能引脚 | Arduinoインターフェース | STM32インターフェース | ラズベリー | 説明 |
VCC | 3.3V/5V | 3.3V/5V | 3.3V/5V | 電源正 |
アース | アース | アース | アース | 電源地 |
SDA | A4 | PB7 | SDA | I2Cデータライン |
SCL | A5 | PB6 | SCL | I2Cタイムライン |
住所 | NC/GND | NC/GND | NC/GND |
地変数選択(高電レベル): 高地のとき、地盤は:0x77 低地のとき、地盤は: 0x76 |
CS | NC | NC | NC | NC |
SPIインターフェース | ||||
機能引脚 | Arduinoインターフェース | STM32インターフェース | ラズベリー | 説明 |
VCC | 3.3V/5V | 3.3V/5V | 3.3V/5V | 3.3V電源正 |
アース | アース | アース | アース | 電源地 |
モシ | D11 | PA7 | モシ | SPIデータ入力 |
SCK | D13 | PA5 | SCK | SPI時钟输入 |
味噌 | D12 | PA6 | 味噌 | SPIデータ出力 |
CS | D10 | PB6 | 27 | SPI片選択、低電圧効果 |
用為树莓派
インストールに必要な関数の数
- 必要な機能をインストールする必要があります。そうしないと、以下のサンプル プログラムが正常に動作しない可能性があります。
https://www.waveshare.net/wiki/Pioneer600_Datasheets
- 官庁で対応する製品にたどり着き、製品リストが開きます。
- 解圧包に達し、解圧に達したように:
- ラズベリー文物をラズベリー派に奪取する。
前置工作及び演示
前置き工作
- 次のようにコマンドを実行します。
sudo raspi-config
- Interface Options -> I2C -> yes を選択します。
- Interface Options -> SPI -> yes启动SPI内核モーションを選択
- 保存退出後,重启树莓派:
sudo 再起動
- 重畳後,実行コマンド監視,I2C,SPI モジュールの有無確認:
lsmod
- 以下のような打刻情報があります:
- i2c_bcm2835 および spi_bcm2835 が I2C を示している場合、SPI モジュールは動作しています。
- BME280 モジュールは、前述の I2C インタフェースに基づいてネットワークに接続されます。
- BME280 モジュールの I2C デバイス アドレスは 0x77 であり、ADDR グランド デバイス アドレスは 0x76 に変更されました。
- 取付i2c-tools工具進行确认:
sudo apt-get install i2c-tools
- 接続された I2C デバイス
i2cdetect -y 1
- 開催予定は以下のとおりです。
- 示されている 77 は、BME280 モジュールが正常に接続されていることを示しています。
- 若将ADDRをGNDに接続则打印76:
注意:上記の検証により、I2C モジュールが成功した場合、BME280 モジュールは SPI タイミングをサポートし、SPI を参照できます。インターフェース説明部分は、BME280 をグループに接続します。
演示
- BME280 のモデルを树莓派に接続することに成功した後:
- I2C 駆動を使用する場合: 事前に I2C デバイス アドレスを決定し、BME280 モジュールは I2C デバイス アドレスを 0X77 として認識し、ADDR を接地する (または 0 の電気抵抗で接続する) と、その I2C デバイス アドレスが 0X76 に変更されます。
- main.c文を開きます:
- BME280-Environmental-Sensor-Demo-Codeに入る経路下:
CD BME280-Environmental-Sensor-Demo-Code
- main.c文を開きます:
vim main.c
- I2C 駆動を使用するために、main.c 内の USEIIC の最大値が 1 であることを保証します。
- 同時に、main.c 内の I2C デバイスの場所を確認し、現在の BME280 デバイスのデバイスの場所が一致していることを確認します(I2C デバイスの場所が 0x77 であることを確認します。
- SPI 駆動を使用している場合: BME280 モジュールは、インターフェイス仕様にある SPI ワイヤレス接続方式で接続され、main.c ファイルの USEIIC の設定が 0 に変更されます。
- 保存して退出编辑,その後重新编译:
sudo クリーンアップ 須藤メイク
- 行程:
sudo ./bme280
- 以下のデータを示します:
- 左から右に、BME280 で測定された温度 (温度)、大気圧 (パーセント)、相対湿度 (%RH) がそれぞれ示されています。地址の有無。
Arduino用
- 以下の例題プログラムの圧縮パッケージを解凍した後、Arduino のドキュメントにある BME280-Arduino-Library を Arduino の第 3 の場所に移動します。
- インターフェースの説明に従って、Arduino インターフェースの部分が接続されています。
- I2C で駆動される BME280 モジュールを採用し、I2C デバイスは 0X77 であることが確認されました。
- BME280 モジュールを SPI で駆動する必要がある場合は、bme280test.ino の 宏定値USEIIC を 0 に変更します。
- I2C デバイスのアドレスを 0X76 に変更する必要がある場合は、ADDR プラグを GND に接続します (または 0 の電気抵抗で接続します)。同時に、Adafruit.h 内の BME280_ADDRESS デバイスのアドレスを 0X76 に変更します。
- 標準測定量の標準海圧を取得する必要がある場合、適切な海面の気圧を取得し、SEALEVELPRESSURE_HPA宏定を修正する必要があります。
- 正しく接続され、通信方式とデバイスの場所が特定された後、Arduino にダウンロードされます。
- 起動:Tools -> 串口レーダー,選択波特性は 115200 で,以下の情報が得られます
- その中の左から右は、BME280 センサーで測定された温度 (温度)、大気圧 (百分位)、相対湿度 (%RH)、海気 (m) をそれぞれ示しています。
- データが正常に表示されない場合、またはデータが正常に表示されない場合は、回線、通信方式、およびデバイスの状態が検出されます。