#1 2018-05-04 08:20:34

renoshnik
Учасник
Зареєстрований: 2017-04-03
Повідомлень: 1,025

снова про вольтметр

Тема вольтметра, наверное, вторая по популярности (заезженности) после «блинка». Но все же решился написать про свой способ измерения напряжения.
Естественно самым точным (при применении «голой» ардуины) будет способ с использованием внешнего опорного напряжения. Но на ProMini вывод для подключения AREF отсутствует, там он просто подключен через конденсатор к GND. Поэтому приходится, что-то придумывать.
Если «загуглите» тему «секретный вольтметр» то это как раз, то о чем я буду рассказывать.
Суть задачи в том, чтобы вначале используя внутреннее опорное напряжение 1.1V измерить напряжение питания контроллера Vcc, которое потом будет использовано как опорное напряжение.
Ниже показан примерный скетч, который это и выполняет. Скетч я закомментировал, поэтом особо расписывать тут не буду.

Это настройки :

https://a.d-cd.net/6f41c404k1de-1920.jpg

В строке 6 задаем значение опорного напряжения (в реале оно не всегда 1.1V и отличается у экземпляров МК). Для этого измеряем мультиметром напряжение Vcc на плате и корректируем VBG, пока расчетное значение не совпадет с реальным значением.
В строках 22 – 24 немного ускоряем работу АЦП.

Собственно функция измерения напряжения:

https://a.d-cd.net/6f41c404k233-1920.jpg

В строке 71 задаем вход АЦП на котором будем измерять напряжение:
А0 = 0000, А1 = 0001, А2 = 0010,А3 = 0011, А4 = 0100, А5 = 0101, А6 = 0110, А7 = 0111

Вот полученный результат:

https://a.d-cd.net/6f41c404k1ed-960.jpg

Обратите внимание на выделенные участки, это замкнул вывод A0 на Vcc …

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму