АЦП прерывание
- Войдите на сайт для отправки комментариев
Вс, 02/10/2016 - 00:19
Здравствуйте!
Необходимо снимать показания с ацп 10 раз в секунду. Скажите пожалуйста как лучше это реализовать?
оснавной цикл желательно не занимать простоями, думаю может использовать таймер с прерыванием?
вобщем в итоге хочу чтобы преобразование запускалось от прерывания и ацп по окончанию преобразования вызывал прерывание, и тогда получится что основной цикл будет незадействован.
Буду рад любой помощи, спс!
прерывания имеет смысл использовать, когда:
а) неизвесно, когда произойдёт событие.
б) время реакции на событие должно быть максимально минимально.
кароче класс титановый велосипед для delay без delay().
The Kaban, если Вам нужен один канал АЦП (не нужно сразу с нескольких снимать), может проще запустить его во FreeRunning режиме. От тогда будет снимать показания постоянно. А Вы уже по мере необходимости (10 раз в секунду или ещё как) будете считывать готовые показания, ни на такт не задерживаясь так не лучше?
Я использую библиотеку TimerOne. Как раз то, что Вам надо, если, конечно, не сделаете так, как сказал Евгений.
Да, если и сделает, та библиотека всё равно пригодится - читать-то показания надо периодически.
The Kaban 10 раз в секунду это не большая скорость. Хватит millis();