Atmega16 подключение к usb
Вобщем то задача у меня такая.
записывать данные на USB флешку
Надо чтобы AVR-ка определялся размер флешки и затирать её сразу.
Создавала файл и записывала данные
Файл нужен тока один на флешке, запись будет линейной, по 5 байт раз в секунду.
Для простоты думаю чтоб записывала сразу в железо без всяких там проверок что есть на флешке,
пишем и все, ну с проверкой что записалось то что надо естесно.
Опять же нужно чтоб в винде потом можно было файл открыть.
Нада чтобы прога была мизерной. а то полазил тут на форуме дык аж волосы дыбом,
эсть темы где полноценный усб и фат лабает контроллер, мне такова не нуна, у меня простая задача:
1-определить размер флешки.
2-затереть её(по быстрому-служебный сектор или как там).
3-создать файл(текстовый к примеру) формата FAT или FAT32.
4 писать туда потихоньку данные.
Желательно без библиотек, так как нужно самому разобраться что и как работает, а в библиотеках такой гемор там же все универсальное, на все случаи припасено кода всякого.
Подскажите пути и сложность реализации пожалуйта.
__________________Помощь в написании контрольных, курсовых и дипломных работ здесь
Снятие данных с акселерометра и их запись на флешку
Я хочу подключить подключить arduino pro mini к телефонному аккумулятору, а к pro mini картридер и.
Проблема с V-USB на ATmega16.
Использую ATmega16-А в корпусе TQFP44. Схема подключения V-USB со стабилитронами на 3v6. .
atmega16+vs1011+USB=mp3 плеер..
Кто-нибудь пробовал читать данные с флешки через USB атмегой16? Мне нужно сделать mp3 плеер на.
Тут нужна как минимум реализация USB-host, да и FAT штука не такая уж примитивная - задача даже без ограничений по объёму кода не такая уж тривиальная.
Использовать SD/MMC карты памяти и МК с достаточным объёмом памяти - не вариант ? Разработка стала бы ощутимо проще и быстрее. Задача невыполнима, поскольку в ваших требованиях есть неразрешимые противоречия:
"эсть темы где полноценный усб и фат лабает контроллер, мне такова не нуна," -
противоречит "записывать данные на USB флешку" и "3-создать файл(текстовый к примеру) формата FAT или FAT32.",
а также "Опять же нужно чтоб в винде потом можно было файл открыть.".
Нада чтобы прога была мизерной. а то полазил тут на форуме дык аж волосы дыбом, Желательно без библиотек, так как нужно самому разобраться что и как работает, а в библиотеках такой гемор там же все универсальное, на все случаи припасено кода всякого. Придется писать все самому, с нуля. Удачи, и Флаг вам в руки.
Попробуйте писать не на USB флэшку, а на SD, MMC или аналогичную, по интерфейсу SPI, а считывать в комп по USB через адаптер за несколько баксов, их сейчас полно. Проблем будет намного меньше. Готовых решений тоже в Интернете полно.
В наличии имеется Atmega16U4. Задача:
1) Сделать обвес мк
2) Записать простую тестовую прошивку в мк
3) Создать/использовать ПО на стороне хоста.
Спасибо наперед за ответы, если до чего-то докопаюсь сам буду писать ответы сюда.
Последний раз редактировалось Valeri Вс июн 19, 2011 22:12:43, всего редактировалось 1 раз.
_________________
Будете проходить мимо- проходите!
JLCPCB, всего $2 за прототип печатной платы! Цвет - любой!
Для заливки прошивки,установки фьюзов.
Я читал что можно как-то через USB и бутлоадер заливать прошивку,пробовал Atmel-овский FLIP, но пока что эта идея не увенчалась успехом.
Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет
Перепробовал все но безрезультатно. При подключении девайса к компьютеру по USB получаю PID=0x0000 VID=0x0000 и, следственно, дрова на девайс не ставятся.
Резистор к Д- от питания на 1.5к не ставил. В даташите нету.
Есть подозрение что не работает блок согласования уровней мк.
________________
Проблему решил. Кварц на 12 Мгц не вытягивал по частоте девайс (ну по крайней мере при заводских фьюзах, хотя в даташите 12МГц допускается). Поставил кварц на 16Мгц - все завелось нараз. Дрова установил с FLIP, но более новые лучше поискать на LibUSB.
Приглашаем всех желающих 25/11/2021 г. принять участие в вебинаре, посвященном антеннам Molex. Готовые к использованию антенны Molex являются компактными, высокопроизводительными и доступны в различных форм-факторах для всех стандартных антенных протоколов и частот. На вебинаре будет проведен обзор готовых решений и перспектив развития продуктовой линейки. Разработчики смогут получить рекомендации по выбору антенны, работе с документацией и поддержкой, заказу образцов.
По ходу изучения литературы и практики стало ясно что мирно существовать с встроенным бутлоадером не получится.
- Бутлоадер залочен от копирования, эти локи можно снять и установить свои фьюзы только после полного стирания чипа.
- На заводе был выставлен фьюз CKDIV8=0 что значит деление тактовой частоты на 8. Тоесть при кварце 16Мгц на вход ПЛЛ поступало 2 Мгц и ПЛЛ не вытягивал до частоты ЮСБ.
Снес все. Теперь фьюзы и локи програмируются как угодно. Пакет LUFA обещает бесплатные бутлоадеры и примеры програм для работы с УСБ с поддержкой чипов, все даже компилируется без ошибок. Но!
Но при проверке залитой прошивки в мк - програматор(програма) выдает ошибку верификации.(биты в мк не совпадают с битами буфера).
- Пробовал заливать простенькие прошивки
- Пробовал выставлять заводские фьюзы
- Пробовал в ИСП программаторе переключатся на повышеную частоту
______Пока безрезультатно
мож кто-что подскажет
Приглашаем 30 ноября всех желающих посетить вебинар о литиевых источниках тока Fanso (EVE). Вы узнаете об особенностях использования литиевых источников питания и о том, как на них влияют режим работы и условия эксплуатации. Мы расскажем, какие параметры важно учитывать при выборе литиевого ХИТ, рассмотрим «подводные камни», с которыми можно столкнуться при неправильном выборе, разберем, как правильно проводить тесты, чтобы убедиться в надежности конечного решения. Вы сможете задать вопросы представителям производителя, которые будут участвовать в вебинаре
Чтото не пойму в чем проблема.
Программатор у тебя есть - накой тебе dfu loader уперся ?
стирай все, лей что хочешь.
Пользовал куски из LUFA на at90usb82/162/646 - никаких проблем.
Satyr, моя цель не dfu бутлоадер, а программа для обмена по USB и выполнения моих задач.Я снес заводской бутлоадер, и теперь пытаюсь просто помигать диодами для начала на mega16u4(без подключения USB функционала) а прошивка не ставится. Я заливаю с CVavr так как WinAVR и AVRstudio не видят 910 програматор. При проверке после записи байты вообще не совпадают.
Уже 4 часа сижу с бубном, и результата 0
и шилось ли им вобще успешно чтото ?
Да работаю с ним уже пол года, все чипы по ISP шьются нараз.
С этим чипом сигнатура читается,фюзы шьются.
А вот флеш не програмируется коректно.
____________
После часов шаманства найдено временное решение. Когда делаем проект мастером начального кода - идем под нашим мк (Atmega16U4) все компилируем, получаем .hex файл.
С cvavr под этим мк оно не шьется (причина не ясна), но если в окне программатора отключить проверку сигнатуры и установить не наш чип, а ATmega16 - то все прошьется правильно и без ошибок. (пляски с отключением проверки сигнатуры и без замены типа мк проводились и не дали результата).
Выходит следующее: 1) У чипа после стирания заводского бутлоадера появилась шиза и он вопреки сигнатуре принимает себя за другого. 2) никакой документации по данному глюку найдено не было.
Вот угораздило.
Атмел предлагает фирменное ПО и дрова LibUSB к этим контроллерам. Все зависит от задачи. Если нужно сделать адаптер USB-RS232 то эти контроллеры все равно что по мухе из базуки палить. Дрова вроде нормальные. Есть возможность использовать стандартные виндовсовские дллки для обмена по USB с девайсом типа HID.
Я в данный момент работаю над компиляцией по и испытываю трудности ввиду недостатка опыта визуального программирования.
+Пока стало ясно что эти МК заводятся не с любым кварцем. Уверенно работают с 8 и 16МГц.
Есть возможность использовать стандартные виндовсовские дллки для обмена по USB с девайсом типа HID.На самом деле не только HID. без драйверов можно пользовать устройства классов CDC, RNDIS, CCID и т.п.
+Пока стало ясно что эти МК заводятся не с любым кварцем. Уверенно работают с 8 и 16МГц.Так в мануале работа с USB при любых и не гарантирована. именно 8, 16 и, насколько помню, 12mhz Так в мануале работа с USB при любых и не гарантирована. именно 8, 16 и, насколько помню, 12mhz
У меня на 12МГц не завелся. Там вообще куча возможностей передачи данных через репорты только до них руки должны дойти. Стандарт ЮСБ расписан не на одной странице
Вообще интересует как на работу мк сказывается обмен по ЮСБ. Как я понимаю тут по сравнению с программной реализацией есть встроенный ПЛЛ который облекчает жизнь и снимает часть нагрузки с мк.
Вообще интересует как на работу мк сказывается обмен по ЮСБ. Как я понимаю тут по сравнению с программной реализацией есть встроенный ПЛЛ который облекчает жизнь и снимает часть нагрузки с мк.PLL (при правильной настройке ессно -)) ) служит для выработки частоты 48Mhz необходимой для работы USB при осциляторах на 8, 12(?) и 16Mhz.
Нагрузка снимается (практически до нуля) тем, что в отличии от битбанга в V-USB, где при обмене по USB МК на 100% занят дерганьем сигналов на ножках, тут этим занят отдельный контроллер.
С аппаратным USB загрузка при передаче соизмерима с обменом по UART.
Ядро занято толькоподкладыванием/выкладыванием данных в fifo буфера. А есть же еще DMA.
_________________
Будете проходить мимо- проходите!
Какбы стоит задача отказаться от этой "ненужной" штуки в принципе. Ладно, скачаю себе эту библиотеку LUFA, посмотрю что это такое. но если в окне программатора отключить проверку сигнатуры и установить не наш чип, а ATmega16 - то все прошьется правильно и без ошибок.
ничего там не слетело, просто у всех AVRок одинаковый протокол программирования по SPI, поэтому поставив MEGA16 и можно шить любой
AVR с 16К флэша, правда значение бит у фузов не совпадают
Дело не в том, проблемы не было бы если бы чип шился со своей сигнатурой. МК mega16U4 шьется нормально под mega16 ,а под своей не шьется коректно. проверка флеш дает ошибки несовпадения.
Тут еще подходит идейка как-то портировать наработки LUFA на компилятор CVavr. Последний меня устраивает. WinAVR более функционален но уж больно там все комплексно. Я хочу в мк прописать связь по протоколу SPI для одного дивайса. К нему идут библиотеки и с-файлы. Как это все дело обьеденить с прошивкой LUFA пока не понятно.
В CVavr вроде все просто- подключай библиотеки и пихай все функции до void main(void). Все в одном файле - легко проследить код.
Если мои размышления неверны - прошу исправте
по началу у меня была аналогичная вещ - я не стирал МК перед записью.
то есть надо выполнять порядок - стер флеш--- записал новую информацию
Странно, но я так всегда делаю а проблемы не исчезли. Только есть нюанс - когда меняеш название чипа меняется в программаторе CVAVR диапазон адресов программирования и ,видимо, в этом дело.Часовой пояс: UTC + 3 часа
Кто сейчас на форуме
Чипы FTDI, CH340, ATMEGA16U2 с драйверами позволяют плате Arduino и USB адаптерам подключаться к компьютеру и взаимодействовать с внешним окружением через Serial UART. С их помощью Ардуино может скачивать прошивку, загружать и отправлять данные, не заботясь о низкоуровневой поддержке последовательного соединения. В платах разных производителей могут использоваться различные чипы и драйвера.
В этой статье мы рассмотрим наиболее популярные микросхемы и узнаем, как скачать и установить соответствующие драйвера для нормальной работы Arduino Uno, Nano, Mega и другими платами.
Чипы CH340g, FTDI FT232, ATMEGA 16U2 / 8U2
Обычно с чипами USB преобразователей и поиском драйверов сталкиваются в тот момент, когда возникает проблема подключения платы к компьютеру. Скорее всего, вы тоже нашли эту статью, пытаясь заставить Arduino IDE взаимодействовать с китайской ардуинкой. Давайте разберемся, какую роль во взаимодействии с компьютером играет чип преобразователя и зачем устанавливать какие-то драйверы, чтобы все заработало.
Зачем нужен USB / UART TTL преобразователь
USB преобразователи в Ардуино
Мы должны использовать внешние чипы, потому что контроллер ATMEGA328, являющийся сердцем большинства современных плат Arduino, не содержит в своих кристаллических внутренностях встроенного преобразователя. Если вы посмотрите на плату ардуино, то увидите корпус чипа, на нем можно разобрать и его тип.
Исторически наиболее популярным вариантом чипов USB/UART конвертера была линейка микросхем от шотландского производителя FTDI. Главным ее недостатком была стоимость и весьма странная политика в области контроля контрафакта, зачастую приводящая к тому, что легальные купленные устройства блокировались драйверами компании. Сегодня существенную конкуренцию FTDI составляют микросхемы семейства CH340, массово производимые многочисленными китайскими производителями. Они гораздо дешевле и достаточно надежны и это постепенно привело к тому, что в большинстве недорогих контроллеров Arduino и адаптеров установлены именно чипы CH340 (CH340g).
Процедура установки драйвера для CH340g на самом деле очень проста и почти всегда проходит без ошибок на самых популярных операционных системах Windows7, Windows10. Именно поэтому никаких проблем с использованием недорогих ардуино плат, несущих на себе чип CH340, почти никогда не возникает.
USB драйвер для ардуино
Если мы подключаем Ардуино к компьютеру, то чип с помощью драйвера попросит систему открыть порт и начнет взаимодействие . И для чипов разных производителей потребуются разные драйвера. Проблемы возникают, когда драйвера нет. Система пытается найти его для подключенного устройства, не находит и мы никогда не увидим его в списке устройств. Для решения проблемы надо найти и скачать соответствующие драйвера, а затем установить их на компьютер. Ниже мы рассмотрим, как это делается на примере USB драйвера CH340.
Установка драйвера для CH340
Китайские микросхемы CH340 используется довольно часто благодаря своей низкой стоимости и вполне приемлемому качеству.
В серию микросхем CH340 входят CH340T (мост USB – UART), CH340R (мост USB – IrDA) и CH340G (мост USB – UART). Последняя микросхема является наиболее распространенной и удобной с точки зрения корпуса с меньшим числом выводов.
Установка драйвера CH340
Процесс установки драйвера разбивается на несколько шагов:
- Загрузка драйвера.
- Распаковка скачанного архива.
- Найдите папку CH341ER.
- Запуск исполнительного файла SETUP.EXE.
- Нажать на кнопку Установить.
- На этом установка драйвера на компьютер завершена.
Характеристики CH340
Микросхема обладает следующими характеристиками и возможностями:
- Не нужно большое количество внешних компонентов, требуются только кварцевый резонатор и 4 конденсатора.
- Создание виртуального последовательного порта.
- Возможность применения всех приложений для COM-портов.
- Работает с сигналами уровней 5 и 3,3В.
- Выполнена в удобном корпусе SO-16 с малым количеством выводов и небольшим числом внешних компонентов.
- Поддержка полной скорости спецификации USB0.
- Наличие встроенного буфера типа FIFO.
- Поддержка всех стандартных режимов передачи данных.
- Поддержка симплексного, полудуплексного, дуплексного асинхронных режимов обмена.
- Поддержка интерфейсов RS23, RS422, RS485.
- Рабочие температуры лежат в диапазоне от -40С до 85 С.
Распиновка микросхемы CH340G представлена на рисунке.
На плате обозначены следующие контакты:
2 – TXD сигнал UART.
3 – RXD сигнал UART.
4 – напряжение питания.
7 – XI вход для кварцевого резонатора и конденсатора.
8 – XO выход для кварцевого резонатора и конденсатора.
12 – DCD сигнал UART.
13 – DTR сигнал UART.
14 – RTS сигнал UART.
15 – Включение инверсии входа RXD.
Микросхема эмулирует работу последовательного порта. Все приложения работают с конвертером интерфейса CH340G без изменения кода.
Чип FTDI для Arduino
Следующим поколением аппаратных мостов были микросхемы FT232B и FT245B. В них добавился новый режим работы BitBang, также появилась возможность реализации восьми независимых линий ввода-вывода. Помимо этого была изменена схемотехника кристалла.
С 2006 года начался выпуск микросхем FT232R и FT245R, в которых были интегрированы на кристалл энергонезависимая память, тактовый генератор и другие компоненты. Основными преимуществами микросхемы FT232RL являются хорошая функциональность, легкость монтажа и минимальная обвязка. Распиновка модуля представлена на рисунке ниже.
Характеристики микросхемы FT232R:
- Одночиповый переходник USB-UART.
- Поддержка режимов передачи 7и 8 бит данных, 1 и 2 стоповых бита.
- Бесплатные драйверы VCP и D2XX.
- Скорость передачи 300 бод – 3 мегабод для RS422.
- Наличие встроенного идентификационного номера.
- Настраиваемые выходы CBUS.
- Вывод состояния приема и передачи на внешние светодиоды.
- Наличие буферов FIFO для высокоскоростного приема/передачи данных.
- Усовершенствованный режим bit bang.
- Встроенная память EEPROM на 1024 байт.
- Наличие встроенного стабилизатора напряжения на 3.3 В и для внешних сигналов от 1,8 до 5В.
- Высокая нагрузочная способность.
- Малое потребление энергии.
- Совместима с USB 2.0 Full Speed.
- Температурный диапазон от -40С до 85С.
Микросхема предоставляется с заранее запрограммированной памятью EEPROM, поэтому дополнительное программирование энергонезависимой памяти перед началом работы не требуется.
Чип ATMEGA16U2/8U2 для ардуино
Чипы ATMEGA16U2/8U2 используются в качестве моста между USB-портом и последовательным портом. Версия платы ATmega8u2 использовалась для предыдущих плат Ардуино Uno и Mega.
Технические характеристики чипа ATMEGA16U2:
Контроллер ATmega8u2 в своей прошивке уже имеет установленные USB COM драйвера, поэтому установка дополнительных не требуется.
Характеристики ATmega8u2:
- Диапазон напряжений от 2,7В до 5,5В.
- 32 вывода.
- Скорость ЦПУ 16 МГц.
- Объем флеш-памяти 8Кб.
- Поддержка встроенных интерфейсов I2C, SPI, UART, USART.
- Размер ядра 8 бит.
- Несколько режимов работы – холостой ход, энергосберегающий режим, режим ожидания, расширенный режим ожидания и выключение питания.
- Возможность внешнего и внутреннего прерывания.
- 22 программируемых линии ввода-вывода.
- 512 б энергонезависимой памяти.
- 512 б ОЗУ.
- Рабочие температуры от -40С до 85С.
Заключение и выводы
Микросхемы-контроллеры последовательного порта служат в качестве преобразователя интерфейса USB. Наиболее популярными являются микросхемы CH340 (преобразователь USB в UART), аппаратные мосты от фирмы FTDI, к которым относятся микросхемы FT8U232, FT8U245, FT232R и FT245R (USB-UART и USB – FIFO) и ATmega8U2 и ATmega16U2.
Загрузчик (bootloader)
Загрузчик живёт в самом конце Flash памяти МК и позволяет записывать прошивку, отправляемую через UART. Загрузчик стартует при подаче питания на МК, ждёт некоторое время (вдруг кто-то начнёт слать код прошивки по UART), затем передаёт управление основной программе. И так происходит каждый каждый раз при старте МК.
- Загрузчик позволяет прошивать МК через UART;
- Загрузчик замедляет запуск МК, т.к. при каждом запуске ждёт некоторое время для потенциальной загрузки прошивки;
- Загрузчик занимает место во Flash памяти. Стандартный старый для Arduino NANO занимает около 2 кБ, что весьма существенно!
- Именно загрузчик мигает светодиодом на 13 пине при включении, как индикация работы.
Программатор
Помимо записи прошивки во flash память, программатор позволяет:
- Считывать содержимое Flash памяти (скачать прошивку на компьютер)
- Полностью очищать чип от всех данных и настроек
- Записывать и читать загрузчик
- Считывать/записывать EEPROM память
- Читать и настраивать фьюзы (fuses, fuse-bits) и лок биты.
USB-TTL (UART)
USB-TTL | Arduino |
DTR | DTR |
RX | TX |
TX | RX |
GND | GND |
VCC/5V/3.3V | VCC |
Фьюзы (Pro)
Фьюзы (фьюз-биты) являются низкоуровневыми настройками микроконтроллера, которые хранятся в специальном месте в памяти и могут быть изменены только при помощи ISP программатора. Это такие настройки как выбор источника тактирования, размер области памяти под загрузчик, настройка отсечки по напряжению и прочее. Фьюз-биты собраны по 8 штук в байты (т.н. байты конфигурации), как типичный регистр микроконтроллера AVR. Таких байтов может быть несколько, они называются low fuses, high fuses, extended fuses. Для конфигурации байтов рекомендуется использовать калькулятор фьюзов (например, вот такой), в котором просто ставятся галочки на нужных битах, и на выходе получается готовый байт в hex виде. Рассмотрим на примере ATmega328p:
Лок-биты (Pro)
Лок-биты (lock-bits) позволяют управлять доступом к памяти микроконтроллера, что обычно используется для защиты устройства от копирования. Лок-биты собраны опять же в конфигурационный лок-байт, который содержит: BOOTLOCK01, BOOTLOCK02, BOOTLOCK11, BOOTLOCK12, LOCKBIT1, LOCKBIT2 (для ATmega328). Калькулятор лок-битов можно использовать этот. BOOTLOCK биты позволяют запретить самому МК запись (самопрограммирование) во flash память (область программы и область загрузчика)
А вот локбиты LOCKBIT позволяют запретить запись и чтение flash и EEPROM памяти извне, при помощи программатора, т.е. полностью защитить прошивку от скачивания и копирования:
Таким образом включив LOCKBIT1 (лок-байт будет 0x3E) мы запретим внешнюю запись во Flash и EEPROM память, т.е. при помощи ISP программатора, а включив LOCKBIT1 и LOCKBIT2 (лок-байт: 0x3C) полностью заблокируем заодно и чтение данных из памяти микроконтроллера. Повторюсь, всё описанное выше относится к ATmega328p, для других моделей МК читайте в соответствующих даташитах.
ISP программатор
USBasp
Решение проблем
Решение большинства проблем с загрузкой через программатор (независимо от того, что написано в логе ошибки):
- Вытащить и обратно вставить usbasp в usb порт
- Вставить в другой usb порт
- Переустановить драйвер на usbasp
- Проверить качество соединения USBasp с МК
- Перепаять переходник и отмыть флюс
Для прошивки микроконтроллера, тактирующегося низкой частотой (менее 1 МГц внутренний клок):
Основные ошибки в логе Arduino IDE
Arduino as ISP
Почти любая другая плата Arduino может стать ISP программатором, для этого нужно просто загрузить в неё скетч ArduinoISP:
- Открыть скетч Файл > Примеры > 11. ArduinoISP > ArduinoISP
- Всё! Ваша Arduino теперь стала ISP программатором
- Подключаем к ней другую Arduino или голый чип по схеме ниже
- Выбираем Arduino as ISP в Инструменты > Программатор
- И можем писать загрузчики, фьюзы или загружать прошивку напрямую во Flash
-
Либо поставить поставить конденсатор ёмкостью
Решение проблем
Для прошивки микроконтроллера, тактирующегося низкой частотой (менее 1 МГц внутренний клок):
- Arduino ISP: нужно изменить частоту загрузки прошивки в скетче Arduino ISP и снова прошить его в ардуино-программатор (см. строку в скетче 45 и ниже);
Работа в Arduino IDE
Прошивка загрузчика
Как убрать загрузчик?
Загрузка скетча
В Arduino IDE можно зашить скетч через программатор, для этого надо нажать Скетч > Загрузить через программатор. Это очень удобно в том случае, когда МК используется без загрузчика, или просто голый МК.
Фьюзы
Конфигуратор платы в Arduino IDE устроен следующим образом: каждой плате в Инструменты > Плата соответствует свой набор настроек, включая фьюзы, которые прошиваются вместе с загрузчиком . Некоторые из них:
- Загрузчик (путь к файлу)
- Скорость загрузки (через загрузчик)
- Объем доступной flash и sram памяти
- Весь набор фьюзов и лок-биты
Файл конфигурации называется boards.txt и найти его можно в папке с ядром Arduino: C:\Program Files (x86)\Arduino\hardware\arduino\avr\boards.txt. Документацию на boards.txt можно почитать здесь. При желании можно вывести нужные фьюзы через калькулятор (читайте выше), изменить их в boards.txt (главное не запутаться, для какой выбранной конфигурации платы делается изменение) и прошить в МК, нажав Инструменты > Записать загрузчик.
Такая работа с фьюзами максимально неудобна, но есть и другие варианты:
- Ядро GyverCore для atmega328, в нем мы сделали кучу готовых настроек фьюзов прямо в настройках платы, читайте в уроке про GyverCore. Несколько загрузчиков, включая вариант без загрузчика, выбор источника тактирования и другие настройки в один клик мышкой.
- Программа AVRdudeprog, про нее поговорим ниже
Avrdudeprog
- Чтение/запись/очистка flash памяти
- Чтение/запись/очистка eeprom памяти
- Полная очистка чипа
- Калькулятор фьюзов и локбитов (чтение/запись)
Более подробный обзор на avrdudeprog можно посмотреть здесь . Давайте посмотрим на калькулятор фьюзов. Выбираем свой микроконтроллер и программатор (можно добавить другие модели микроконтроллеров и программаторов, читай тут). Переходим во вкладку Fuses, нажимаем прочитать. При успешном чтении увидим текущий набор настроек своего чипа. Можно их поменять и загрузить. Важно! Галку инверсные биты не трогаем! Лок-биты и отключение RST заблокирует микроконтроллер, не трогайте их, если такой цели нет! Можно загружать прошивку или загрузчик из .hex файла, указав путь к ней на первой вкладке в окне Flash. Очень удобная утилита для низкоуровневой работы с МК.
Видео
Читайте также: