NEQTO Docs
  • Languages icon日本語
    • English
  • ドキュメント
  • API
  • FAQ

›I2C

Getting Started

  • NEQTO Hello World!
  • Tutorial Step 1. NEQTO Console設定
  • Tutorial Step 2. デバイス設定とサービスの開始 (NEQTO Bridge)
  • Tutorial Step 2. デバイス設定とサービスの開始 (STM32 Discovery)
  • Tutorial Step 2. デバイス設定とサービスの開始 (SPRESENSE)
  • Tutorial Step 3. スクリプトを使ったアプリケーション開発

NEQTO

  • NEQTO アカウント登録
  • サブアカウント
  • APIの利用
  • NEQTO Engineファームウェアリスト
  • お問い合わせに関するガイドライン
  • NEQTO 製品を安全に安心してご使用いただくために
  • 脆弱性開示ポリシー

NEQTO Console

  • はじめに
  • 基本情報
  • 管理者専用の操作
  • デバイス管理
  • Linuxデバイス管理
  • 一括登録
  • スクリプト
  • アクション & コンタクト
  • Consoleでデータを表示
  • NEQTO Apps

    • NEQTO Apps について
    • NEQTO Infinitypool
    • NEQTO Insights
    • NEQTO Custodia
    • NEQTO Flow
  • Machine Driver
  • 推奨ブラウザ
  • 請求情報

SPRESENSE

    ハードウェア仕様

    • 01. About Spresense

    ソフトウェア仕様

    • 01. 動作フロー
    • 02. 初期インストール
    • 03. Spresense Wi-Fi 初期設定
    • 04. Spresense LTE-M 初期設定
    • 05. デバッグログ取得方法
    • 06. システムLED動作
    • 07. イベントメッセージ
    • 08. ファームウェア更新方法

    neqto.js

    • 01. About neqto.js
    • 02. Log
    • 03. Timers
    • 04. HTTP
    • 05. HTTPS
    • 06. MQTT
    • 07. Secure
    • 08. Storage
    • 09. Sleep
    • 10. RTC
    • 11. GPIO
    • 12. UART
    • 13. SPI
    • 14. I2C
    • 15. ADC
    • 16. GNSS
    • 17. Camera
    • 18. Utils
    • 19. nqSpresense
    • 20. nqService
    • 21. nqMqtt
    • 22. nqFOTA
    • 23. nqWiFi
    • 24. nqLte

STM32 Discovery

    ハードウェア仕様

    • 01. About STM32 Discovery Kit (B-L4S5I-IOT01A)

    ソフトウェア仕様

    • 01. 動作フロー
    • 02. 初期インストール
    • 03. STM32 Discovery Wi-Fi 初期設定
    • 04. デバッグログ取得方法
    • 05. システムLED動作
    • 06. イベントメッセージ
    • 07. ファームウェア更新方法

    neqto.js

    • 01. About neqto.js
    • 02. Log
    • 03. Timers
    • 04. HTTP
    • 05. HTTPS
    • 06. MQTT
    • 07. Secure
    • 08. Storage
    • 09. Sleep
    • 10. RTC
    • 11. UserSW
    • 12. GPIO
    • 13. UART
    • 14. SPI
    • 15. I2C
    • 16. ADC
    • 18. Utils
    • 19. nqDiscovery
    • 20. nqService
    • 21. nqMqtt
    • 22. nqFOTA
    • 23. nqWiFi

NEQTO Bridge

    ハードウェア仕様

    • 01. NEQTO Bridge Module
    • 02. NEQTO Bridge Wi-Fi Module
    • 03. NEQTO Bridge LTE-1 Module
    • 04. NEQTO Bridge LTE-M/NB Module
    • 05. NEQTO Bridge IO Board
    • 06. NEQTO Bridge Digital IO Board
    • 07. NEQTO Bridge Connector Board

    ソフトウェア仕様

    • 01. 動作フロー
    • 02. NEQTO Bridge Wi-Fi Module 初期設定
    • 03. NEQTO Bridge LTE Module 初期設定
    • 04. デバッグログ取得方法
    • 05. システムLED動作
    • 06. イベントメッセージ
    • 07. ファームウェア更新方法

    neqto.js

    • 01. About neqto.js
    • 02. Log
    • 03. Timers
    • 04. HTTP
    • 05. HTTPS
    • 06. MQTT
    • 07. Secure
    • 08. Storage
    • 09. Sleep
    • 10. RTC
    • 11. UserSW
    • 12. GPIO
    • 13. UART
    • 14. SPI
    • 15. I2C
    • 16. ADC
    • 17. BLE
    • 18. Utils
    • 19. nqBridge
    • 20. nqService
    • 21. nqMqtt
    • 22. nqFOTA
    • 23. nqWiFi
    • 24. nqLte
    • 25. nqLAN
    • 26. nqEx

