analogWrite 0–255
Задавайте коэффициент заполнения, чтобы управлять яркостью LED
«analogWrite 0–255» — бесплатный урок Arduino & IoT Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Arduino & IoT Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Arduino & IoT Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
The Command That Does PWM
To produce PWM you call one function: analogWrite. You give it a pin and a level, and the chip handles the fast pulsing for you.
analogWrite(9, 200);The Value Range Is 0 to 255
The second argument goes from 0 to 255. That is 256 steps, because one byte holds exactly that many values.
0 Means Fully Off
Pass 0 and the duty cycle is zero. The pin stays LOW the whole time, so the LED is completely dark.
analogWrite(9, 0); // LED off255 Means Fully On
Pass 255 and the duty cycle is 100%. The pin behaves just like digitalWrite HIGH, so the LED is at full brightness.
analogWrite(9, 255); // LED fullThe Middle Gives You Dimming
A value of 128 is roughly half power, so the LED looks about half as bright. Values in between give you a smooth scale.
analogWrite(9, 128); // about halfBigger Number, Brighter Light
The relationship is simple: a higher value means more on-time and more brightness. Lower values dim the LED down.
Pick a PWM-Capable Pin
analogWrite only does true PWM on the tilde-marked pins. On a non-PWM pin it just snaps fully on or off at the halfway point.
Set the Pin as OUTPUT First
Just like a normal LED, declare the pin as OUTPUT in setup so it can drive current before you call analogWrite.
pinMode(9, OUTPUT);A Tiny Working Sketch
Here is the whole idea: in setup mark the pin OUTPUT, then in loop hold it at a steady mid-brightness level.
void setup() {
pinMode(9, OUTPUT);
}
void loop() {
analogWrite(9, 100);
}Brightness Is Not Perfectly Linear
Doubling the value does not exactly double how bright it looks, because human eyes sense light on a curve, not a straight line.
It Works on Motors Too
analogWrite is not only for LEDs. The same 0 to 255 value can set a motor's speed through a driver. ⚙️
Quick Check
Make sure the value range is crystal clear.
Recap: analogWrite Levels
analogWrite takes a pin and a value from 0 to 255: 0 is off, 255 is full, and the middle dims smoothly on PWM pins. 🌟
Часто задаваемые вопросы
Урок «analogWrite 0–255» бесплатный?
Да — полный текст урока «analogWrite 0–255» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Arduino & IoT Academy, подпишись на CoddyKit PRO. Курс Arduino & IoT Academy содержит 4 уроков всего.
Чему я научусь в уроке «analogWrite 0–255»?
Задавайте коэффициент заполнения, чтобы управлять яркостью LED Ты практикуешь Arduino & IoT Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Arduino & IoT Academy?
Предыдущий опыт не требуется. Arduino & IoT Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «analogWrite 0–255»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Arduino & IoT Academy?
Да. Каждый урок Arduino & IoT Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Что на самом деле делает PWM
- analogWrite 0–255
- Плавное увеличение и уменьшение яркости LED
- Ручка управляет яркостью LED