Обсуждаем контроллеры компании Atmel.
Ответить

Re: Часы на Atmega8515 и ds1307

Сб янв 20, 2018 17:12:35

Dimon456 писал(а):Не все тинки имеют RTC.
зато все имеют таймер, остается считать его переполнения...
замутить несложную программку и можно полностью заменить RTC микросхему + коррекцию хода добавить можно, основное время она будет спать и в случае отключения питания от батареи проработает долго. делал я часы в машину с семисегментником с 8МГц кварцем - идут очень точно, СПИ вместо дисплея сделать не проблема...
Правда не все тиньки имеют контакты для кварца...

Re: Часы на Atmega8515 и ds1307

Сб янв 20, 2018 17:42:29

Ivanoff-iv писал(а):
Dimon456 писал(а):Не все тинки имеют RTC.
зато все имеют таймер, остается считать его переполнения...
замутить несложную программку и можно полностью заменить RTC микросхему + коррекцию хода добавить можно, основное время она будет спать и в случае отключения питания от батареи проработает долго. делал я часы в машину с семисегментником с 8МГц кварцем - идут очень точно, СПИ вместо дисплея сделать не проблема...
Правда не все тиньки имеют контакты для кварца...
Автомобильный камулятор с 3 вольтовой батарейкой не сравнивайте.
Элемент CR2032 имеет емкость 210мАч, не конечно можно поставить литевый АКБ емкостью так 10ач.
Средний потребляемый ток AVR 4мА, несложно подсчитать на сколько хватить CR2032.
Без RTC и режима Power-save mode не обойтись, я про асинхронный режим таймера в меге (у 8меги RTC на втором таймере), потребление в этом режиме мегой меньше 4 мкА.

Re: Часы на Atmega8515 и ds1307

Сб янв 20, 2018 20:07:05

там экрана не будет (уже экономия), бОльшую часть времени мк спит и потребляет немного, а запитанный от 37кГц он и в активном состоянии непрожорлив. другой вопрос хватит ли ему такого такта для нормальной передачи

Re: Часы на Atmega8515 и ds1307

Вс янв 21, 2018 06:56:08

Ivanoff-iv писал(а):там экрана не будет (уже экономия), бОльшую часть времени мк спит и потребляет немного, а запитанный от 37кГц он и в активном состоянии непрожорлив. другой вопрос хватит ли ему такого такта для нормальной передачи
Значит у вас готового рабочего варианта нет.
Раз экрана не будет возникает вопрос - А за чем лишняя микруха тогда? Тем более стоимость этой мирухи учитывайте и сравнивайте с китайским модулем DS1307.
Напомню, что вопрос изначально стоял избавиться от этого китайского модуля DS1307 и добиться такой же точности как у DS3231.
На текущий момент лично у меня точность DS1307 составляет, то есть за 455часов убежали на 136секунд.
СпойлерИзображение
Стабильность вашего кварца на 8МГц составляет +-5ppm, это в лучшем случае, на самом деле все печальней выглядит, сравните с часовым кварцем на 32768Гц. Температурной стабильностью пренебрегаем, а коррекцию можно и дописать. Без меги с RTC-таймером нам не обойтись. Это первое.

Второе. Элемент CR2032 имеет напругу 3В (не учитывая разряд элемента), мы это питание подаем на мк через диод шотки, который сожрет 0,7В. Не любая мега сможет работать от 1,5В. Потребуется уже 2 элемента CR2032, а это габариты. Конечно, кто спорит, автомобильный акб, и светом бесперебойным обеспечим, и еще может чем.

И окончательно
Ivanoff-iv писал(а):Нафига такой микросхема? пойду лучше ещё тинек под часы нашью :)) :)) :))
желал бы видеть готовый рабочий проект, который обеспечит точность хотя бы не хуже DS1307.

Re: Часы на Atmega8515 и ds1307

Вс янв 21, 2018 10:57:44

Второе. Элемент CR2032 имеет напругу 3В (не учитывая разряд элемента), мы это питание подаем на мк через диод шотки, который сожрет 0,7В. Не любая мега сможет работать от 1,5В.

