Duino на внутреннем резонаторе, может комуто будет полезно.
- Войдите на сайт для отправки комментариев
Duino на внутреннем резонаторе, может комуто будет полезно.
Чем удобна ардуина? Кроме простоты прототипирования основным удобством является язык программировани с кучей библиотек. Но готовить конечное устройство на плате ардуино дорого и не очень удобно. Ради уменьшения цены и размеров можно избавиться от многих деталей, в том числе и от кварцевого резонатора. В конце-концов для работы минимальной обвязкой является сам микроконтроллер и питание. Конечно внутренний резонатор контроллера не особо точен, да и частота всего 8МГц, но для многого хватит и этого.
Первое что понадобится для того чтобы избавитья от кварца – это дописать в ардуино иде файл .\arduino-0022\hardware\arduino\boards.txt
Фьюзы высчирывал вот этим калькулятором: http://www.engbedded.com/fusecalc/
Простым способом, сначала забил в него старые фьюзы контроллера (взять можно из того-же boards.txt), получив набор параметров микроконтроллера просто поменял строку Ext. Crystal Osc. На Int. RC Osc. 8Mhz default value И прочитал там новые фьюзы где вводил старые.
#пример для ATmega168
#Я не стал ничего придумывать, я просто скопировал кусок
#для ардуины про мини, переименовал его и поменял фьюзы.
##############################################################
pro.name=MyName duino int8 MHz ATmega168
pro.upload.protocol=arduino
pro.upload.maximum_size=14336
pro.upload.speed=19200
# Поменял эти 3 строки
pro.bootloader.low_fuses=0xE2
pro.bootloader.high_fuses=0xDD
pro.bootloader.extended_fuses=0xF8
#
pro.bootloader.path=atmega
pro.bootloader.file=ATmegaBOOT_168_pro_8MHz.hex
pro.bootloader.unlock_bits=0x3F
pro.bootloader.lock_bits=0x0F
pro.build.mcu=atmega168
#И поменял эту строку
pro.build.f_cpu=8000000L
#
pro.build.core=arduino
pro.build.variant=standard
##############################################################
После доработки файла boards.txt, запустил ардуино, выбрал появившуюся в платах MyName duino int8 MHz ATmega168.
Для проверки использовал blink, но стандартный 13 было не интересно, поправил на 0 (это 2й вывод микроконтроллера в пдип корпусе). Скомпилировал с зажатым шифтом чтобы узнать куда ложится хекс файл и прошил вот по этой инструкции: http://freeduino.ru/arduino/isp.html Но используя новые фьюзы.
Надо учесть что если контроллер уже прошивался раньше, то первую прошивку фьюзов в него надо производить с тем кварцем с которым он раньше был.
Соответствие выводов для разъема ХЗ дуины, микросхемы ft232 и контроллера ATmega168-20PU (ATmega328-20PU)
X3 - ft232 - ATmega168-20PU
1 - CTS(pin11) - MISO (pin18)
2 - DSR(pin9) - SCK (pin19)
3 - DCD(pin10) - MOSI (pin17)
4 - R(pin6) - RESET (pin1)
Я прочел и нифига не понял :)
В папке ардуины в подпапках \hardware\arduino\ есть файл boards.txt, он отвечает за параметры той дуины которую ты выбрал. Параметры в основном зависят от процессора, фьюзов выставленных для этого процессора и частоты на которой этот процессор работает. Напряжение (в действительности не напряжение питания а напряжения HIGH), а также внешний кварц или внутренний резонатор использовать зависит от фьюзов которые зашиваются в процессор (фьюзы или fuse bits определяют кучу параметров но в данном случае интересны именно частота и напряжение). Соответственно чтобы поменять частоту и напряжение нужно поменять фьюзы в файле boards.txt просто добавив туда кусок как новую плату ардуино. А так как микроконтроллер не менялся то достаточно скопировать кусок с подобного контроллера и поменять параметры фьюзов и частоты.
А программировать то её так же как и обычную ардуину или же с помощью вот фьюзов?!
Программировать или с помощью программатора, или если контроллер в дип корпусе воткнуть в обычную дуину и программировать как обычную.
спасибо, это действительно полезно.
ведь так можно писать программы на МК не на асме или голых сях, а на удобном Wiring-е.
автору респект!
а еще расскажи, как прошить самодельную ардуино (аналог duemilanove) программматором громова.
просто мне как новичку надо что бы кто-то один раз потыкал пальцем и показал, что и откуда брать в даташите, а
дальше я сам)
заранее спасибо!
а еще расскажи, как прошить самодельную ардуино (аналог duemilanove) программматором громова.
просто мне как новичку надо что бы кто-то один раз потыкал пальцем и показал, что и откуда брать в даташите, а
дальше я сам)
заранее спасибо!
Программатором громова никогда не пользовался, нет ком порта.
Вроде про него неплохо написано тут: easyelectronics.ru/avr-shag-pervyj-programmator.html
Сам пользовался таким (как в первой схеме, без буфера): easyelectronics.ru/skorostnoj-avr-usb-programmator-na-ft232rl-bez-vspomogatelnogo-kontrollera.html#more-268
Но общий принцип такой прошивки один:
1) у контроллера есть ножки MISO MOSI SCK RESET GND их узнать можно по даташиту на контроллер и подсоединить к соответствующим выводам программатора.
2) Нужна программа для прошивки, вариантов много, но я предпочитаю AVRDUDE
3) Нужен хекс файл с прошиваемой программой, например Ардуино при компиляции скетча такой создает, узнать где он лежит можно нажав кнопку компиляции с зажатым шифтом (кроме ардуино 1.0, у нее это ставится в настройках)
4) Нужно знать фьюзы прошиваемого контроллера, их можно посчитать самому или если это ардуиноподобный проект - посмотреть в файле boards.txt (хранится в каталоге ардуины, в подкатологах)
5)Прошивать с аврдуде, сначала фьюзы, затем программу. Для удобства можно взять AVRDUDE-GUI
(скачать можно тут yuki-lab.jp/hw/avrdude-GUI/avrdude-GUI-1.0.5.zip или тут www.geocities.jp/arduino_diecimila/bootloader/files/avrdude-GUI-1.0.5.zip)
Вот выложил видео на ютубе как это работает:
www.youtube.com/watch
Здравствуйте,вопрос.А на сколько сложно будет "внедрить" в среду Мегу8? Ну т.е чтоб в меню в списке появилось что-то типа Ардуина8-8мГц. Если я правильно понимаю,то все дело в Фюз битс.Т.е можно сделать по аналогии с Вашим примером?
Никакой сложности нет, в среде ардуина уже есть атмега8, чтобы использовать без резонатора надо поменять фьюзы.
Добавлю еще такую "хитрость". Если у вас уж есть "полноценна" ардуина, то программатор горомова (и проч.) собирать не обязательно. Ардуина тоже может выступать в роли программатора. Для этогоЖ
1. В нее нужно зашить скетч ArduinoISP (идет в примерах с ArduinoIDE).
2. Подключить ваш кристал к ардуине как показано на http://arduino.cc/en/Tutorial/ArduinoISP,
3. в boards.txt, в раздел описаный в первом сообщении дописать строчку (дополнительно к тому что привел Mogalkov):
pro.upload.using=arduinoisp
После этого скетч в кристал будет заливаться использую ардуину в качестве программатора, просто по нажатию кнопки Upload. Без необходимости искать "куда ложится хекс файл" и узнавания что "такое avrdude" и т.п.
P.S. После изменений boards.txt нужно перезапустить ArduinoIDE.
Есть несколько микроконтроллеров формата Ардуино (DIP-корпуса в панельках). Есть несколько микросхем Атмега 168, 328 (прошиты загрузчики).
Просто их прошивать в панельках - естественно получается и работает (выковыриваю "родную" микросхему из Ардуино, в панельку ставлю новую, подключаю и прошиваю скетч как обычно, прошитую микросхему вытаскиваю, подключаю на макетной плате и все хорошо).
А вот теперь вопрос: хочу заставить одну из своих поделок работать без кварцевого резонатора (как раз по теме обсуждения). Можно ли просто повторить то, что описано с файлом boards.txt и добавить туда соответствующую "плату" и просто прошить микросхему так же, как я описал чуть выше? Будет прошиваться? После установки на монтажную плату "взлетит" без кварца?
Или все-таки шить через ArduinoISP и подключать Ардуино к макетке, на которой установлен "прошиваемая" Атмега?
Практически уверен что это дело вкуса. Нравится прошивать в панельках и не смущает необхомость дергать туда-сюда "родную" - можно в панельках, нравится уже установленную на макетке - можно через ArduinoISP.
Вообщем способ прошивания не должен влиять на дальнейший полет и то куда будет установлен камень. Ключевыми тут будут именно правильные фьюзы.
Ммм.. проблемка нарисовалась.
Изменения в boards.txt полностью соответствуют тому, что выше приведено в топике:
01
##############################################################
02
pro.name=MyName duino int8 MHz ATmega168
03
pro.upload.protocol=arduino
04
pro.upload.maximum_size=14336
05
pro.upload.speed=19200
06
# Поменял эти 3 строки
07
pro.bootloader.low_fuses=0xE2
08
pro.bootloader.high_fuses=0xDD
09
pro.bootloader.extended_fuses=0xF8
10
#
11
pro.bootloader.path=atmega
12
pro.bootloader.file=ATmegaBOOT_168_pro_8MHz.hex
13
pro.bootloader.unlock_bits=0x3F
14
pro.bootloader.lock_bits=0x0F
15
pro.build.mcu=atmega168
16
#И поменял эту строку
17
pro.build.f_cpu=8000000L
18
#
19
pro.build.core=arduino
20
pro.build.variant=standard
21
22
##############################################################
Прошиваю камень в iteaduino v1.1 (вставляю 168 чип в панельку и шью соответствующим образом). Прошивка работает (проверял так - прошивал "блинк" с выбором "duemilanove atmega168"- вижу, как моргает светодиод. Потом шил тот же "блинк" с выбором этой новой платы "8МГц, атмега 168" - светодиод моргает, но явно с другой частотой - на вид примерно вдвое чаще, чем в первом случае). Т.е. прошиваем вроде как правильно.
После этих тестов шью уже нормальный скетч, с которым работаю. Прошитый чип устанавливаю в макетку (еще не со всеми компонентами определился) и проверяю его работу.
Обнаружены следующие грабли:
1. Если чип прошиваем как обычный (с кварцем) и ставим его в макетку, где кварц установлен - все работает нормально.
2. Если чип шьем как с "внутренним осциллятором" и ставим на макетку, где кварц еще не убран - все работает нормально.
3. Если чип шьем как с "внутренним осциллятором" и ставим на макетку, где кварц уже убран (вместе с конденсаторами) - не работает.
Может, кто-то подскажет, почему так? как правильно прошить чип, чтобы он работал без кварца? Может, ноги для кварца при этом надо как-то коммутировать? (вроде как везде видел в схемах - они просто висят в воздухе)?
http://arduino.cc/en/Tutorial/ArduinoToBreadboard - вот еще какую ссылку нашел... но тут на картинках 168, в описании - 328 атмега... и файл с конфигурацией тоже для 328 атмеги...
Помогите, как в этот файл добавить "минимальную" конфигурацию для 186 атмеги?
Кстати, еще интересно - в этой "минимальной" конфигурации даже резистор в 10к между reset и VCC предлагается выбросить для получения "truly minimal configuration"... а у меня эта минимальная конфигурация ну никак "взлетать" не хочет и я даже не представляю, в какую сторону копать :(
Есть мысли?
Не выходит цветок каменный :( нужна помощь.
Дано:
1. Плата iteaduino на базе атмега328 (в нее прошит скетч ArduinoISP, между Reset и GND установлен конденсатор на 10мкФ)
2. собран кабель согласно http://freeduino.ru/arduino/isp.html (раздел Mega-ISP)
3. "подопытная" плата - ардуино нано v3.0 (тоже на базе атмеги328)
4. в файле boards.txt сделан вот такой раздел:
01
atmega328isp.name=Arduino Duemilanove w/ ATmega328 (ISP)
02
03
atmega328isp.upload.protocol=arduino
04
atmega328isp.upload.maximum_size=30720
05
atmega328isp.upload.speed=19200
06
atmega328isp.upload.
using
=arduinoisp
07
08
atmega328isp.bootloader.low_fuses=0xFF
09
atmega328isp.bootloader.high_fuses=0xDA
10
atmega328isp.bootloader.extended_fuses=0x05
11
atmega328isp.bootloader.path=atmega
12
atmega328isp.bootloader.file=ATmegaBOOT_168_atmega328.hex
13
atmega328isp.bootloader.unlock_bits=0x3F
14
atmega328isp.bootloader.lock_bits=0x0F
15
16
atmega328isp.build.mcu=atmega328p
17
atmega328isp.build.f_cpu=16000000L
18
atmega328isp.build.core=arduino
19
atmega328isp.build.variant=standard
Данные взяты от платы Arduino Duemilanove w/ ATmega328, изменена скорость прошивки на 19200 и добавлена строчка о том, что использовать для прошивки arduinoisp. Все остальные параметры оставлены без изменений.
Требуется:
Прошить подопытную плату с помощью ардуинки.
Текущее положение дел:
1. Берем "блинк"
2. В качестве порта для коммуникации выбираем тот порт, к которому подключена плата с ArduinoISP
3. В качестве "платы" выбрана новосозданная Arduino Duemilanove w/ ATmega328 (ISP)
4. Нажимаем Upload
5. Видим, как на плате ArduinoISP моргают светодиоды RX/TX (видно, что моргают заметно медленнее, чем обычно - оно и понятно, скорость-то понизили)
6. На прошиваемой плате видим помаргивание светодиода на D13 (только в процессе прошивки). RX/TX на прошиваемой плате - молчат.
7. в окне с отладочными данными выходят следующие строчки:
1
Binary sketch size: 1026 bytes (of a 30720
byte
maximum)
2
avrdude: stk500_initialize(): programmer not
in
sync, resp=0x15
3
avrdude: stk500_initialize(): programmer not
in
sync, resp=0x15
4
avrdude: verification error, first mismatch at
byte
0x0100
5
0x8d != 0x85
6
avrdude: verification error; content mismatch
и прошивка, конечно, не удалась.
Что делаю неправильно? В каком месте накосячил?
По описанию выглядить все правильно. Немного лень вчитываться в вашу статью, сравните подключение с http://arduino.cc/en/Tutorial/ArduinoISP
Я по этой схеме прошивал голый камень с кварцем. Правда я в него вначале заливал бутлоадер (хотя, по логике, отсутсвие этого шага не должно мешать прошивке через ISP).
так же, где-то натыкался, что какие-то ревизи UNO (я так понял у вас ее аналог) - имеют баг в бутлоадере, из-за которого скетч ArduinoISP не корректно работает и нужно вначале прошить фиксаный бутлоадер.
Подключение полностью соответствует туториалу.
Про бутлоадер - попробую. с ним явно могут быть проблемы (мы уже общались на эту тему - сторожевой таймер именно на этой плате не срабатывал). Попробую беспроблемную нано сделать программатором и прошить или голый чип с кварцем (или тиньку, благо приобрел пару штучек).. а вообще цель - отработать технологию прошивки и уже нормально шить платы: http://devicter.ru/goods/Iteaduino-GBoard-V1-0-ATmega и http://devicter.ru/goods/Iteaduino-Iboard
Кстати, может, кто-то имел дело с этими платами?
Еще вариант - сгородить преобразователь USB-COM и шить с его помощью.. но это доп.корпус (и его еще нужно купить).
Новые данные.
Ардуино Нано в качестве программатора Ардуино ISP замечательно сработал для tiny45. Правда, сработало только после того, как воспользовался вот этим советом:
1
Note
for
Arduino 1.0: you need to make one small change to the ArduinoISP code. Find the line
in
the heartbeat() function that says
"delay(40);"
and change it to
"delay(20);"
Т.е. программатор работает.
А теперь опять неудача:
Пытаюсь залить обычный блинк в "дочернюю" плату (аналог Arduino Duemilanove w/ ATmega328 (ISP)). Параметры для платы приводил в 15 постинге этого обсуждения.
Компилируется, но не заливается :(
Ошибки вот такие:
1
Binary sketch size: 1026 bytes (of a 30720
byte
maximum)
2
avrdude: stk500_initialize(): programmer not
in
sync, resp=0x15
3
avrdude: stk500_initialize(): programmer not
in
sync, resp=0x15
4
avrdude: verification error, first mismatch at
byte
0x0002
5
0x61 != 0x60
6
avrdude: verification error; content mismatch
Куда копать?
Нашел решение!!!
В файле с определением "платы" надо поправить вот так:
1
#atmega328isp.upload.protocol=arduino
2
atmega328isp.upload.maximum_size=30720
3
atmega328isp.upload.speed=19200
4
atmega328isp.upload.
using
=arduino:arduinoisp
После этого скетч спокойно залился в "дочернюю" платку!
Спасибо, очень позновательно. Я как раз присматриваюсь к tiny45
Снова подниму тему. Хочу сделать одна поделку, но тут выяснилось, что закончились кварцы и конденсаторы к ним. Устройство простое, тайминги вроде нигде никакие особо не используются, логика на уровне обычного "блинк".
Захотелось запустить это все на внутреннем резонаторе (кварца же нет;)).
В файл boards.txt вношу секцию как в первом посте (продублирую):
01
##############################################################
02
pro.name=MyName duino int8 MHz ATmega168
03
04
pro.upload.protocol=arduino
05
pro.upload.maximum_size=14336
06
pro.upload.speed=19200
07
08
pro.bootloader.low_fuses=0xE2
09
pro.bootloader.high_fuses=0xDD
10
pro.bootloader.extended_fuses=0xF8
11
12
pro.bootloader.path=atmega
13
pro.bootloader.file=ATmegaBOOT_168_pro_8MHz.hex
14
pro.bootloader.unlock_bits=0x3F
15
pro.bootloader.lock_bits=0x0F
16
pro.build.mcu=atmega168
17
18
pro.build.f_cpu=8000000L
19
20
pro.build.core=arduino
21
pro.build.variant=standard
22
23
##############################################################
Прошиваю голую (без обвязки, но с бутлоадером) 168 микросхему сначала с кварцем (позаимоствовал с другой макетки, где другая "поделка" ждет своего часа): "блинк". Моргает.
Теперь выбираю эту "модифицированную" плату - шьется нормально, моргает в два раза чаще. Ну, изменения есть, шьется, моргает. Хорошо.
Снимаю питание с контроллера, вынимаю из макетки кварц и его конденсаторы. Включаю и "Индейское национальное жилище. Фиг-вам, называется" (с)
Пробую прошить уже без кварца - все, не шьемся.
Возвращаю кварц и конденсаторы - заморгали частенько, шьемся.
Как быть? что делаю не так, чтобы запустить 168 без кварцевого резонатора?
МК - ATMEGA168-20PU
Вот родственная тема http://arduino.ru/forum/apparatnye-voprosy/bootloader-v-atmega8l
Я на внутренем atgema8l шил.
Но, таки пришлось через online калькулятор расшифровывать фьюзы и подбирать "правиьлные".
И еще, а что значит "шьется нормально"? Вы учитываете что сами фьюзы в него выставляются только в момент заливки бутлоадера? (если через ArduinoIDE, а не самому дудку дергать)
То есть, если вы просто выбрали "другую" плату и залили скетч - фьюзы не обновятся. И как работало на внешнем кварце - так и останется.
Так что "нужно выбрать плату, залить бутлоадер...." и вот с этого момента она станец "бескварцевой".
Если вы пойдете в File/Preferences и включите Show verbose... upload, то увидите что при заливке скетчей - фьюзы даже не мелкают в параметрах вызова AvrDude
О, спасибо! Вот где собака-то порылась. Сегодня попробую прошить сначала бутлоадер, а потом уже все остальное.
Прошил :) теперь камень перестал шиться совсем :(
Что с кварцем, что без него :( Последнее, что залилось - вот на этой ккконфигурации:
01
##############################################################
02
03
lopowerisp.name=Arduino Ultru Low-Power (<2.4V, 8 MHz) w/ ATmega168 (ISP)
04
05
lopowerisp.upload.protocol=arduino
06
lopowerisp.upload.maximum_size=14336
07
lopowerisp.upload.speed=19200
08
lopowerisp..upload.
using
=arduino:arduinoisp
09
10
lopowerisp.bootloader.low_fuses=0xFF
11
lopowerisp.bootloader.high_fuses=0xDA
12
lopowerisp.bootloader.extended_fuses=0x06
13
lopowerisp.bootloader.path=atmega
14
lopowerisp.bootloader.file=ATmegaBOOT_168_pro_8MHz.hex
15
lopowerisp.bootloader.unlock_bits=0x3F
16
lopowerisp.bootloader.lock_bits=0x0F
17
18
lopowerisp.build.mcu=atmega168
19
lopowerisp.build.f_cpu=8000000L
20
lopowerisp.build.core=arduino:arduino
21
lopowerisp.build.variant=arduino:standard
Теперь ни через ISP ни через программатор на FT232RL не шьется.
Ругань обычная: avrdude: stk500_getsync(): not in sync: resp=0x00
Какие варианты по восстановлению?
оживил, камень снова работает! (живучий!)
теперь бы понять, все-таки, какая правильная конфигурация для 168 с внутренним осциллятором?
При попытке прошиться через ArduinoISP со следующей конфигурацией:
01
##############################################################
02
proisp.name=MyName duino int8 MHz ATmega168 (ISP)
03
proisp.upload.protocol=arduino
04
proisp.upload.maximum_size=14336
05
proisp.upload.speed=19200
06
proisp.upload.
using
=arduino:arduinoisp
07
08
proisp.bootloader.low_fuses=0xE2
09
proisp.bootloader.high_fuses=0xDD
10
proisp.bootloader.extended_fuses=0xF8
11
12
proisp.bootloader.path=atmega
13
proisp.bootloader.file=ATmegaBOOT_168_pro_8MHz.hex
14
proisp.bootloader.unlock_bits=0x3F
15
proisp.bootloader.lock_bits=0x0F
16
proisp.build.mcu=atmega168
17
18
proisp.build.f_cpu=8000000L
19
20
proisp.build.core=arduino:arduino
21
proisp.build.variant=arduino:standard
В общем-то, конфигурация из первого поста, только указано, что программатором будет ArduinoISP
1
proisp.upload.
using
=arduino:arduinoisp
Вылетает оошибка:
Я прошил несколько микросхем с такой вот конфигой...работает безупречно...
01
fabduino.name=Fabkit/Fabduino w/ ATmega168 (
internal
clock)
02
03
fabduino.upload.protocol=stk500
04
fabduino.upload.maximum_size=14336
05
fabduino.upload.speed=19200
06
07
fabduino.bootloader.low_fuses=0xe2
08
fabduino.bootloader.high_fuses=0xdd
09
fabduino.bootloader.extended_fuses=0x00
10
fabduino.bootloader.path=arduino:atmega
11
fabduino.bootloader.file=ATmegaBOOT_168_pro_8MHz.hex
12
fabduino.bootloader.unlock_bits=0x3F
13
fabduino.bootloader.lock_bits=0x0F
14
15
fabduino.build.mcu=atmega168
16
fabduino.build.f_cpu=8000000L
17
fabduino.build.core=arduino:arduino
18
fabduino.build.variant=arduino:standard
spa-sam, спасибо! Заработало!!!
Сегодня (с Вашей помощью) запустил мегу168 на внутреннем осцилляторе (правда обычную, с пониженным потреблением пока еще не держал в руках). Обнаружилось, что работа с датчиками типа DS18B20 осуществляется нормально (видимо, грамотная библиотека), NRF24 - эти модули тоже заработали нормально.
А вот датчики DHT11 - данные отдавать отказались :(, аналогичная проблема там, где используется ИК-приемник (подобная проблема будет, похоже везде, где используются тайминги).
Видимо, много зависит от того, насколько грамотно библиотеки сделаны.
Поправил немного конфиг, кому интересно...
01
fabduino.name=Fabkit/spa ATmega168 (
internal
clock 1.8V)
02
03
fabduino.upload.protocol=stk500
04
fabduino.upload.maximum_size=14336
05
fabduino.upload.speed=19200
06
07
fabduino.bootloader.low_fuses=0xe2
08
fabduino.bootloader.high_fuses=0xde
09
fabduino.bootloader.extended_fuses=0x00
10
fabduino.bootloader.path=arduino:atmega
11
fabduino.bootloader.file=ATmegaBOOT_168_pro_8MHz.hex
12
fabduino.bootloader.unlock_bits=0x3F
13
fabduino.bootloader.lock_bits=0x0F
14
15
fabduino.build.mcu=atmega168
16
fabduino.build.f_cpu=8000000L
17
fabduino.build.core=arduino:arduino
18
fabduino.build.variant=arduino:standard
Смысл изменения в строке fabduino.bootloader.high_fuses=0xde с этой кинфигурацией отключен детектор низкого напряжение...точнее он установлен на 1.8 V, в предыдущей было 2.7 V... Такое снижение обусловлено работой от батареи до последнего )...пока работает...будем тестить дальше
перевел pro mini (mega328p) c 16MHz на 8 внутренние. Оказалось что IDE 1.5.2 со скетчем arduinoISP не хочет работать. С версией 1.0.5-r2 все получилось. Для boards.txt есть редактор удобный кстати в сети.
Делал это чтоб подключить напрямую к литию через vin ради энергосбережения. Знает ли кто - нужно выпаивать кварц на 16 чтоб через него ничего не утекало, или можно оставить? по идее на него уже ничего не подается, но мало ли.
Duino на внутреннем резонаторе, может комуто будет полезно.
Скомпилировал с зажатым шифтом чтобы узнать куда ложится хекс файл и прошил вот по этой инструкции:
http://freeduino.ru/arduino/isp.html Но используя новые фьюзы.
Надо учесть что если контроллер уже прошивался раньше, то первую прошивку фьюзов в него надо производить с тем кварцем с которым он раньше был.
что такое и для чего нужен "зажатый шрифт"
для чего полезно знать, куда ложится hex файл, разьве не в первый байт после загрузчика?
у меня фьюзы для 328ой атмеги вот такие...
a328p_8MHz.name=atmega328p (RC 8 MHz)
a328p_8MHz.upload.protocol=arduino
a328p_8MHz.upload.maximum_size=32256
a328p_8MHz.upload.speed=115200
a328p_8MHz.bootloader.low_fuses=0xe2
a328p_8MHz.bootloader.high_fuses=0xde
a328p_8MHz.bootloader.extended_fuses=0x5
a328p_8MHz.bootloader.path=optiboot
a328p_8MHz.bootloader.file=a328p_8MHz_e2_de_5.hex
a328p_8MHz.build.mcu=atmega328p
a328p_8MHz.build.f_cpu=8000000L
a328p_8MHz.build.core=arduino
a328p_8MHz.build.variant=standard
правда я ещё залил бутлоадер для внутреннего резонатора, выпаял кварц и два конденсатора - добавилось ещё два пина... :)