Использование Arduino Mini 328P 5V 16M как 3v 8M - вопросы новичка
- Войдите на сайт для отправки комментариев
Всем привет!
Смотрите, я по ошибке взял Arduino Pro Mini 328P-AU 5V 16M вместо 3v 8M и теперь мне нужно запитать ее от 3х вольт,
что я и сделал, впринципе работает нормально даже на 2.6В но максимальная частота для моих 3В - около 12 Мгц и я переживаю изза этого.
пожалуйста прочитайте и поправьте меня если я где ошибся:
хорошенько погуглив я выяснил что если подать 3В напрямую на VCC то ардуина должна завестись вплоть до 1.8 В, однако рекомендованная частота для моих 3В - около 12 Мгц, а кварц на 16 поменять на 8 нереально для моих навыков паяния поэтому нужно задействовать внутрений 8Мгц генератор, и первый вопрос, (1) правда ли что после этого для заливки програм нужно будет временно подцеплять кварц иначе изза плавающей частоты ничего может не загрузиться? ( это критично)
Далее, (2) если я поменяю фьюз для использования внутреннего генератора, надо ли заливать на дуину новый бутлоадер, и нужно ли отредактировать его (создать новый) для соответствия новым настройкам ( было 16 стало 8 Мгц) ? Так же желательно сразу отключить Brown-Out Detection. В этом моменте если можно поподробнее.
Далее есть некоторые непонятки с Extended Fuse котрый отвечает за контроль напряжения питания, в fuse calculator для значения Brown-Out Disabled соответствует бит 0 x FF однако считав extended fuse с помощью AvrDude я получил значение 0 x 06 ( в фьюз калькуляторе такого значения вообще нет для моего процессора 328P) и попытка записать фьюз как 0 x FF выдает ошибку. Что здесь не так?
D общем, мне нужен краткий но четкий порядок действий как превратить мою плату в 8 Мгц и работать через Arduino IDE как с платой 3V 8M.
PS. Быть может я все усложняю и нужно просто поменять чтото в boards.txt и записать бутлоадер на плату?
Еслизнаете что нужно поменять, поменяйте пожалуйста. Голова уже кипит, разобраться не могу:)
Если открыть мой boards.txt там сейчас моей плате соответствует:
Спасибо за помощь!
В boards.txt будет это:
Загрузчик.
Кварц отпаять, или отрезать одну из дорожек, идущих к нему, ножом.
Нож вот такой:
А если все работает, может ничего не делать?
и не надо работает же
Спасибо всем за помощь, да все работает но вот вы скажите по своему опыту, при опускании напряжения питания до 2.5 В какова вероятность появления глюков на 16Мгц? Просто я руководствовался в первую очередь этим и насторожился:
Кроме того, насколько я понял при опускании частоты уменьшается и энергопотребление, а так как мой проект питается от одной таблетки CR2032 это критично. Да, я выпаял светодиод питания и теперь в режиме Sleep Power Down плата потребляет всего 0.07мА, но я знаю что можно и меньше
Спасибо std а бутлоадер, поясните только, выпаивать кварц нужно для снижения энергопотребления или есть иная причина? Уж больно он мелкий думаю на место сам не припаяю в случае чего.
Ну уж если вы собираетесь питать от 2032, то расставайтесь с ардуиной в конечном проекте, а используйте только чип с минимальной обвязкой и всеми энергосбережениями. Дуня для таких вещей в принципе не предназначена. Поройте, здесь где то тема про это была.
Да, я планировал в конечном проекте поставить Attiny13 , но опять таки знаний пока недостаточно чтобы переделать код с учетом урезанных функций бутлоадера и памяти в 1 КБ.
На данный момент используя Arduino Pro Mini схема 99% спит потребляя 70мкА и 1% находится в активном режиме потребляя 6мА. По моим расчетам батарейки 2032 с емкостью 200мАч хватит на 83 дня непрерывного использования, в моем режиме использования это около 160 дней, что впринципе устраивает.
Если есть какое нибудь руководство по оптимизации кода или программирования на arduino IDE для Attiny пожалуйста дайте ссылку, буду признателен.
Имеется в виду камень 328 с кварцем или внутренним геной. Отлаживаете код на дуне, после заливаете в камень и пользуете. Расход энергии только на нее. Единственное плату развести.
Если не оторвать кварц но настроить на внутреннего гену, то кварц будет участвовать в работе тактового генератора помимо генератора, то есть убыстрять его. delay(1000) будет выполняться полсекунды и прочие подобные эффекты, плюс плата будет по-прежнему требовать большее напряжение т. к. по факту останется на 16 МГц.