Загоняю Bootloader Arduino в чип Atmega328

Обсуждаем контроллеры компании Atmel.
Ответить
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 157
Зарегистрирован: Пн мар 14, 2016 15:38:50
Откуда: Питер

Сообщение kotarnold »

Всем привет!

У меня есть чип Atmega328 на плате и я решил превратить его в ардуино. После всех подключения USBASP в Arduino IDE я выбираю соответствующую плату:
Изображение

Выбираю в качестве программатора USBASP.

Жмакаю "Записать загрузчик" и Arduino IDE выдает:

Изображение

Что я делаю не так?
Реклама
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Сообщение Dimon456 »

Потому что по пути C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/optiboot_atmega328.hex Arduino IDE не может найти файл optiboot_atmega328.hex.
По чему то не верно выбрана используемая частота, необходимый файл optiboot_atmega328_pro_8MHz.hex.

Скорее всего его не будет. Вот
optiboot_atmega328_pro_8MHz.rar
(62.88 КБ) 287 скачиваний
Какой-то миниатюрный загрузчик, сомневаюсь что он вообще будет работать.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 15599
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Скорее в данной ситуации вот такое решение более удачным будет:
http://voltom.ru/project/95-podklyuchen ... grammatora
хотя бутлоадер и больше, но весь процесс достаточно полно описан.
:roll:
Мудрый кот
Сообщения: 1849
Зарегистрирован: Вс дек 25, 2016 08:34:54

Сообщение Dimon456 »

Удалось мне этот optiboot заставить работать с Avrdude. Требуется тестирование.

Размер загрузчика для Atmega8 - 478 байт, для Atmega328 - 494 байта.
Поддерживается определение типа контроллера, чтение(верификация) запись flash, работа с eeprom не поддерживается.
Вход в загрузчик во время включения контроллера при нажатой кнопке, светодиод индикаторный.

В архиве схема включения, fuses биты, исходники.
Частота выбрана 8Мгц (стабильная работа при установке внешнего кварцевого резонатора), скорость UART 19200.
В Arduino, выбираем программатор Arduino as ISP, порт, далее идем по пути C:\Users\[Пользователь]\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\boards.txt
В boards.txt ищем свою плату, к примеру
Спойлер

Код: Выделить всё

## Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega168
## --------------------------------------------------
pro.menu.cpu.8MHzatmega168=ATmega168 (3.3V, 8 MHz)

pro.menu.cpu.8MHzatmega168.upload.maximum_size=14336
pro.menu.cpu.8MHzatmega168.upload.maximum_data_size=1024
pro.menu.cpu.8MHzatmega168.upload.speed=19200

pro.menu.cpu.8MHzatmega168.bootloader.low_fuses=0xc6
pro.menu.cpu.8MHzatmega168.bootloader.high_fuses=0xdd
pro.menu.cpu.8MHzatmega168.bootloader.extended_fuses=0xF8
pro.menu.cpu.8MHzatmega168.bootloader.file=atmega/ATmegaBOOT_168_pro_8MHz.hex

pro.menu.cpu.8MHzatmega168.build.mcu=atmega168
pro.menu.cpu.8MHzatmega168.build.f_cpu=8000000L
В upload.speed=19200 ставим 19200.

В Avrdude в папке с программой открываем файлик programm.ini, и в конец добавляем новый программатор
Спойлер

Код: Выделить всё

[STK500v1]
progisp=stk500v1 -b19200
portprog=COM1
portenabled=1
Под другие частоты и скорости, пины, светодиоды, пересобираем сами.
Вложения
Atmega_optiboot_2.rar
(584.72 КБ) 267 скачиваний
Реклама
Эиком - электронные компоненты и радиодетали
Ответить

Вернуться в «AVR»