Такое напряжение (0,7) упадёт при значительных токах в несколько Ампер. А при питании МК падение напряжения на Шоттки не превысит 0,4 В.

Re: Часы на Atmega8515 и ds1307

Вс янв 21, 2018 18:59:09

проект - мой первый дошедший до работы и не разобранный обратно доселе :) - часы в машину (раз вы не хотели отказываться от дисплея) оказался довольно точен: на кварце 8 МГц уходит за год (идут уже около 3 лет) в пределах минуты... (правда калибровать его я задрался, доводил копейки уже в машине) калибровка идёт с точностью до импульса кварца (правда не помню как часто проводится, вроде каждую секунду, надо проект глянуть)

Re: Часы на Atmega8515 и ds1307

Пн янв 22, 2018 00:09:17

В своё время, тоже занимался переделкой круглых ВАЗовских часов. Использовал тини2313 и ту же 1307. Проект собирался из кусков кода в интернете, с разными там высокосными годами. Даже вольтметр добавлял и тахометр.

Re: Часы на Atmega8515 и ds1307

Пн янв 22, 2018 04:02:49

может просто с кварцем повезло, но частота его довольно сильно от 8 отличалась.
а где можно взять точную частоту 1-50кГц чтобы было удобнее настраивать часы (не настраиваемую, а из диапазона - к ней уж сам подстроюсь) можно часовой кварц, но он тоже не эталон :( ...

Re: Часы на Atmega8515 и ds1307

Пн янв 22, 2018 07:21:16

Ivanoff-iv писал(а):проект - мой первый дошедший до работы и не разобранный обратно доселе :) - часы в машину (раз вы не хотели отказываться от дисплея) оказался довольно точен: на кварце 8 МГц уходит за год (идут уже около 3 лет) в пределах минуты...
Вот статейка про ТЧХ кварцев (как и обычного кварца, так и часового), не поленитесь посмотрите. А здесь посчитайте уход частоты кварцев при, к примеру, +-20ppm, возьмите в расчеты 8МГц и 32768Гц.
Да и с асинхронным таймером вы видимо не работали, хотя да, откуда ему взяться в тини2313.
А если уж и выбирать часовой кварц то лучше вот такой, но благо сейчас есть ds3231.
Ivanoff-iv писал(а):может просто с кварцем повезло
+-5ppm, а то и меньше, ну и подогнали под текущую частоту кварца. А так, к примеру, в RTC на STM32* имеется отдельный регистр для калибровки.

Re: Часы на Atmega8515 и ds1307

Чт янв 25, 2018 07:49:40

Ivanoff-iv решил я все таки проверить этот асинхронный режим таймера, подопытным стал Atmega48V-10PU, других низковольтных нет.
Собрал на макетке такую схемку
СпойлерИзображение
Частота МК 1МГц, схема BOD выключена, АЦП выключен, включен только модуль UART, связь с внешним миром по UART.
СR2032 3В к сожалению не пошла, при переходе на питание от батареи МК в резет уходил.
Заработало только при 3,7В, акб от сотового телефона, 3,95В(АКБ)-3,59В(VCC)=0,36В(падение на диоде).
Кварц, родной китайский выпаянный с платы DS1307, пришлось повозиться с корректировкой, без коррекции за час убегали секунд так на 90, по все видимости на 33700Гц.
Ток потребления от батареи в режиме Power Save что то в районе 10-15мкА, может и меньше, тестер старенький уже, плохо мерит.
В итоге, отработали на батареи 13часов, пока секунда в секунду.

Re: Часы на Atmega8515 и ds1307

Чт янв 25, 2018 10:40:21

вполне неплохо, а какие ещё задачи МК выполняет? (их при снятии внешнего питания можно заблокировать, и поотключать выходы портов (и ЮАРТ докучи, а при включении обратно вкдючать), а можно даже (не помню поддерживается в этой меге или нет) делителем частоту ЦП снизить, но это скорее всего не поможет, т.к. количество операций (и потраченной на них энергии) останется прежним)
т.к. это аккум, может ему заряд приделать? или ионистор попробовать? (взять на 5,4в и заряжать до нормальных 5в)

Re: Часы на Atmega8515 и ds1307

Чт янв 25, 2018 11:26:02