Linux-based device

    ソフトウェア仕様

    • 01. システム要件
    • 02. インストール
    • 03. ソフトウェア構成
    • 04. 動作フロー
    • 05. デバッグログ取得方法
    • 06. イベントメッセージ
    • 07. ソフトウェア更新方法

    neqto.js

    • 01. About neqto.js
    • 02. Log
    • 03. Timers
    • 04. HTTP
    • 05. HTTPS
    • 06. MQTT
    • 07. Secure
    • 08. Storage
    • 09. RTC
    • 10. UNIXSocket
    • 11. FileSystem
    • 12. SubProcess
    • 13. SubTask
    • 14. Queue
    • 15. Utils
    • 16. nqLinux
    • 17. nqService
    • 18. nqMqtt
    • 19. nqFOTA
    • 20. nqLAN

neqto.js Libraries

  • About neqto.js Libraries
  • UART

    • GM65 Barcode Reader
    • SRF Ultrasonic Range Finder - Serial Mode

    I2C

    • HTS221 v2 Temperature and Humidity Sensor
    • LIS2DW12 v2 Accelerometer
    • SRF Ultrasonic Range Finder - I2C Mode
    • [Archive] HTS221 Temperature and Humidity Sensor
    • [Archive] LIS2DW12 Accelerometer

    Utils

    • RTC Alarm Synchronized Scheduler

    Integration

    • AWS S3 v2
    • AWS IoT Core v2
    • Azure IoT v2
    • [Archive] GCP IoT Core
    • [Archive] AWS S3
    • [Archive] AWS IoT Core

neqto.js Snippets

  • About neqto.js Snippets
  • DataDog
  • Dropbox
  • Google Sheets
  • InfluxDB
  • Oracle Cloud Object Storage
  • Salesforce
  • Splunk
  • Niagara
  • [Archive] SAP Cloud Platform Internet of Things

Release Notes

  • NEQTO Console アップデート
  • NEQTO Firmware (Bridge Wi-Fi/LTE Module) リリース
  • NEQTO Firmware (STM32 Discovery Wi-Fi) リリース
  • NEQTO Firmware (Spresense Wi-Fi/LTE-M) リリース
  • NEQTO Engine Linux版 リリース
  • neqto.js Libraries リリース

HTS221 v2 Temperature and Humidity Sensor

このライブラリは、STMicroelectronics社製HTS221温湿度センサを制御する機能を提供する組み込みクラスです。

Library usage requirements
Type I2C
Name HTS221_V2
Version 2020-11-04
Code size used 3.4KB
Resources used I2C x 1, Timers x 1

関連資料

STMicroelectronics社製HTS221温湿度センサの詳細については、データシートを参照してください。



Abstracts

Methods()/PropertiesSummary
new HTS221()HTS221インスタンスを作成します。

{HTS221} Instance

Methods()/PropertiesSummary
.write()I2Cデバイスの指定されたレジスタに1バイトのデータを書き込みます。
.read()I2Cデバイスの指定されたレジスタから1バイトのデータを読み込みます。
.init()センサを初期化します。
.measOn()センサの電源を入れ、シングル測定を開始します。
.measOff()センサの電源を切り、消費電力を削減します。
.checkStatus()センサの測定状態を確認します。
.getResult()温湿度の測定結果を取得します。
.checkStatusAndGetResult()センサの測定完了を待ってから、温湿度の測定結果を取得します。

Details

new HTS221(i2c)

アクティブ化されたI2Cオブジェクトを使用してHTS221インスタンスを作成します。

Instance Methods

.write()

I2Cデバイスの指定されたレジスタに1バイトのデータを書き込みます。
センサのレジスタに直接アクセスする場合に使用します。

NameTypeDefaultSummary
regnumberMANDATORY対象レジスタ
設定範囲: 0x00~0xFF
datanumberMANDATORY書き込みデータ
設定範囲: 0x00~0xFF
returnboolean-true: 成功
false: 失敗

.read(reg)

I2Cデバイスの指定されたレジスタから1バイトのデータを読み込みます。
センサのレジスタに直接アクセスする場合に使用します。

NameTypeDefaultSummary
regnumberMANDATORY対象レジスタ
設定範囲: 0x00~0xFF
returnnumber, undefined-読み込んだデータ
読み込みに失敗した場合は undefined を返します。

.init([avgT[,avgH]])

センサを初期化します。
このメソッドは、インスタンス作成後、はじめに呼び出す必要があります。
センサの温湿度測定用分解能モードを変更することができます。詳細については、センサのデータシートをご参照ください。

NameTypeDefaultSummary
avgTnumber7温度の平均サンプル数
設定範囲: 0~7
avgHnumber7湿度の平均サンプル数
設定範囲: 0~7
returnboolean-true: 成功
false: 失敗

.measOn()

センサの電源を入れ、センサのone-shot測定機能を使用して、温湿度のシングル測定を開始します。
.checkStatus()で測定完了を待つ必要があります。
尚、新たに測定を開始する場合は、このメソッドを再度呼び出す必要があります。

NameTypeDefaultSummary
returnundefined-

.measOff()

センサの電源を切り、消費電力を削減します。

NameTypeDefaultSummary
returnundefined-

.checkStatus()

センサの測定状態を確認します。

NameTypeDefaultSummary
returnboolean-true: 測定完了、データ読み出し可能です。
false: 測定中です。

