SZTUKA
Piękno i dobre samopoczucie
RZEMIOSŁO
KULTURA I HISTORIA
ROZRYWKA
ŚRODOWISKO
JEDZENIE I NAPOJE
ZIELONA PRZYSZŁOŚĆ
INŻYNIERIA ODWROTNA
NAUKI
LEKKOATLETYKA
TECHNOLOGIA
URZĄDZENIA DO NOSZENIA
Reading a Potentiometer — SIK Circuit 2
Ed

Created by

Ed

17. March 2026

Reading a Potentiometer — SIK Circuit 2

Learn to read analog input from a potentiometer and use it to control LED blink speed. Turn the knob to make the LED blink faster or slower — your first step into analog sensors!

Instructions

1

Parts & Introduction

In this experiment you'll use a potentiometer (a variable resistor with a knob) to control how fast an LED blinks. This introduces analogRead() — reading voltage levels between 0 and 5V as values from 0 to 1023.

Parts Needed

  • 1x Arduino Uno + USB cable
  • 1x Breadboard
  • 1x Potentiometer (10K)
  • 1x LED (any color)
  • 1x 330Ω Resistor
  • 6x Jumper Wires
2

Hardware Hookup

Wiring Instructions

  1. Place the potentiometer in the breadboard. It has three pins.
  2. Connect the left pin to GND and the right pin to 5V (or vice versa).
  3. Connect the middle pin (wiper) to Analog Pin A0.
  4. Place an LED in the breadboard. Connect the positive leg (longer) to Digital Pin 13.
  5. Connect the negative leg (shorter) through a 330Ω resistor to GND.
  6. Connect the 5V and GND rails on the breadboard to the Arduino.
3

Arduino Code

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

potentiometer.inoarduino
/*
SparkFun Inventor's Kit
Example sketch 02 — POTENTIOMETER

Measure the position of a potentiometer and use it to
control the blink rate of an LED. Turn the knob to make
it blink faster or slower!

This code is completely free for any use.
Visit http://learn.sparkfun.com/products/2 for SIK information.
*/

int sensorPin = 0;    // Potentiometer on analog pin 0
int ledPin = 13;      // LED on digital pin 13

void setup()
{
  pinMode(ledPin, OUTPUT);
}

void loop()
{
  int sensorValue;

  sensorValue = analogRead(sensorPin);

  digitalWrite(ledPin, HIGH);
  delay(sensorValue);

  digitalWrite(ledPin, LOW);
  delay(sensorValue);
}
4

Test & Experiment

What You Should See

The LED blinks faster or slower as you turn the potentiometer knob. At one extreme it blinks very fast, at the other it blinks slowly.

Troubleshooting

  • Sporadically working: The potentiometer pins may not be making good contact. Press it firmly into the breadboard.
  • Not working: Make sure the wiper (middle pin) goes to Analog pin 0, not Digital pin 0.
  • LED not lighting: LEDs only work in one direction. Flip it around.

Experiments to Try

  • Open the Serial Monitor and print the sensorValue to see the raw numbers (0-1023).
  • Use map() to convert the sensor range to a brightness range and control LED brightness with analogWrite().

Materials

  • SparkFun Inventor's Kit - V3.2 - 1 kitNOK 999.20
    Zobacz
  • Arduino Uno R3 - 1 piecePlaceholder
    Zobacz
  • Breadboard - 1 piecePlaceholder
    Zobacz
  • Potentiometer (10K) - 1 piecePlaceholder
    Zobacz
  • 5mm LED - 1 piecePlaceholder
    Zobacz
  • 330 Ohm Resistor - 1 pieceNOK 24.00
    Zobacz
  • Jumper Wires - 6 piecessNOK 39.20
    Zobacz

Wymagane narzędzia

  • Computer with Arduino IDE

CC0 Public Domain

Ten plan jest udostępniany na licencji CC0. Możesz go swobodnie kopiować, modyfikować, rozpowszechniać i wykorzystywać do dowolnych celów, bez konieczności uzyskiwania zgody.

Wesprzyj Makera kupując produkty przez jego plan, za co zarabia Prowizja Makera ustalony przez sprzedawców, lub stwórz nową iterację tego planu i dołącz go jako połączenie w swoim własnym planie, aby dzielić się przychodami.

Discussion

(0)

Log in aby dołączyć do dyskusji

Ładowanie komentarzy...