| AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
ATTiny13a и реальное время.
24.11.2015, 19:08
|
|
|
Прописка
Регистрация: 15.07.2009
Адрес: г. Москва
Сообщений: 271
Сказал спасибо: 38
Сказали Спасибо 58 раз(а) в 34 сообщении(ях)
|
ATTiny13a и реальное время.
Прошу совета.
Собираюсь собрать конструкцию, которая измеряет емкость аккумулятора.
Для этого требуется, чтобы Tiny13 формировала точные промежутки реального времени.
Точности 10% не достаточно, а 2% вполне приемлемо.
Подстраивать интервал времени во время работы программы, насколько я понимаю, можно двумя способами:
1. Изменять значение регистра OSCCAL (подстройка частоты основного генератора)
2. Изменять значение регистра OCR0A (аппаратный таймер)
Каким способом это делать лучше?
Ответ: «оба хуже, надо брать другой ЧИП и «кварцованную частоту»» - понятен.
|
|
|
|
24.11.2015, 19:22
|
|
|
Гражданин KAZUS.RUN
Регистрация: 03.07.2010
Сообщений: 842
Сказал спасибо: 156
Сказали Спасибо 377 раз(а) в 189 сообщении(ях)
|
Re: ATTiny13a и реальное время.
можно взять типа DS1307, микросхемы часов реального времени
|
|
|
|
24.11.2015, 19:30
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
|
Re: ATTiny13a и реальное время.
Запитать не от внутреннего генератора, а от внешнего осциллятора - у него точность такая же, как и у часового кварца. Только резонатор брать не керамический (типа ZTA, ZTB), а нормальный, кварцевый, HU-49 типа.
Подстройка частоты внутреннего осциллятора - дело правильное, хорошее. Но сама частота МК, даже будучи подстроенная, будет плавать в зависимости от напряжения питания (и температуры).
В принципе, если напряжение питание стабильно, а температура сильно не меняется, то подстройкой частоты МК, а затем, если этого недостаточно, то и программной подстройкой (в виде добавления/убавления лишнего тика таймера в некотором интервале) можно добиться достаточной точности. Я так делал, только на другом МК. Вводил в ЕЕПРОМ поправочную константу, для удобства подстройки без перекомпиляции кода. Получалось добиться и более высокой, чем 2% точности. Главное, обеспечить стабильное напряж. питания.
Последний раз редактировалось NewWriter; 24.11.2015 в 19:58.
|
|
|
|
Сказали "Спасибо" NewWriter
|
|
|
24.11.2015, 19:56
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 10.12.2007
Адрес: Екатеринбург
Сообщений: 2,739
Сказал спасибо: 2,487
Сказали Спасибо 897 раз(а) в 584 сообщении(ях)
|
Re: ATTiny13a и реальное время.
Внешний кварц. Цена-копейки. И забыть про стабильность. Разве что спортивный интерес - победить програмным путем.
|
|
|
|
24.11.2015, 20:09
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,026
Сказал спасибо: 60
Сказали Спасибо 3,941 раз(а) в 2,302 сообщении(ях)
|
Re: ATTiny13a и реальное время.
NewWriter
Ещё никому не удалось припаять к тини13 внешний резонатор
По теме - отложить тини13 в коробочку, взять мега48 с резонатором и ехать дальше
А вообще, промежутки времени можно генерировать на К176ИЕ12 или 18. Они работают от 5 В
|
|
|
|
24.11.2015, 20:10
|
|
|
Прописка
Регистрация: 15.07.2009
Адрес: г. Москва
Сообщений: 271
Сказал спасибо: 38
Сказали Спасибо 58 раз(а) в 34 сообщении(ях)
|
Re: ATTiny13a и реальное время.
Сообщение от С.М.С
|
|
можно взять типа DS1307
|
Ножки жалко, задействованы. И так придумал изощренный способ индикации. Можно конечно дойти до азбуки Морзе и обойтись одним СД, но это совсем на крайняк.
Сообщение от baiderin
|
|
Разве что спортивный интерес
|
Почти спортивный раз на tiny13, но устройство всё же соберу.
Последний раз редактировалось DmFil; 24.11.2015 в 20:15.
|
|
|
|
24.11.2015, 20:20
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
|
Re: ATTiny13a и реальное время.
Сообщение от niXto
|
|
Ещё никому не удалось припаять к тини13 внешний резонатор
|
правда?  нууу я как бы и не пробовал, и даже в руках не держал тини13.. Но вот если внешний осциллятор (не кварц, а именно осциллятор), то вроде как можно - судя по даташиту, вход внешней частоты есть.
|
|
|
|
24.11.2015, 20:26
|
|
|
Прописка
Регистрация: 15.07.2009
Адрес: г. Москва
Сообщений: 271
Сказал спасибо: 38
Сказали Спасибо 58 раз(а) в 34 сообщении(ях)
|
Re: ATTiny13a и реальное время.
Сообщение от NewWriter
|
|
Вводил в ЕЕПРОМ поправочную константу, для удобства подстройки без перекомпиляции кода.
|
Я примерно так и собирался, только, что лучше запоминать OSCCAL или OCR0A?
|
|
|
|
24.11.2015, 20:39
|
|
|
Прописка
Регистрация: 15.07.2009
Адрес: г. Москва
Сообщений: 271
Сказал спасибо: 38
Сказали Спасибо 58 раз(а) в 34 сообщении(ях)
|
Re: ATTiny13a и реальное время.
Сообщение от DmFil
|
|
что лучше
|
Более точная формулировка - какой способ позволяет более плавно менять частоту?
|
|
|
|
24.11.2015, 20:41
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,481
Сказал спасибо: 396
Сказали Спасибо 2,222 раз(а) в 1,317 сообщении(ях)
|
Re: ATTiny13a и реальное время.
Сообщение от DmFil
|
|
И так придумал изощренный способ индикации
|
Небось, 1-wire с конденсаторами и резисторами, на два 595-х регистра? Знаем такое, делали.
Сообщение от DmFil
|
|
Я примерно так и собирался, только, что лучше запоминать OSCCAL или OCR0A?
|
В зависимости от того, какой точности удается достичь при подстройке только OSCCAL.
А вот по поводу аппаратного таймера - там я как делал. Аппаратный таймер отсчитывал системные тики по 2 мс (кажись, по столько. но это не суть важно). Они использовались и для отсчета других интервалов. А каждые 60 с просто убирал или добавлял лишние системные тики в 60-ой секунде. Сколько конкретно тиков убиралось или добавлялось - это значение было в ЕЕПРОМ... Точных цифр уже не помню, но суть была такая.
Процедура подбора небыстрая, замерял расхождение секундомером на 30-минутном интервале.
Да, ну и изменение напряжения питания микроконтроллера даже на полвольта (с 4,8 до 4,3) моментально убивало всю эту затею с точной настройкой - часы начинали спешить.
Сообщение от DmFil
|
|
Более точная формулировка - какой способ позволяет более плавно менять частоту?
|
Зависит от того, с каким интервалом сейчас у тебя считает аппаратный таймер.
Последний раз редактировалось NewWriter; 24.11.2015 в 20:54.
|
|
|
|
Сказали "Спасибо" NewWriter
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 17:25.
|
|