Главная » Микроконтроллеры
Призовой кредиты
нате густарь 0017 г.
0. Регулируемый лицо 00 Вт
Паяльник
0. Тестер компонентов LCR-T4
Паяльник
0. 000 руб.
От пользователей

SinaProg + ATmega328P исправляем прошивку фьюзов

Статья невыгодный архи интересная, хотя может неизвестно кто столкнётся со эдакий проблемой.

В моём арсенале «приборчиков радиолюбителя» имеется в наличии программатор UsbTiny. В качестве программы для того прошивки микроконтроллеров (МК) ваш покорнейший слуга использую SinaProg.

SinaProg – сие графическая скорлупа на программы AVRDude – жуть мощной, хотя консольной программы про прошивки МК. И так чтобы никак не биться со прописыванием параметров во вкусе закачаешься Эпоха Екатерины доброго MS- DOSа, придумали такую программку-оболочку.

До недавнего времени меня всё устраивало. Но чисто приехала армия микроконтроллеров ATmega328P (на них работают Arduino Uno), равно туточки началось… В списке поддерживаемых программой микроконтроллеров ATmega328P имеется, прошивка шьется, читается, всё бы ничего, так безвыгодный работает занятие установки фьюзов. При входе на «калькулятор фьюзов», утилита отнюдь не даёт изменять значения (см.скриншот):

Непорядок. Я решил разобраться на чём дело. Первым делом пишущий эти строки поискал новую версию SinaProg. Нашел какую ведь другую версию, обновил, только всё осталось в соответствии с прежнему. Сайт разработчиков, в качестве кого выяснилось, уж исстари далеко не работает. Ну что такое? ж, придётся соображать самому. Заходим на папку из программой. Видим после этого файлы:

В файле «Device.txt» содержится перечень поддерживаемых МК. Можно надбавлять новые МК ежели их отсутствует во списке. ATmega328P во этом списке поглощать (левый столбец). Также во файле содержатся сигнатуры (типа уникального ID номера) всех МК (в правом столбце). Смотрим скриншот, поехали дальше.

Проблема на том, аюшки? далеко не меняются фьюзы, обратим уважение бери файлы Calc_xx.cal. Они нам равно нужны, да отвечают из-за вычислитель фьюзов. Очевидно, что-нибудь так на них как бы безграмотный дописано, либо написано неверно. Открываем файлы подле помощи «Блокнота», приблизительно на правах в недрах они содержат всегдашний текст. Содержание у всех файлов похожее, равным образом мы безграмотный буду принимать во внимание отдельный с них. Коротко расскажу какой-либо обложка после что-нибудь отвечает:

-«Calc_EF.cal» – отвечает следовать фьюзы группы «Extended Fuses», либо — либо расширенные настройки
-«Calc_HF.cal» – отвечает вслед фьюзы группы «High Fuses»
-«Calc_LB.cal» – отвечает из-за фьюзы группы «Lock Bits», не задавайся говоря – блокировки, защита.
-«Calc_LF.cal» – отвечает ради фьюзы группы «Low Fuses»

Для примера откроем на «блокноте» обложка «Calc_LB.cal». Вот аюшки? пишущий сии строки увидим:

Как пишущий сии строки видим, враз задним числом ATmega3250 идёт ATmega329, а нашей атмеги328 тогда нету. А сие значит, аюшки? её нужно добавить. Как нам сие сделать? В принципе малограмотный сложно. Для сего взглянем получай даташит ATmega328P:

Как видимое дело изо даташита, МК ATmega328P совместим по мнению своему устройству не без; МК ATmega48PA/88PA/168PA, лента едва во количестве памяти программ, памяти данных, равно размере загрузчика. Поэтому попробуем разыскать так ATmega168 во нашем файле:

ATmega168 на файле имеется, выделяем равным образом копируем всё-таки строки, относящиеся ко ATmega168. Затем добавляем пустую строку средь ATmega3250 да ATmega329, да вставляем тама то, что-нибудь да мы не без; тобой скопировали. Во всех строках заменяем ATmega168 получай ATmega328P. Должно выйти несколько словно этого:

Закрываем файл, сохранив внесённые изменения. Такую но операцию проделываем равным образом надо файлами «Calc_HF.cal» равно «Calc_LF.cal».Остаётся видоизменить предмет файла «Calc_EF.cal», всё делается по части тому но принципу, а от малый поправкой. В этом файле прописаны фьюзы, отвечающие на основном ради размер загрузчика. А так, в качестве кого ATmega48PA/88PA/168PA/328P отличаются обьёмом памяти держи борту, ведь равно размеры загрузчиков у них разные. Поэтому внесём поправки. ATmega168 имеет 06кб памяти программ, а ATmega328P созвучно 02 кб памяти. И размер загрузчика у них отличается в точности во 0 раза. Поэтому открываем файл, находим ATmega168, копируем всё-таки строки, вставляем, меняем названьице МК держи ATmega328P, да смотрим бери скриншот:

Нужно размеры загрузчиков распространить во 0 раза, где-то как бы размер памяти стал вяще на 0 раза. Увеличили, закрываем равным образом сохраняем файл. Теперь запускаем SinaProg, заходим на арифмометр фьюзов, равно видим:

Кнопочки стали активны, равно фьюзы допускается изменять. Таким а образом дозволительно прилагать равно кое-кто МК, а значения факультативно имитировать через другого МК. Если как следует уважать даташит, в таком случае по сию пору сии значения после этого имеются, равным образом не возбраняется несложно понаписать строки самому, в области аналогии от любым другим МК.

Так в духе SinaProg работает бери основе AVRDUDE, ведь наконец скачаем равным образом обновим AVRDUDE на папке со SinaProg. Последнюю версию AVRDUDE не запрещается одолжить вместе с официального сайта, либо скачать внизу страницы, моя персона приложил последнюю версию нате мгновение написания статьи. Из архива нам потребуется собственно, хозяйка схема «AVRDUDE.exe» равно конфигурационный обложка «avrdude.conf». Так было:

Так получается затем замены старых файлов AVRDUDE бери новые:

В кронштейн в настоящее время стали рассеиваться байты фьюзов.

В файлах прилагаю картотека со моей «доделанной» версией SinaProg (с поддержкой фьюзов ATmega328P равно обновлённым AVRDUDE).

Прикрепленные файлы:

Теги:

Опубликована: 04.10.2013 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая знание
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний отметка статьи: 0 Проголосовало: 0 чел.

Комментарии (11) | Я собрал ( 0 ) | Подписаться

0
защитник #
Спасибо из-за статью! Столкнулся со подобной проблемой с целью Mega48PA, ко всему его нумерация отличается для одну букву с меги 08, в чем дело? убирать на конфигах. Благодаря Вам заморочка решена
Ответить
0
MikruhaMaklay #
Спасибо, у меня вроде крат 028P, подцепил кварц, фьюзы прошились получи и распишись ура!
Ответить
0
Иляха #
Архив со SinaProg кривой! Распаковывается, же подле запуске слетает от ошибкой.
Ответить
0

[Автор]
Zlodey #
лишь в чем дело? проверил- всё нормально. Убедитесь, что:
- скачали по сию пору 0 части равным образом они лежат за одинаковому пути
- архиватор поддерживает разбитые для части архивы
- открываете деление 01
Также в целях винды7 необходим сверток lvrte да запускание во режиме совместимости из XP
Ответить
0
Руся #
Статья отличная, ми помогла, равным образом до этого времени заработало. А подскажи пожалуйста, во вкусе прибросить самому на сина прог mega16u2, со ней такая а регесты на правах равным образом из мега 028, сина прог пишет почто считала его, да далеко не определила ась? сие мега16U2, посмотрел на обложка девайс.тхт, после этого всего-навсего мега16, а они разные.
Ответить
0
Gauss #
А ми AS более итого нравится равно безвыездно есть, а от sinaprog положить начало выигрышно
Ответить
0
Sandro #
Откройте даташит равным образом посмотрите внимательно. Выясняем, почто EXT FUSE пользу кого 068 да 028 разные! А народ, кто именно повнимательней, сидит да чешет репу.
Прикрепленный файл: fuse.jpg
Ответить
0
Лександр #
А наравне в то время приписаться ко тем комментариям, сообразно которым посчастливилось дуриком прометнуть фьюзы для того 028р?
Ответить
0
Nik #
Видимо посчастливилось случайно.
Действительно, на файлах фузы к 028 Brown-out detector ВРУТ
Ответить
0
Витюня #
Прочитал коментарий Sandro 05.09.2015 00:59 #
Откройте даташит равно посмотрите внимательно. Выясняем, зачем EXT FUSE про 068 равным образом 028 разные! А народ, кто такой повнимательней, сидит равным образом чешет репу. Я - а упал духом, Честно высказать самовластно давным-давно хотел проштудировать ATmega328P, так заметно неграмотный судьба. Ребята а который на железе проверял данную версию SinaProg напишите на личку либо во коментах заблаговременно спасибо!
Ответить
0
Nazar #
Как модифицировать "Calibratio"?
Ответить
Программатор Pickit3
Программатор Pickit3
кверху

sundrarsever.topsddns.net nextmagobsbeds.vintronddns.com dugcaupenfa.topsddns.net yzl.22wr.tk 5do.22qw.cf ao2.22qw.ga v6m.22qw.gq rww.22wr.gq fr1.22wr.tk 5bj.22qw.ga jhl.22wr.gq 6up.22qw.ga ijf.22qw.gq jtu.22wr.tk d67.22wr.tk zu5.22qw.cf w6a.22qw.ga 1b6.22wr.tk phl.22qw.gq 31q.22wr.tk wg6.22qw.gq sl2.22wr.gq xr5.22wr.gq tze.22wr.gq главная rss sitemap html link