Grove - Temperature Sensor
Contents
Grove - Temperature Sensor (Seeed-Studio)
Caractéristiques
Temperature Sensor v1.2
Thermistance: NCP18WF104F03RC (NTC)
Tableau
| Seeeduino | Sensor | |
|---|---|---|
|
5V |
Red | |
|
GND |
Black | |
|
Not Conencted |
White | |
|
A0 |
Yellow | |
|
Grove - Temperature Sensor - | ||
Support
Connecter le 'Grove - Temperature Sensor' au connecteur A0
Voltage
3.3 ~ 5V
Port
connectez au port A0
Code Exemple
// Demo code for Grove - Temperature Sensor V1.1/1.2
// Loovee @ 2015-8-26
#include <math.h>
const int B = 4275; // B value of the thermistor
const int R0 = 100000; // R0 = 100k
const int pinTempSensor = A0; // Grove - Temperature Sensor connect to A0
void setup()
{
Serial.begin(9600);
}
void loop()
{
int a = analogRead(pinTempSensor);
float R = 1023.0/a-1.0;
R = R0*R;
float temperature = 1.0/(log(R/R0)/B+1/298.15)-273.15; // convert to temperature via datasheet
Serial.print("temperature = ");
Serial.println(temperature);
delay(1000);
}
Résultat
pas oublier d'indiquer 9600
Code avec XIAO-ESP32S3 sortie sur Serie
Grove Base for XIAO (Port A0) ✅
XIAO-ESP32S3
Temperature Sensor
#include <math.h>
const int analogPin = A0; // Port analogique utilisé
const float B = 3975; // Coefficient B du thermistor
const float R0 = 10000; // Résistance à 25°C (10kΩ)
const float T0 = 298.15; // Température en Kelvin (25°C)
void setup() {
Serial.begin(115200);
}
void loop() {
int raw = analogRead(analogPin);
// Éviter division par zéro
if (raw == 0) {
Serial.println("Erreur : lecture analogique nulle");
delay(1000);
return;
}
float resistance = (4095.0 - raw) * R0 / raw;
float temperatureK = 1.0 / (log(resistance / R0) / B + 1.0 / T0);
float temperatureC = temperatureK - 273.15;
Serial.print("Température : ");
Serial.print(temperatureC);
Serial.println(" °C");
delay(1000);
}
Code avec Oled
// Demo code for Grove - Temperature Sensor V1.1/1.2
// Loovee @ 2015-8-26
#include <Arduino.h>
#include <U8x8lib.h>
#include <Wire.h>
U8X8_SSD1306_128X64_NONAME_HW_I2C u8x8(/* clock=*/ SCL, /* data=*/ SDA, /* reset=*/ U8X8_PIN_NONE); // OLEDs without Reset of the Display
#include <math.h>
const int B = 4275; // B value of the thermistor
const int R0 = 100000; // R0 = 100k
const int pinTempSensor = A0; // Grove - Temperature Sensor connect to A0
void setup()
{
u8x8.begin();
u8x8.setFlipMode(1); // set number from 1 to 3, the screen word will rotary 180
Serial.begin(9600);
}
void loop()
{
int a = analogRead(pinTempSensor);
float R = 1023.0/a-1.0;
R = R0*R;
float temperature = 1.0/(log(R/R0)/B+1/298.15)-273.15; // convert to temperature via datasheet
u8x8.setFont(u8x8_font_chroma48medium8_r);
u8x8.setCursor(4, 10);
u8x8.print("T = ");
u8x8.print(temperature);
Serial.println("temperature = ");
Serial.println(temperature);
delay(1000);
}
Liens internes
Liens externes
www.seeedstudio.com/category/Grove-Temperature-Sensor-p-774.html shop
github.com/SeeedDocument/Seeed-WiKi/blob/master/docs/Grove-Temperature_Sensor.mdgithub
wiki.seeedstudio.com/Grove-Temperature_Sensor_V1. wiki