0

私は STM32CUBE IDE を使用していますが、たとえば LPS25HB 温度および圧力センサーを含む X-Nucleo-IKS01A1 ボードからのデータの読み取りに苦労しています。

データシートによると、アドレスとレジスタを定義しました:

static const uint8_t LPS25HB_ADDR = 0xB9;
static const uint8_t TEMP_OUT_L = 0x2B;
static const uint8_t TEMP_OUT_H = 0x2C;

次に、I2c 経由でデータを読み取り、生データを摂氏に変換したいと考えました。

//Read 2 consecutive registers in autoincrement mode starting from LPS25_TEMP_OUT_L
ret = HAL_I2C_Mem_Read(&hi2c1, LPS25HB_ADDR, TEMP_OUT_L|0x80, 1, Buffer, 2, HAL_MAX_DELAY); 
temp_c=(short int)(((unsigned short int)Buffer[1]<<8)+((unsigned short int)Buffer[0]));
//ret = HAL_OK so I think I am fine

しかし、何があっても(センサーアドレスの変更、センサーの加熱など)、8306 Cに等しい出力が得られます-そして、太陽に移動しませんでした、

私はこの分野の初心者であり、取得などの前にセンサーにデータを送信する必要があるかどうかわかりませんか? HTS221 に関連するトピックなど、いくつかの同様のトピックを読んでいましたが、そのような情報は見つかりませんでした。

4

0 に答える 0