i2c-ntc-temp-read.ino
Lecture d'un capteur de température NTC connecté via un convertisseur ADC I2C.
Suppose un capteur ADS1115 à l'adresse 0x48. Les broches SCL/SDA doivent être pull-up. La conversion thermique dépend du circuit NTC spécifique. Adapte la formule de conversion à ta résistance thermistance.
i2c-ntc-temp-read.ino
#include <zephyr/kernel.h>
#include <zephyr/drivers/i2c.h>
#define I2C_NODE DT_ALIAS(i2c0)
#define ADDR 0x48
static const struct device *i2c_dev = DEVICE_DT_GET(I2C_NODE);
void main(void) {
uint8_t buf[2];
while (1) {
if (i2c_write_read(i2c_dev, ADDR, (uint8_t[]){0x85}, 1, buf, 2) == 0) {
int16_t raw = (buf[0] << 8) | buf[1];
float temp = raw * 0.0625f - 50.0f; // Exemple conversion
printk("NTC Temp: %.2f C\n", temp);
}
k_msleep(1000);
}
}