ARTE
BELLEZZA E BENESSERE
MESTIERE
CULTURA E STORIA
DIVERTIMENTO
AMBIENTE
CIBO E BEVANDE
FUTURO VERDE
INGEGNERIA INVERSA
SCIENZE
SPORT
TECNOLOGIA
INDOSSABILI
Reading a Temperature Sensor — SIK Circuit 7
Ed

Creato da

Ed

17. March 2026

Reading a Temperature Sensor — SIK Circuit 7

Read temperature from a TMP36 sensor and display Celsius and Fahrenheit readings on the Serial Monitor. Your introduction to serial communication and real-world data.

Istruzioni

1

Parts & Introduction

The TMP36 is an analog temperature sensor that outputs a voltage proportional to temperature. You'll learn to use the Serial Monitor to display real-time readings — an essential debugging tool.

Parts Needed

  • 1x Arduino Uno + USB cable
  • 1x Breadboard
  • 1x TMP36 Temperature Sensor
  • 5x Jumper Wires

Warning: The TMP36 looks similar to the transistor. Look for "TMP" in tiny letters and a triangle logo. The transistor has "222" printed on it. Inserting the wrong component can damage it!

2

Hardware Hookup

Wiring Instructions

With the TMP36 flat side facing you and pins pointing down, the pins are (left to right): 5V, Signal, GND.

  1. Connect the left pin to 5V.
  2. Connect the middle pin (signal) to Analog Pin A0.
  3. Connect the right pin to GND.

That's it — just 3 wires! The TMP36 can only be connected in one direction. Double-check before powering on.

3

Arduino Code

Open the Arduino IDE and upload the following sketch to your Arduino board.

temperature_sensor.inoarduino
/*
SparkFun Inventor's Kit
Example sketch 07 — TEMPERATURE SENSOR

Use the serial monitor to read temperature from a TMP36 sensor.

Hardware connections:
  TMP36 (flat side, pins down, left to right): 5V, SIGNAL, GND
  Connect 5V pin to 5V, SIGNAL pin to analog pin 0, GND pin to GND.

This code is completely free for any use.
*/

const int temperaturePin = 0;

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  float voltage, degreesC, degreesF;

  voltage = getVoltage(temperaturePin);

  degreesC = (voltage - 0.5) * 100.0;
  degreesF = degreesC * (9.0/5.0) + 32.0;

  Serial.print("voltage: ");
  Serial.print(voltage);
  Serial.print("  deg C: ");
  Serial.print(degreesC);
  Serial.print("  deg F: ");
  Serial.println(degreesF);

  delay(1000);
}

float getVoltage(int pin)
{
  return (analogRead(pin) * 0.004882814);
  // Converts 0-1023 to 0.0-5.0 volts
}
4

Test & Experiment

What You Should See

Open the Serial Monitor (magnifying glass icon in Arduino IDE, or Ctrl+Shift+M). You'll see lines updating once per second:

voltage: 0.73  deg C: 23.24  deg F: 73.84

Troubleshooting

  • Nothing happens: Open the Serial Monitor! The output goes there, not to the LEDs.
  • Gibberish text: Set the Serial Monitor baud rate dropdown to 9600.
  • Temperature unchanged: Pinch the sensor with your fingers to warm it up, or apply ice to cool it down.

Experiments to Try

  • Add an LED that turns on above a temperature threshold (like a heat warning).
  • Log data over time to see temperature trends.
  • Combine with the LCD (Circuit 15) to display temperature without a computer.

Materiali

  • SparkFun Inventor's Kit - V3.2 - 1 kitNOK 999.20
    Visualizza
  • Arduino Uno R3 - 1 pieceSegnaposto
    Visualizza
  • Breadboard - 1 pieceSegnaposto
    Visualizza
  • TMP36 Temperature Sensor - 1 pieceSegnaposto
    Visualizza
  • Jumper Wires - 5 piecessNOK 39.20
    Visualizza

Strumenti richiesti

  • Computer with Arduino IDE

CC0 Pubblico dominio

Questo progetto è rilasciato sotto CC0. Sei libero di copiare, modificare, distribuire e utilizzare quest'opera per qualsiasi scopo, senza chiedere permesso.

Supporta il Maker acquistando prodotti tramite il suo progetto dove guadagna una Commissione Maker stabilita dai venditori, oppure crea una nuova iterazione di questo progetto e includilo come collegamento nel tuo progetto per condividere i ricavi.

Discussione

(0)

Accedi per partecipare alla discussione

Caricamento commenti...