Аналоговая запись (PIN, 1023) <>Цифровая запись (PIN, HIGH)
Этот вопрос очень похож на этот. Я использую ESP8266, для которого максимальное значение analogWrite равно 1023, а не 255 для некоторых других плат Arduino, но я считаю, что принцип тот же.
Я подключаю 3 светодиода непосредственно к 3 выходам через токоограничивающие резисторы.
Когда я включаю их с помощью analogWrite (PIN, 1023), они не такие яркие, как когда один и тот же светодиод управляется одним и тем же выводом с помощью digitalWrite (PIN, HIGH). Это наводит меня на мысль, что либо 1023 не дает 100% рабочего цикла, либо максимальное напряжение в аналоговом корпусе меньше, чем в цифровом. Можно ли этого ожидать? Значимы ли вывода (4,5 и 14)?
Другие подобные вопросы и ответы привели бы меня к мысли, что они должны быть одинаковыми.
@Peter Jennings, 👍0
Обсуждение1 ответ
Я могу подтвердить, что 1023 действительно дает 100% рабочий цикл. Я подключил выход моего D1 Mini к своему осциллографу и получил постоянное напряжение.
Я также могу подтвердить, что одно и то же напряжение выводится для digitalWrite()
и analogWrite()
.
Однако выходные драйверы могут быть разными. При использовании analogWrite()
может использоваться более слабый выходной драйвер, который не может выдавать столько тока, поэтому напряжение падает немного больше, чем при использовании digitalWrite()
. Однако даже с резистором 470 Ом, подключенным между выходом и GND (наименьшее значение, которое я мог легко передать в варианте со сквозным отверстием) Я вообще не вижу никаких изменений в напряжении.
Так что, если есть какие-то различия, то это может быть какая-то переменная, которая показывает различия в вашем конкретном подразделении, но не в моем.
- Случайная ошибка "Compilation error: Error: 13 INTERNAL: exit status 1". Как устранить или что вызывает эту ошибку
- установка выходного аналогового/цифрового контакта на землю
- Опасно ли соединять два выходных контакта вместе?
- ESP 8266 обратное поведение digitalWrite на каких контактах?
- Attiny85 простая проблема с аналоговым и цифровым выходом
- Функция AnalogWrite выдает меньшее напряжение, чем digitalWrite на моей плате.
- Не удается заставить Wi-Fi модуль esp8266-12 всегда точно считывать входящее напряжение analogRead
- Копировать выходной сигнал ШИМ на другой выходной контакт?
Попробуйте проверить напряжение на выводе, но в основном напряжение меньше на 0,1 при использовании шим, чем при простой настройке высокого значения вывода., @xbox gamer
Попробуйте измерить ток и посмотреть, есть ли разница. Это может быть правдой. Я знаю, например, что процессоры STM имеют низкоскоростные и высокоскоростные выходы, и они имеют разные характеристики обработки тока. Если это проблема в вашем приложении, вы можете буферизировать выходной сигнал, управляя транзистором, подключенным к светодиоду, вместо того, чтобы управлять светодиодом напрямую., @Gerben
максимальное значение по умолчанию равно 255. https://arduino-esp8266.readthedocs.io/en/latest/reference.html#analog-output, @Juraj
Диапазон по умолчанию изначально был 1023, поэтому он немного отличается от версии к версии, @xbox gamer
извините, да, это 1023. документ изменен на 3.0.0, @Juraj