.getResult()

温湿度の測定結果を取得します。

NameTypeDefaultSummary
returnObject, undefined-測定結果は{Results}オブジェクトで返却されます。
失敗した場合はundefinedが返ります。

{Results}

NameTypeDescriptionNote
.tempnumber温度(°C)
.huminumber湿度(%RH)

.checkStatusAndGetResult()

センサの測定完了を待ってから、温湿度の測定結果を取得します。

NameTypeDefaultSummary
returnObject, undefined-測定結果は{Results}オブジェクトで返却されます。
失敗した場合はundefinedが返ります。

Usage Examples

Sample 1: シングル測定

// IMPORTED LIBRARIES
// - HTS221_V2

// Logging setup
log.setLevel(0,2); //-1:NONE 0:ERROR 1:WARNING 2:DEBUG 3:TRACE, 0:DISABLE 1:LOG 2:CONSOLE 3:BOTH
log.printLevel(2); //0:DISABLE 1:LOG 2:CONSOLE 3:BOTH

// I2C Configuration
var i2c;
if('nqBridge' in this){
    if(nqEx.getBoardType()){
        // Using NEQTO Bridge IO Board or NEQTO Bridge Digital IO Board.
        nqEx.enI2CS(true);
        nqEx.enI2CL(true);
    }
    i2c = new I2C(1);
} else if('nqSpresense' in this){
    i2c = new I2C(0);
} else if('nqDiscovery' in this){
    i2c = new I2C(2);
} else{
    throw("Incompatible device.");
}

i2c.open(400000); // Baudrate: 400000
var hts221 = new HTS221(i2c);
var ready = hts221.init();

if (!ready) {
    print("Error: Unable to connect to HTS221");
} else {
    var dateTime = new Date();
    hts221.measOn();
    while(!hts221.checkStatus());
    var results = hts221.getResult();
    hts221.measOff();
    if(!results) {
        print("Error: Failed measurement.");
    } else{
        print(dateTime.toString() + ", Temp: " + results.temp + ", Humi: " + results.humi);
    }
}

i2c.close();

Sample 2: 周期的に測定を行い、平均値を算出します

// IMPORTED LIBRARIES
// - HTS221_V2

// Logging setup
log.setLevel(0,2); //-1:NONE 0:ERROR 1:WARNING 2:DEBUG 3:TRACE, 0:DISABLE 1:LOG 2:CONSOLE 3:BOTH
log.printLevel(2); //0:DISABLE 1:LOG 2:CONSOLE 3:BOTH

// I2C Configuration
var i2c;
if('nqBridge' in this){
    if(nqEx.getBoardType()){
        // Using NEQTO Bridge IO Board or NEQTO Bridge Digital IO Board.
        nqEx.enI2CS(true);
        nqEx.enI2CL(true);
    }
    i2c = new I2C(1);
} else if('nqSpresense' in this){
    i2c = new I2C(0);
} else if('nqDiscovery' in this){
    i2c = new I2C(2);
} else{
    throw("Incompatible device.");
}

i2c.open(400000); // Baudrate: 400000
var hts221 = new HTS221(i2c);
var ready = hts221.init();

var results;
var count = 0;
var sums = [0, 0];
var AVE_NUM = 10;
var MEAS_INTERVAL = 1000; // in milliseconds

if (!ready) {
    print("Error: Unable to connect to HTS221");
} else {
    var to = setInterval(function () {
        var dateTime = new Date();
        hts221.measOn(); // Necessary to start a new measurement.
        results = hts221.checkStatusAndGetResult(); // Blocking
        hts221.measOff();
        if(!results) {
          print("Error: Failed measurement.");
        }
        else{
          count++;
          sums[0] += results.temp;
          sums[1] += results.humi;
          print(dateTime.toString() + ", Temp: " + results.temp + ", Humi: " + results.humi);

          if (count == AVE_NUM) {
              print("[Average] Temp: " + (sums[0] / AVE_NUM).toFixed(2) + ", [Average] Humi: " + (sums[1] / AVE_NUM).toFixed(2));

              // Finished measuring.
              clearInterval(to);
              i2c.close();
          }
        }
    }, MEAS_INTERVAL)
}
上記に記載されている会社名、製品名は、各社の登録商標または商標です。

Updated: 2021-10-05
← 前次 →
  • Abstracts
    • {HTS221} Instance
  • Details
    • new HTS221(i2c)
    • Instance Methods
  • Usage Examples
    • Sample 1: シングル測定
    • Sample 2: 周期的に測定を行い、平均値を算出します
NEQTO とはニュースサービスFAQプライバシーポリシー脆弱性開示ポリシー
NEQTO Console
はじめに基本情報管理者専用の操作デバイス管理NEQTO Apps
NEQTO Bridge
NEQTO Bridge ピン配置NEQTO Bridge Wi-Fi ModuleNEQTO Bridge LTE-1 Moduleデバッグログ取得方法イベントメッセージ
APIのドキュメント
APIの利用グローバル APIリージョン APIAPIサービス利用規約
Jigsaw, Inc.
© 2025 JIG-SAW INC.