Функция AnalogWrite выдает меньшее напряжение, чем digitalWrite на моей плате.
Я не могу понять, почему выходное напряжение analogWrite(255)
меньше напряжения digitalWrite(255)
. Мой код и изображение моей установки приведены ниже. Другая полезная информация заключается в том, что я использую NodeMCU от HiLetgo, резисторы сопротивлением 3,3 кОм с измерителями, и что измерители используют ток постоянного тока 1 мА в полной шкале. Спасибо за вашу помощь!
int pPressure = D2;
int pPrecipProb = D1;
int pWindSpeed = D0;
int mTemperature;
int mHumidity;
int mPressure;
int mPrecipProb;
int mWindSpeed;
int mAlert;
void setup() {
Serial.begin(9600);
pinMode(pPrecipProb, OUTPUT);
pinMode(pWindSpeed, OUTPUT);
pinMode(pPressure, OUTPUT);
pinMode(LED_BUILTIN, OUTPUT); // Инициализируем вывод LED_BUILTIN как выход
}
// функция цикла выполняется снова и снова, вечно
void loop() {
mPressure = (int) constrain(mPressure + 1, 0, 255);
mPrecipProb = (int) constrain(mPrecipProb + 1, 0, 255 );
mWindSpeed = (int) constrain(mWindSpeed + 1, 0, 255 );
if(mPressure == 255)
{
mPressure = 0;
mPrecipProb = 0;
mWindSpeed = 0;
}
digitalWrite(pPressure, HIGH );
analogWrite(pPrecipProb, 255 );
analogWrite(pWindSpeed, mWindSpeed );
delay(10);
}
Слева: AnalogWrite(255)
Средний: DigitalWrite(HIGH)
Справа: второй, который ездит на велосипеде
@user3242816, 👍-1
Обсуждение0
Смотрите также:
- Случайная ошибка "Compilation error: Error: 13 INTERNAL: exit status 1". Как устранить или что вызывает эту ошибку
- Опасно ли соединять два выходных контакта вместе?
- Attiny85 простая проблема с аналоговым и цифровым выходом
- Аналоговая запись (PIN, 1023) <>Цифровая запись (PIN, HIGH)
- Копировать выходной сигнал ШИМ на другой выходной контакт?
- Как одновременно управлять ШИМ и цифровыми контактами через Ethernet в Arduino
- Проверить возможности PIN во время компиляции
- Есть ли способ воспроизводить звуки с Arduino без использования звукового экрана?
Пробовали ли вы поменять местами измерители/резисторы?, @Ignacio Vazquez-Abrams
Эти аналоговые счетчики могут нагружать (потреблять ток, достаточный для падения напряжения) «аналоговый» выход. Цифровой выход, вероятно, имеет более высокую способность возбуждения. Я не знаю этого наверняка, поэтому не ставлю это в качестве ответа., @slightlynybbled
@slightlynybbled: AnalogWrite() на ESP8266 выполняет (программное) ШИМ на обычном цифровом выходе., @Ignacio Vazquez-Abrams