エントリー

大気圧センサ(LPS25H)を試す

これまでの続きで大気圧センサ(LPS25H)を試してみる

温湿度センサを繋いでいるブレッドボードに追加

FSTN液晶モジュールもそのままにしてあるためSPIで接続しCSを8にする

 (LPS25H)      (arduino)          (ATMEGA328P)
1    VDD        +3.3V
 2    SCL        13                    19                SPI共通
 3    SDA/SDI    11                    17                SPI共通
4    SAO/SDO    12                    18                SPI共通
5    CS          8                    14                SPI別
6    NC
7    INT1
8    GND        GND

こちらからライブラリをいただいてテストプログラムを調整

// 大気圧センサLPS25H(SPI接続)のテスト
//
#include <SPI.h>
#include "skLPSxxSPI.h"

#define LPS25H_CS    8

skLPSxxx LPS(LPS25H,LPS25H_CS);             // デバイスはLPS25Hを指定

void setup() {
    int ans;

    // シリアルモニターの設定
    Serial.begin(9600);
    // SPIの初期化
    SPI.begin();                            // SPIを行う為の初期化
    SPI.setBitOrder(MSBFIRST);              // ビットオーダー
    SPI.setClockDivider(SPI_CLOCK_DIV4);    // クロック(CLK)をシステムクロックの1/4で使用(16MHz/4)
    SPI.setDataMode(SPI_MODE3);             // クロック極性 1(HIGH) クロック位相 1(HIGH)

    pinMode(LPS25H_CS, OUTPUT);             // 気圧センサーのCS

    delay(3000);                            // 3Sしたら開始

    // 気圧センサの初期化を行う(更新速度は1Hz)
    ans = LPS.PressureInit();
    if(ans == 0) {
        Serial.println("Initialization normal");
    } else {
        Serial.print("Initialization abnormal ans=");
        Serial.println(ans);
    }
    delay(1000);
}
void loop() {
    LPS.PressureRead();                     // 圧力と温度を読み出す
    Serial.print("[LPS25H]");
    Serial.print(Press);                    // 気圧値の表示を行う
    Serial.print(" hPa  ");
    Serial.print(Temp);                     // 温度の表示を行う
    Serial.println(" 'C");

    delay(1000);                            // 1秒後に繰り返す
}

 

特に問題なく動作確認完了

 

ページ移動

コメント

  • コメントはまだありません。

コメント登録

  • コメントを入力してください。
登録フォーム
名前
メールアドレス
URL
コメント
閲覧制限
投稿キー(スパム対策に、投稿キー を半角で入力してください。)

ユーティリティ

検索

エントリー検索フォーム
キーワード

過去ログ

Feed