艺术
美容与健康
工艺
文化与历史
娱乐
环境
食品与饮料
绿色未来
逆向工程
科学
体育
技术
可穿戴设备
Reading a Temperature Sensor — SIK Circuit 7
Ed

创建者

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.

说明

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.

材料

  • SparkFun Inventor's Kit - V3.2 - 1 kitNOK 999.20
    查看
  • Arduino Uno R3 - 1 piece占位符
    查看
  • Breadboard - 1 piece占位符
    查看
  • TMP36 Temperature Sensor - 1 piece占位符
    查看
  • Jumper Wires - 5 piecessNOK 39.20
    查看

所需工具

  • Computer with Arduino IDE

CC0 公共领域

此蓝图以 CC0 协议发布。你可以自由复制、修改、分发和使用此作品,无需征得许可。

通过购买蓝图中的产品支持创客,他们将获得 创客佣金 (由供应商设定),或创建此蓝图的新版本并将其作为连接包含在你自己的蓝图中以分享收入。

讨论

(0)

登录 加入讨论

加载评论中...