Аналоговое чтение фиктивного файла

Можем ли мы использовать просто аналоговое чтение без его сохранения

Я слышал, что рекомендуется читать дважды

для большей точности

пример:

// Чтение дополнительных аналоговых входов
    for (int i = 0; i < 8; i++)
{
    // Считать аналоговый пин ни к чему.
        analogRead(i]); // аналоговое чтение ни во что не пишет
}


// Чтение аналоговых входов
for (int i = 0; i < length; i++)
{
    // Записываем состояние аналогового вывода в буфер ответа.
    slave.writeRegisterToBuffer(i, analogRead(analog_pins[address + i]));
}

, 👍1

Обсуждение

Вам нужно сделать это только в том случае, если вы меняете выводы между чтениями в автономном режиме. То, как вы сделали это здесь, не сработает, потому что вы меняете контакты после того, как ваш манекен прочитал. Вы бы хотели прочитать один и тот же пин два раза подряд. Но да, вы можете вызвать функцию без сохранения результата, чтобы ответить на ваш вопрос., @Delta_G


1 ответ


1

как насчет этого?

// Чтение аналоговых входов
for (int i = 0; i < length; i++)
{
    analogRead(analog_pins[address + i]); // для предварительного чтения

    // Записываем состояние аналогового вывода в буфер ответа.
    slave.writeRegisterToBuffer(i, analogRead(analog_pins[address + i]));
}
,