Dimon456 писал(а):СR2032 3В к сожалению не пошла

У меня 48 в точно такой же схеме прекрасно от батарейки работала, никуда никто не спешил и в ресет не уходил.
Может, вы простой диод между батарейкой и выводом питания чипа поставили? Хотя по даташиту от 1,8В вроде как мега48 вполне должна работать даже при тактовой 4МГц :dont_know:

Re: Часы на Atmega8515 и ds1307

Чт янв 25, 2018 11:43:15

схема BOD выключена, АЦП выключен, включен только модуль UART, связь с внешним миром по UART.

Надо бы ещё и аналоговый компаратор отключить…
Dimon456 писал(а):СR2032 3В к сожалению не пошла, при переходе на питание от батареи МК в резет уходил.

Таки да похоже не хватает питалова из-за падении на диоде…
This Crystal Oscillator is a full swing oscillator, with rail-to-rail swing on the XTAL2 output. This is useful for driving other clock inputs and in noisy environments. The current consumption is higher than the ”Low Power Crystal Oscillator” on page 28. Note that the Full Swing Crystal Oscillator will only operate for VCC = 2.7 - 5.5 volts.


Попробуй питать от батарейки напрямую… если будет работать нормуль – потом придумаешь как развязать батарейку от основного питания – а вариантов много.

Re: Часы на Atmega8515 и ds1307

Чт янв 25, 2018 18:18:32

АСУ писал(а):Надо бы ещё и аналоговый компаратор отключить…
Аналоговый компаратор отключен.
АСУ писал(а):Таки да похоже не хватает питалова из-за падении на диоде…
Попробуй питать от батарейки напрямую… если будет работать нормуль – потом придумаешь как развязать батарейку от основного питания – а вариантов много.
На диоде падает 0,4В. Батарейка СR2032 2,8В, при подаче основного питания происходит сброс. МК работоспособен до 2,2В, ниже сброс идет. Схема BOD выключена, сначала сразу на 1,8В поставил, потом выключил. Хотя может батарейка у меня дохлая, но на DS1307 она работает.
Ivanoff-iv писал(а):вполне неплохо, а какие ещё задачи МК выполняет? (их при снятии внешнего питания можно заблокировать, и поотключать выходы портов (и ЮАРТ докучи, а при включении обратно вкдючать),
Кроме ЮАРТА пока ни каких. А что надо? Ножками подергать? Динамическую индикацию организовать? Или еще что?
МК просыпается 2 раза в 1 секунду, обрабатывает прерывание таймера, и опять засыпает, (не уверен нужен ли вообще этот режим спячки), если 5В нет через ЮАРТ ни чего не передается. 5В подаю с USB-TTL.
Ivanoff-iv писал(а):а можно даже (не помню поддерживается в этой меге или нет) делителем частоту ЦП снизить, но это скорее всего не поможет, т.к. количество операций (и потраченной на них энергии) останется прежним)
Не уверен что этот МК поддерживает на ходу изменение частоты, хотя можно попробовать.
Ivanoff-iv писал(а):т.к. это аккум, может ему заряд приделать? или ионистор попробовать? (взять на 5,4в и заряжать до нормальных 5в)
Тут уже кто на что горазд. Самая простая зарядка для лития на ум приходит - это резистор со стабилитроном. :dont_know:

Re: Часы на Atmega8515 и ds1307

Пт янв 26, 2018 09:37:21

Снизить потребление для m48(88,168,328) можно отключением тактирования периферийных модулей битами регистра PRR. Жалко у m8515 такого регистра нет. Если интересно - результаты потребления ATmega8515L генерирующую на PB0/OC0 частоту 32768/128/2. 2V-12μA, 3V-22μA, 4V-47μA, 5V-88μA. При плавном снижении питания до 1,5V ток уменьшается до 9μA, потом генерация срывается. Устойчивый запуск контроллера при 1,8V. Естественно, вся периферия неактивна или отключена; все лапы, кроме PB0, выводят 0. Перевел лапу PC7 на вход без подтяжки и подключил к ней источник питания 3V, имитирующий батарейку. Основное питание 3,8V. При отключении основного питания контроллер питается от резервного через защитный диод лапы. Напряжение падает до 2,5V при токе потребления 14μA.

