DeXteR 0 20 октября, 2005 Опубликовано 20 октября, 2005 · Жалоба Добрый день уважаемые СПЕЦИАЛИСТЫ Поделитесь пожалуйста опытом по связыванью Атмеги32 и батарейки Необходимо чтоб при выключении питания ОЗУ AVR не сбрасывалось или сбрасывалось в случае повреждения (севшая батарейка) Если несложно - пару ссылок с исходниками или дельных советов. Счас собрал схему и написал прогу которая: 1. Мерит сигнал свидетельствующий о работе источника (12 вольтовая шина устроцства) с пом. АЦП и усыпляет контроллер если напряжение падает (источник выключаеться). 2. Атмега уходит в Павердаун и будиться вочдогом каждые 2 секунды. 3. По пробуждению мерим с пом АЦП тот же сигнал Если источник не включен - отдыжаем дальше. Существуют проблеммы: 1. Иногда вместо того чтоб уснуть Атмега глючит или делает чтото нетак и потребление резко возрастает. 2. Потребление в слипе - 300 микроампер вместо обещаных <10 3. Предлагат выключать Вочдог - но как тогда будить Атмегу - ваще непонимаю ... 4. Взял Атмегу 32 Л У нее вроде пониже питание Запустил на 8 мегагерц. Стало постабильнее но всеравно иногда (раз на 1000-й) память повреждаеться Думаю я чтото делаю нетак У кого есть опят - очень прошу - поделитесь Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
IgorKossak 0 20 октября, 2005 Опубликовано 20 октября, 2005 · Жалоба Т. к. вотчдог работает на внутреннем генераторе 1 МГц, то и потребляет поэтому. Я в своих проектах периодически пробуждаю МК либо по прерыванию от внешнего вотчдога (0,5 мкА), либо по прерыванию от асинхронного таймера, но для этого нужен внешний кварц 32768 Гц. Кроме того, при засыпании желательно поотключать ненужную периферию: - аналоговый компаратор (источник опорного потребляет); - АЦП; - привести выходы в такое состояние, чтобы не было утечки от обесточенной внешней периферии. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DeXteR 0 20 октября, 2005 Опубликовано 20 октября, 2005 · Жалоба К сожалению внешний поставить немогу Асинхронный таймер занят другим програмным делом =) Нащет внешних ног и переферии. Пробовал гасить все таимера АЦП UART и Ан. Комп. Сберег 20-30 микроампер. Порты отключаю так clr Temp out DDRA, Temp out DDRB, Temp out DDRC, Temp out DDRD, Temp Может нада ещо чтото Хотелось бы скинуть потребление микроампер до 60 -80 Нащет схемы - 5 вольт и 3- х вольтовая батарейка развязаны диодами Ресет микроконтроллра подвязан 3кОм к точке диодов Больше к этой точке ничего неподвязано. В датащите обещали <10 микроампер А я даже 100 немогу. Может гдето бока ?? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mse 0 20 октября, 2005 Опубликовано 20 октября, 2005 · Жалоба Да, асинхронный таймер жрёт меньше вочдогового. На м48 в пауэрдаун и внутреннем RC@8МГц, при пробуждении раз в сек и выполнении 1000 циклов, потребление было 7мкА@3-3,6В. Резко потребление растёт при 4В. 7мкА на 3В и около 70-80мка на 4,2В при прочих равных. Во как. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
BVU 0 20 октября, 2005 Опубликовано 20 октября, 2005 · Жалоба Добрый день уважаемые СПЕЦИАЛИСТЫ Поделитесь пожалуйста опытом по связыванью Атмеги32 и батарейки Необходимо чтоб при выключении питания ОЗУ AVR не сбрасывалось или сбрасывалось в случае повреждения (севшая батарейка) <{POST_SNAPBACK}> Для этого используются микропроцессорные супервизоры. Функциональность их очень разнообразна. Посмотрите продукцию (супервизоры) фирмы Maxim, либо другие. Так же в качестве удержания микроконтроллера в рабочем состоянии, после выключения питания, можно использовать ионистор, перед которым включаете диод в разрыв по питанию. Если схема малопотребляющая, не более 1mA, а емкость ионистора 1F энергии его должно хватить не менее чем на четверо суток. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
beer_warrior 0 20 октября, 2005 Опубликовано 20 октября, 2005 · Жалоба Хм, а нельзя его просто будить внешним прерыванием, от появления 12В (просто через высокомный делитель)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
IgorKossak 0 20 октября, 2005 Опубликовано 20 октября, 2005 · Жалоба Желательно также отключить fuse-биты: OCDEN, JTAGEN и BODEN. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
avv 0 20 октября, 2005 Опубликовано 20 октября, 2005 · Жалоба Порты отключаю так clr Temp out DDRA, Temp out DDRB, Temp out DDRC, Temp out DDRD, Temp Другими словами, переключаете на вход? Тогда наступаете на мои грабли. Проверить бы надо внимательно... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mse 0 20 октября, 2005 Опубликовано 20 октября, 2005 · Жалоба Порты отключаю так clr Temp out DDRA, Temp out DDRB, Temp out DDRC, Temp out DDRD, Temp Другими словами, переключаете на вход? Тогда наступаете на мои грабли. Проверить бы надо внимательно... <{POST_SNAPBACK}> Совверно. Надо на выход. И пуллапы отключить, если включены. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DeXteR 0 20 октября, 2005 Опубликовано 20 октября, 2005 · Жалоба Огромное спасибо за ссылку !!! Счас попробую сконфигурить все что можно на выходы и заземлить ... Всеже нащет входа в СлипМод Остаеться проблемма Надо бы подумать над програмной и аппаратной реализацией этой штуковины Ато у АЦП бывают помехи всякие и все такое. Очень нехочиться ставить всякие там Супервизоры и т. п. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mse 0 20 октября, 2005 Опубликовано 20 октября, 2005 · Жалоба Счас попробую сконфигурить все что можно на выходы и заземлить ... <{POST_SNAPBACK}> Ага, в "1" на выход и заземлить. ;О) "Никогда не повторяйте этот трюк дома" Тут или одно, или другое. Вместе либо опасно, либо смысла нет. Да и ноги потом могут понадобиться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DeXteR 0 21 октября, 2005 Опубликовано 21 октября, 2005 · Жалоба Огромное спасибо всем за помощь Перестал конфигурить выводы на вход Оставил то что было по программе Добился потребления в 200 микроампер Есть одна проблемма Похоже последняя Вопросс вот в чем Стал я работать не по АЦП которое мериет 12 вольт а по аналоговому компаратору который сравнивает Батарейку и 5 вольт Засыпать Атмега стала быстрее и вообще все стало намного лучше =) Проблемма в том что когда контроллер усыпает первый раз он потребляет на 50 микроампер больше. А когда полсле сброса по ВД чуть меньше 200 Наверно чтото из переферии остаеться работать. Никто незнает можно ли програмно вызвать в Атмеге сбросс идентичный аппаратному ( с обнулением всех регистров и Т. Д.) Ато искать что мне занулить и занулять лень и тянет быстродействие Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
BVU 0 21 октября, 2005 Опубликовано 21 октября, 2005 · Жалоба Огромное спасибо всем за помощь Перестал конфигурить выводы на вход Оставил то что было по программе Добился потребления в 200 микроампер Есть одна проблемма Похоже последняя Вопросс вот в чем Стал я работать не по АЦП которое мериет 12 вольт а по аналоговому компаратору который сравнивает Батарейку и 5 вольт Засыпать Атмега стала быстрее и вообще все стало намного лучше =) Проблемма в том что когда контроллер усыпает первый раз он потребляет на 50 микроампер больше. А когда полсле сброса по ВД чуть меньше 200 Наверно чтото из переферии остаеться работать. Никто незнает можно ли програмно вызвать в Атмеге сбросс идентичный аппаратному ( с обнулением всех регистров и Т. Д.) Ато искать что мне занулить и занулять лень и тянет быстродействие <{POST_SNAPBACK}> У ATmega32: – Six Sleep Modes: Idle, ADC Noise Reduction, Power-save, Power-down, Standby and Extended Standby. Выберите самый преемлемый для вашего устройства. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DeXteR 0 21 октября, 2005 Опубликовано 21 октября, 2005 · Жалоба To BVU Давно выбрал режим PowerDown Толька вот немогу добиться от него < 10 Микроампер как говориться в документации Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rst7 5 21 октября, 2005 Опубликовано 21 октября, 2005 · Жалоба Добрый день уважаемые СПЕЦИАЛИСТЫ Поделитесь пожалуйста опытом по связыванью Атмеги32 и батарейки Необходимо чтоб при выключении питания ОЗУ AVR не сбрасывалось или сбрасывалось в случае повреждения (севшая батарейка) Если несложно - пару ссылок с исходниками или дельных советов. Счас собрал схему и написал прогу которая: 1. Мерит сигнал свидетельствующий о работе источника (12 вольтовая шина устроцства) с пом. АЦП и усыпляет контроллер если напряжение падает (источник выключаеться). 2. Атмега уходит в Павердаун и будиться вочдогом каждые 2 секунды. 3. По пробуждению мерим с пом АЦП тот же сигнал Если источник не включен - отдыжаем дальше. Существуют проблеммы: 1. Иногда вместо того чтоб уснуть Атмега глючит или делает чтото нетак и потребление резко возрастает. 2. Потребление в слипе - 300 микроампер вместо обещаных <10 3. Предлагат выключать Вочдог - но как тогда будить Атмегу - ваще непонимаю ... 4. Взял Атмегу 32 Л У нее вроде пониже питание Запустил на 8 мегагерц. Стало постабильнее но всеравно иногда (раз на 1000-й) память повреждаеться Думаю я чтото делаю нетак У кого есть опят - очень прошу - поделитесь <{POST_SNAPBACK}> A не забыл ли ты выключить опорник АЦП (ADMUX=0, ADCSR=0 - в такой последовательности, до этого ацп должен быть включен)? Аналоговый компаратор (ACSR|=(1<<ACD))? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться