Перейти к содержанию
    

Контроль за питанием ATmega32

Всем привет!

Задача следующая. Необходимо контролировать питание контроллера, индикация светодиодами: ну например при нормальном питании - один цвет, при падающем - свечение меняется. Решил использовать внутренний АЦП, но не знаю как, какой, к примеру, лучше использовать Aref. Читал здесь на форуме, но так и не нашел нормального ответа.

 

Изначально все было так: AVcc соединялся с AREF; к AVcc, ADC0 и земле припаял переменник; и теперь на ADC0 подавалось половина AVcc. Ну запустил AЦП, вроде все заработало, при изменении переменником напряжения на ADC0 измнялась и индикация, вот, но потом понял, что ступил, так как при изменении самого напряжения питания контроллера ничего не работало, уровень на ADC0 относительно AVcc не менялся.

 

Короче, народ, подскажите плиз, как лучше сделать такую штуковину.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нормальное питание у него одно: 5V.

Как к примеру будете контроллировать питание 2V, когда сам контролллер уже после 4V не соображает и выключен BOD-ом?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нормальное питание у него одно: 5V.

Как к примеру будете контроллировать питание 2V, когда сам контролллер уже после 4V не соображает и выключен BOD-ом?

 

По даташиту питание у контроллера 4,5 - 5,5В

Я подаю 5В, при снижении ниже 4,5В должен показать это диодами

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я подаю 5В, при снижении ниже 4,5В должен показать это диодами
Тогда все проще. Хватит встроенного компаратора и делителя на дополнительном стабилизаторе, например на 3V.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тогда все проще. Хватит встроенного компаратора и делителя на дополнительном стабилизаторе, например на 3V.

 

На самом деле питание от 3-х батареек, т.е. 4,5В, затем повышающий стабилизатор до 5В.

 

А можно чуть поподробнее насчет компаратора и делителя, зачем стабилизатор на 3В? Схематично как это будет выглядить.

 

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

уровень на ADC0 относительно AVcc не менялся

Ничего никуда подавать не нужно. У вас и так питание уже подано на AVCC а значит его уже можно измерить. Просто используйте канал не ADC0, а канал 30.

 

Короче, народ, подскажите плиз, как лучше сделать такую штуковину.

У АЦП есть калибровочный канал 1.22V (Vbg). С помощью него и определяйте питание.

 

Aref = 1024 * 1.22V / ADC

 

По этой формуле вы найдете Reference, если референс поставить на AVCC (как оно у вас и стоит) == VCC - то и получите искомое питание.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ничего никуда подавать не нужно. У вас и так питание уже подано на AVCC а значит его уже можно измерить. Просто используйте канал не ADC0, а канал 30.

У АЦП есть калибровочный канал 1.22V (Vbg). С помощью него и определяйте питание.

 

Aref = 1024 * 1.22V / ADC

 

По этой формуле вы найдете Reference, если референс поставить на AVCC (как оно у вас и стоит) == VCC - то и получите искомое питание.

defunct просвети, разве 1.22В не жестко связано с внутренним опорным, кот. подается на АЦП

(хотя судя по структурной схеме - ты прав).

Но разброс 1.22В - те же самые +-10%!!!?

Изменено пользователем domowoj

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

defunct просвети, разве 1.22В не жестко связано с внутренним опорным, кот. подается на АЦП
Жестко связано, но никто не заставляет использовать внутреннее опорное. Если надо мерять VCC в MUX выбираем AVCC в качестве опорного.

 

Но разброс 1.22В - те же самые +-10%!!!?
Да, разброс есть все верно +/-10%, надо будет калибровать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На самом деле питание от 3-х батареек, т.е. 4,5В, затем повышающий стабилизатор до 5В.

А можно чуть поподробнее насчет компаратора и делителя, зачем стабилизатор на 3В?

Если стоит повышающий DC/DC, то дополнительное опорное не нужно. И АЦП тогда можно использовать. REF АЦП заводите на Vcc (+5V). Вход АЦП напрямую подцепляете к батарее - входу DC/DC. Тогда можно отслеживать уровень от 3,6V до 4,5V.

 

Путаница в том, что, как выяснилось, контроллировать Вам надо не питание контроллера, как было написано в теме, а уровень батарей _до_ стабилизатора. Питание контроллера от DC/DC у Вас _всегда_ будет +5V, пока уровень батарей не упадет ниже 3,0V (и питание контроллера пропадет).

Изменено пользователем VDG

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Но разброс 1.22В - те же самые +-10%!!!?

Хочу напомнить про резисторы в делителе -- у них тоже есть разброс.

Резисторы изготавливаются с различной точностью: и 10%, и 5%. Есть и прецезионные одно-процентные и более точные. Всякие есть. Не ошибитесь!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Всем огромное спасибо, пойду пробовать. Отпишусь позже о проделанном!!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У АЦП есть калибровочный канал 1.22V (Vbg). С помощью него и определяйте питание.

Чёта я не понял :07:

 

Мне всегда казалось, что "1,22V" - это стабилизированное напряжение, которое от Vcc никак не зависит (в определённых пределах конечно.. Например в диапозоне 2...5,5В)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чёта я не понял :07:

 

Мне всегда казалось, что "1,22V" - это стабилизированное напряжение, которое от Vcc никак не зависит (в определённых пределах конечно.. Например в диапозоне 2...5,5В)

 

Тоже ничего не понял :)

 

Схема, по моему разумению, такова:

AVCC = VCC, работа АЦП от internal reference.

На любой ADCx вешается делитель: на землю 1 кОм, на цепь измерения - 10 кОм.

 

Результирующее напряжение будет: 0.013105 * ADCx (в вольтах). Максимальное измеряемое напряжение 13.42В. Точность 10 мВ.

 

Пишешь на С? считай на флоатах :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Внутри есть встроенный источник опорного напряжения (примерно 2.5В).

Этот источник выбирается в управляющем регистре АЦП. При этом нога Vref через конденсатор вешается на землю и всё.

Можно использовать также ATmega32L, который можно питать напряжением от 3 вольт (а может даже и ниже, не помню) до 5.5В

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чёта я не понял :07:

Мне всегда казалось, что "1,22V" - это стабилизированное напряжение, которое от Vcc никак не зависит

Именно. Никак не зависит от VCC.

Именно поэтому с помощью Vbg и можно измерить VCC без доп. компонентов снаружи.

Внимательно посмотрите на приведенную выше формулу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...