Частота выборки "Чтение аналогового напряжения"

В этом примере Arduino:

ReadAnalogVoltage

Какой будет частота дискретизации, если я запустю ее на MEGA 2560? И что я должен сделать, чтобы установить частоту дискретизации на 6 кГц?

Спасибо.

1 ответ

В этом случае вы должны добавить delay(166), это было бы что-то около 6,024 Гц. Но с плавающей точкой на Arduinos очень медленно, так что это может быть медленнее, чем это. Кроме того, одна миллисекунда в Arduino - это не 1000 мкс, а 1024 мкс, поэтому она может быть даже меньше 6 Гц.

Лучший способ - настроить один таймер на автоматический запуск ADC и использовать ADIF (AD Interrupt Flag) для чтения значения из ADC зарегистрируйте пару, снимите флажок, сделайте математику и дождитесь следующего чтения. Но это трудный путь для новичка.

Изменить: для 6 кГц это был бы гораздо более автоматический режим запуска и значения в mV как целое число Арифметика с плавающей точкой чрезвычайно медленная, поскольку она просто эмулируется программным обеспечением.

Другие вопросы по тегам