Ручка регулирует яркость

map() переводит 0…1023 с потенциометра в 0…255 для ШИМ.

Средний уровень Arduino Uno C++
Схема подключения: Ручка регулирует яркость
Схема в симуляторе. Нажмите «Открыть в симуляторе», чтобы запустить её и поменять.

Что понадобится

Как подключить

ОткудаКуда
Arduino Uno5V→ПотенциометрVCC
Arduino UnoGND→ПотенциометрGND
Arduino UnoA0→ПотенциометрSIG
Arduino UnoD9→Резистор1
Резистор2→СветодиодA
СветодиодC→Arduino UnoGND

Скетч

// Потенциометр на A0 задаёт яркость светодиода на D9.
// analogRead даёт 0…1023, а analogWrite ждёт 0…255 — переводит map().
void setup() {
  pinMode(9, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  int raw = analogRead(A0);
  int duty = map(raw, 0, 1023, 0, 255);
  analogWrite(9, duty);
  Serial.print("ручка ");
  Serial.print(raw);
  Serial.print(" -> ШИМ ");
  Serial.println(duty);
  delay(100);
}

Коротко о детали: Потенциометр

Переменный резистор: ручка делит напряжение между крайними выводами. Средний вывод даёт от нуля до напряжения питания и читается analogRead(). Самый простой способ ввести в скетч плавно меняющееся число.

Распиновка и все примеры →

Ещё примеры с деталью «Потенциометр»

Попробуйте сами

Симулятор работает прямо в браузере: схему можно менять, код — править, а результат видно сразу. Бесплатно, без установки и регистрации.

Открыть «Ручка регулирует яркость» в симуляторе