Re: Часы на Atmega8515 и ds1307

Пт янв 26, 2018 09:39:21

На диоде падает 0,4В. Батарейка СR2032 2,8В, при подаче основного питания происходит сброс.

На схеме не нарисовано потому спрошу… а ёмкости по питанию у МК после диодов стоят?

Re: Часы на Atmega8515 и ds1307

Пт янв 26, 2018 17:03:45

akl писал(а):Снизить потребление для m48(88,168,328) можно отключением тактирования периферийных модулей битами регистра PRR. Жалко у m8515 такого регистра нет. Если интересно - результаты потребления ATmega8515L генерирующую на PB0/OC0 частоту 32768/128/2. 2V-12μA, 3V-22μA, 4V-47μA, 5V-88μA. При плавном снижении питания до 1,5V ток уменьшается до 9μA, потом генерация срывается. Устойчивый запуск контроллера при 1,8V. Естественно, вся периферия неактивна или отключена; все лапы, кроме PB0, выводят 0.
В общем так, сразу при инициализации такую строчку
Код:
PRR = (1<<PRTWI)|(0<<PRTIM2)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRSPI)|(1<<PRUSART0)|(1<<PRADC);
Только бит PRUSART0 включаю и выключаю.
Схема BOD включена на 1,8В.
При 3,7В порядка 50мкА.
При включении батарейки 2,92В (таймаут в 4 сек, до режима слеп) напряжение на батарейки падает до 2,6В (после диода 2,07) ток больше 2000мкА (че-то у меня прибор миллиА не мерит).
В режиме слеп напряжение на батарейке 2,92В (после диода 2,56В) ток 25мкА.
akl писал(а):Естественно, вся периферия неактивна или отключена; все лапы, кроме PB0, выводят 0.
Я все порты на вход сделал.
akl писал(а):Перевел лапу PC7 на вход без подтяжки и подключил к ней источник питания 3V, имитирующий батарейку. Основное питание 3,8V. При отключении основного питания контроллер питается от резервного через защитный диод лапы. Напряжение падает до 2,5V при токе потребления 14μA.
А смысл так питать, все равно напруга на защитном диоде падает, ожно 0,5В у вас. И какой токовый миллиА запас у этого защитного диода?
Я в сторону полевика смотрю, за место диода использовать.
АСУ писал(а):На схеме не нарисовано потому спрошу… а ёмкости по питанию у МК после диодов стоят?
Емкости не стоят, с начало на ресет ставил емкость 0,1мкФ, потом убрал.

Re: Часы на Atmega8515 и ds1307

Пт янв 26, 2018 21:34:53

При включении батарейки 2,92В (таймаут в 4 сек, до режима слеп) напряжение на батарейки падает до 2,6В (после диода 2,07)

Я же уже приводил цитату из даташита…
This Crystal Oscillator is a full swing oscillator, with rail-to-rail swing on the XTAL2 output. This is useful for driving other clock inputs and in noisy environments. The current consumption is higher than the ”Low Power Crystal Oscillator” on page 28. Note that the Full Swing Crystal Oscillator will only operate for VCC = 2.7 - 5.5 volts.

Dimon456 писал(а):Емкости не стоят,

Ёмкости обязательны.

Re: Часы на Atmega8515 и ds1307

Сб янв 27, 2018 05:51:24

АСУ я же изначально написал Atmega48V-10PU

Re: Часы на Atmega8515 и ds1307

Сб янв 27, 2018 06:06:54

АСУ Полная раскачка используется для резонаторов, в том числе и для Low Power Crystal Oscillator, подключенных к лапам XTAL/TOSC в режиме XTAL. Low Frequency Crystal Oscillator подключается к тем же лапам, но уже в режиме TOSC и для тактирования контроллера не используется.
АСУ писал(а):Ёмкости обязательны.
Да, но никаких электролитов.
Dimon456 писал(а):Я все порты на вход сделал.
Ваше право, но лапа(ы) с Pin Pull-up Resistor 20 50 kΩ на входе или лапа(ы) с выходным сопротивлением 20...30 Ом имеют разную помехоустойчивость.
Ответить