digitalWrite
sets the output pin to either LOW or HIGH (where those voltages depend on the Vcc of the processor. For a Uno or Mega that would be 0V or 5V (or close to it).
Төменде digitalWrite (LOW) скриншоты бар:

Яғни, шығыс түйреуіші 0 В-да болады.
Енді digitalWrite (HIGH) үшін:
Шығу кернеуі 5В.

analogWrite
really should have been named PWMwrite since it configures the processor timers to output PWM (pulse-width modulation).
Келіңіздер, analogWrite (1):

Сіз кернеудің деңгейі ең көбі 0 В, ал қысқа мерзім ішінде 5 В-ге дейін жететінін көруге болады. Сондай-ақ, жиіліктің 490 Гц екенін көресіз, ол analogWrite арналған сілтеме беті болады.
Масштабтау:

Шығу 8 мкс-ке жоғары, бұл таймердің кезеңі болып табылатын 2048 мкс-тен 1/256 шамасында. Сонымен, бізде 1/256 (0,39%) цикл бар.
Келіңіздер, analogWrite (127) - 0-ден 255-ке дейін жарты жолда көрейік:

Енді сіз өнімді жарты уақытқа дейін HIGH және қалған уақыттың төмен екенін көре аласыз.
Келіңіздер, analogWrite (254):

This is the opposite of analogWrite (1). The output is HIGH all the time except for a brief period. Масштабтау:

Енді 8 μс үшін шығыс өшірулі - 8 μs болатын алдыңғы кескінмен салыстырғанда.
analogWrite (0)
is the same as digitalWrite (LOW)
.
analogWrite (255)
is the same as digitalWrite (HIGH)
.
Бұл wiring_analog.c ішіндегі тиісті кодпен дәлелденді:
if (val == 0)
{
digitalWrite(pin, LOW);
}
else if (val == 255)
{
digitalWrite(pin, HIGH);
}
Резюме
analogWrite
basically configures the hardware timers to output PWM. Once you do that the timer hardware outputs the requested duty cycle (from 0 to 255) where 0 is always off, 255 is always on, and some value inbetween gives you PWM (pulsed output).
Таймерлер туралы қосымша ақпарат алу үшін таймерлер туралы менің бетімді қараңыз .