Microchip Studio для AVR и SAM
Microchip Studio — бывшая Atmel Studio 7, среда разработки для 8-битных AVR и 32-битных SAM на Arm Cortex-M. Последний выпуск вышел в июне 2022 года, и Microchip не рекомендует её для новых разработок. Разбираем по документации производителя, что она умеет, как в ней собрать проект, записать фьюзы и отладить кристалл и как перенести проект в MPLAB X IDE.
Обновлено Редакция GAW
Microchip Studio for AVR and SAM Devices — бесплатная среда разработки Microchip для 8-битных микроконтроллеров AVR (tinyAVR, megaAVR, XMEGA, AVR Dx) и 32-битных SAM на ядрах Arm Cortex-M. До 2020 года она называлась Atmel Studio, а ещё раньше — AVR Studio. Среда построена на оболочке Microsoft Visual Studio: редактор с Visual Assist, менеджер решений и проектов, отладчик, симулятор AVR и окно программирования, через которое пишут флеш-память, EEPROM, фьюзы и lock bits. В комплекте — компиляторы AVR GCC и Arm GCC, ассемблер AVRASM2 и библиотека Advanced Software Framework (ASF).
Коротко
- Статус: на сайте Microchip — «Not Recommended for New Designs»; новые кристаллы не поддерживаются, производитель советует MPLAB for VS Code.
- Последняя версия: 7.0.2594 от 20 июня 2022 года.
- ОС: только Windows (7 SP1 — 10), 32- и 64-битные; компилятору XC8 нужна 64-битная система.
- Компиляторы: AVR GCC, Arm GCC и MPLAB XC8 для AVR; последние названные в примечаниях версии — AVR 8-bit GCC Toolchain 3.6.2 и Arm GCC 6.3.1.
- Программаторы: Atmel-ICE, Power Debugger, встроенный EDBG, JTAGICE3, STK500/600, AVRISP mkII, AVR Dragon, PICkit 4 (с выпуска 7.0.2594) и MPLAB Snap в режиме AVR.
- Переход: MPLAB X IDE импортирует проекты Atmel Studio 7 через File → Import → Atmel Studio Project.
Статус и версии
На странице продукта Microchip крупно предупреждает: Microchip Studio не рекомендуется для новых разработок и не поддерживает новые продукты компании; для новых возможностей и поддержки предлагается MPLAB for VS Code. Скачать среду по-прежнему можно — офлайн- и веб-установщик версии 7.0.2594 и примечания к выпуску датированы 20 июня 2022 года. Официальной даты прекращения поддержки (end of life) на странице нет.
Ключевые выпуски линейки 7.0 по примечаниям DS50002917D:
| Выпуск | Что изменилось |
|---|---|
| 7.0.1416 | драйвер WinUSB для AVR Dragon, AVRISP mkII, JTAGICE mkII, JTAGICE3, AVR ONE!, STK600 и QT600; AVR 8-bit GCC Toolchain 3.6.0 (GCC 5.4.0, avr-libc 2.0.0); Arm GCC 6.2.1 |
| 7.0.1645 | ATmega4808/4809, ATtiny1614/3214/3216/3217, SAM D51, SAM E5x; AVR GCC Toolchain 3.6.1 |
| 7.0.1931 | ядро Cortex-M23 с TrustZone (SAM L10/L11), отладчик nEDBG, ATtiny202…1607 |
| 7.0.2389 | AVR 8-bit GCC Toolchain 3.6.2 (Arm GCC остаётся 6.3.1, GNU Arm Embedded 6-2017-q2-update, как с 7.0.1645), ASF 3.47.0, паки устройств на сентябрь 2019 года |
| 7.0.2542 | переименование в Microchip Studio; в установщике MPLAB XC8 для AVR; оптимизация отладочной конфигурации -Og вместо -O1; AVR Macro Assembler 2.2.8 |
| 7.0.2594 | поддержка PICkit 4 с обновлением прошивки, новые прошивки Atmel-ICE, JTAGICE3 и Power Debugger, импорт проектов MPLAB Code Configurator, ASF 3.52.0 |
В истории ревизий примечаний (разд. 7) ревизия C от ноября 2020 года описана как добавление сборки 7.0.2539, а в разделе 1.1 переименование отнесено к 7.0.2542 — это расхождение внутри документа Microchip.
Установка и требования
По примечаниям к выпуску Microchip Studio работает в Windows 7 SP1 и новее, Windows Server 2008 R2 SP1, Windows 8 и 8.1, Windows Server 2012 и 2012 R2, Windows 10 — в 32- и 64-битных версиях. Windows 11 в списке нет. Требования к компьютеру:
| Параметр | Минимум |
|---|---|
| Процессор | 1,6 ГГц |
| ОЗУ | 1 ГБ для x86, 2 ГБ для x64, ещё 512 МБ в виртуальной машине |
| Диск | 6 ГБ свободного места |
| Права | локальный администратор |
Перед установкой Microchip советует отключить от компьютера все USB- и последовательные устройства. Microchip Studio можно ставить рядом с Atmel Studio 6.2 и более старыми версиями и AVR Studio — удалять их не нужно. А вот с Atmel Studio 7 она рядом не работает: установщик обновляет Atmel Studio 7 до Microchip Studio.
Поддержку кристаллов дают паки устройств (Device Family Packs) в формате CMSIS-Pack; паки для Arm полностью совместимы со спецификацией Keil. Обновить их или поставить старую версию для давнего проекта можно в Tools → Device Pack Manager. Расширения (QTouch Composer, Percepio Tracealyzer и другие) ставятся из Microchip Gallery менеджером расширений в меню Tools.
Тулчейны в комплекте
Начиная с 7.0.2542 установщик кладёт три компилятора: AVR GCC Toolchain, Arm GCC Toolchain и MPLAB XC8 с поддержкой AVR. Шаблоны проектов определяют, каким из них собирается проект:
| Шаблон | Компилятор | Для чего |
|---|---|---|
| GCC C Executable Project, GCC C++ Executable Project | AVR GCC или Arm GCC | программа на C или C++ для AVR и SAM |
| GCC C Static Library Project | AVR GCC или Arm GCC | статическая библиотека .a |
| GCC C ASF Board Project | AVR GCC или Arm GCC | проект на библиотеке ASF под конкретную плату |
| AVR XC8 C Application Project | MPLAB XC8 | программа для 8-битного AVR на XC8 |
| Assembler Project | AVRASM2 | программа на ассемблере AVR |
Конкретные версии GCC в двух последних выпусках примечания не называют. Последний раз они перечислены для 7.0.2389: AVR 8-bit GCC Toolchain 3.6.2 и Arm GCC Toolchain 6.3.1. Для сравнения: отдельный AVR 8-Bit Toolchain на сайте Microchip сейчас версии 4.0.0 (сентябрь 2025 года) с GCC 15.1.0, Binutils 2.44 и AVR-LibC 2.2.1 — он работает из командной строки, в Makefile и в MPLAB X IDE. Как им пользоваться напрямую, рассказано в статье «Тулчейн AVR GCC». Программы avrdude в составе Microchip Studio нет: прошивает сама среда через свои драйверы.
Проект: создание, кристалл, сборка
- File → New → Project. В мастере выбрать язык (C/C++ или Assembler) и шаблон, например GCC C Executable Project, задать имя. Каждый проект в Microchip Studio лежит внутри решения (solution); по умолчанию у них одинаковые имена и для решения создаётся своя папка.
- Device Selection. Выбрать кристалл из списка: фильтр Device Family или строка поиска — достаточно набрать часть имени, например
817для ATtiny817. Поискtinyпокажет все ATtiny,mega— все ATmega. - Сборка. Build → Build Solution (F7). В выходной папке проекта появляются
.elf(всё, что пишется в кристалл, включая EEPROM и фьюзы),.hex(флеш-память),.eep(EEPROM) и.lss(дизассемблированный листинг). - Инструмент. Кнопка Tool на панели или свойства проекта → Tool: выбрать программатор (в списке — с серийным номером) и интерфейс. Для платы с встроенным отладчиком, например ATtiny817 Xplained Pro, интерфейс UPDI подставляется автоматически.
- Прошивка и отладка. Debug → Start Without Debugging собирает проект и записывает его в кристалл; Start Debugging (F5) записывает и запускает отладку. Сочетания клавиш для Start Without Debugging по умолчанию нет (разд. 4.5.2 руководства): разные разделы руководства называют Ctrl+F5 и Ctrl+Alt+F5, а Ctrl+F5 в таблице горячих клавиш занят командой Break All, поэтому удобнее назначить своё в Tools → Options → Environment → Keyboard. На своей плате кристалл должен быть запитан и подключён до начала сеанса.
Microchip Studio умеет создавать проект из скетча Arduino (раздел 2.9 руководства), но для обычной работы с платами Arduino удобнее Arduino IDE.
Окно Device Programming
Окно Tools → Device Programming даёт прямой доступ к памяти и битам конфигурации без проекта. Сверху выбирают Tool (в списке только подключённые программаторы, не занятые отладкой), Device и Interface — показываются только интерфейсы, которые есть и у программатора, и у кристалла. Кнопка Apply устанавливает связь. Затем Read в поле Device ID читает сигнатуру, а Target Voltage показывает измеренное напряжение питания цели; если оно вне допустимого для кристалла диапазона, поле подсвечивается красным.
| Вкладка | Что делает |
|---|---|
| Interface settings | частота JTAG и PDI; для JTAG — внешний сброс и цепочка из нескольких устройств |
| Tool information | версии прошивки и аппаратной части программатора |
| Device information | сигнатура, ревизия кристалла, допустимые напряжения и частота |
| Oscillator calibration | читает заводской байт калибровки OSCCAL у ATtiny и ATmega и записывает его во флеш-память или EEPROM |
| Memories | запись, проверка и чтение флеш-памяти и EEPROM; Erase Chip стирает флеш-память, EEPROM (если не запрограммирован EESAVE) и lock bits |
| Fuses | фьюзы в виде галочек и списков, внизу — те же байты в hex |
| Lock bits | биты защиты памяти, работают как вкладка Fuses |
| Production file | запись из одного ELF-файла |
| Security | security bit у кристаллов с защитой отладочного доступа, например SAM L21 |
На вкладке Fuses кнопка Read читает текущие значения, Program записывает. Флажок Auto read читает фьюзы при каждом открытии вкладки, Verify after programming проверяет запись. Значок рядом с фьюзом показывает, совпадает ли значение с кристаллом, изменено ли оно и не записано или ещё не прочитано. Стирание кристалла фьюзы не меняет. Перед записью полезно сверить байты с калькулятором фьюзов AVR: он предупреждает о настройках, после которых кристалл перестаёт отвечать программатору.
Production file — ELF-файл, в котором лежат флеш-память, EEPROM, пользовательская сигнатура XMEGA, фьюзы и lock bits. Формат поддерживается для tinyAVR, megaAVR и XMEGA. Microchip Studio собирает такой файл из проекта или сохраняет из окна программирования, а записывает одной операцией. У tinyAVR и megaAVR стирание перед записью — это всегда полное стирание кристалла, независимо от выбранных разделов.
Security bit закрывает внешний доступ по JTAG и aWire ко всему, кроме команды Chip Erase. Снять его можно только полным стиранием.
Для сценариев и серийной прошивки есть утилита командной строки atprogram.exe (ярлык Microchip Studio Command Prompt): она записывает .bin, .hex и .elf, проверяет, читает и стирает память, пишет фьюзы, lock bits и production-файлы, показывает подключённые программаторы и задаёт частоту интерфейса. Проверка связи с кристаллом из примечаний к выпуску: atprogram -t <tool> -i <interface> -d <device> info, где инструмент — например, atmelice, samice или edbg, а кристалл задаётся полным именем вроде atsam3s4c. Кросс-платформенная альтернатива для AVR — avrdude.
Программаторы и отладчики
По примечаниям к выпуску Microchip Studio поддерживает Power Debugger, Atmel-ICE, встроенный отладчик EDBG оценочных плат, AVR ONE!, JTAGICE mkII, JTAGICE3, STK500, STK600, AVRISP mkII, AVR Dragon и SAM-ICE, а с версии 7.0.2594 — ещё MPLAB PICkit 4 после обновления прошивки. Руководство (разд. 6.3.2) упоминает и MPLAB Snap с PICkit: пункт Communication Mode переключает их между режимами AVR и PIC, а Microchip Studio при работе сама переводит инструмент в режим AVR. О PICkit 5 и MPLAB ICD 5 в документации Microchip Studio ничего не сказано: их Microchip выпускает для MPLAB X IDE и MPLAB for VS Code. Обзор и сравнение устройств — в статье «Программаторы и отладчики».
Atmel-ICE — основной отладчик для Microchip Studio. По руководству Atmel-42330C он программирует и отлаживает все AVR и SAM с отладочным модулем, работает с целями от 1,62 до 5,5 В и потребляет от цели меньше 3 мА в режиме debugWIRE и меньше 1 мА в остальных. Скорости интерфейсов:
| Интерфейс | Диапазон |
|---|---|
| JTAG | 32 кГц — 7,5 МГц |
| PDI | 32 кГц — 7,5 МГц |
| SWD | 32 кГц — 10 МГц |
| SPI (ISP) | 8 кГц — 5 МГц |
| debugWIRE | 4 кбит/с — 0,5 Мбит/с |
| aWire | 7,5 кбит/с — 7 Мбит/с |
| UPDI | до 750 кбит/с |
Какой интерфейс выбрать в окне программирования, зависит от семейства. Основа таблицы — табл. 4-9 руководства Atmel-ICE 2016 года; семейств, вышедших позже, в ней нет, и строка про UPDI-кристаллы дополнена по разделу 3.3.4.3 руководства PICkit 5 (DS50003525C, 2025). Точный набор интерфейсов конкретного кристалла указан в его даташите.
| Семейство | Программирование и отладка |
|---|---|
| Новые tinyAVR, megaAVR 0 (ATmega4808/4809 и др.), AVR DA, DB, DD | UPDI — один вывод, программирование и отладка; у megaAVR 0 и AVR DA/DB вывод UPDI отдельный, у AVR DD и ATtiny он совмещён с другими функциями |
| Старые tinyAVR | ISP (SPI) и debugWIRE у части кристаллов; TPI у некоторых — только программирование, отладочного модуля у них нет |
| Классические megaAVR (ATmega8, ATmega328P, ATmega128 и т. п.) | ISP (SPI) у всех; отладка — debugWIRE (например, ATmega328P) или JTAG у части кристаллов |
| AVR XMEGA | PDI у всех, у части ещё JTAG |
| AVR UC3 | JTAG у всех, у части aWire |
| SAM (Cortex-M) | SWD у всех, у части ещё JTAG |
Как подключать AVR к программатору по ISP и UPDI, разобрано в статье «Программирование AVR», распиновка разъёма — на странице AVR ISP.
Особенности debugWIRE
debugWIRE — однопроводной отладочный интерфейс младших AVR через вывод RESET. Включает его фьюз DWEN, и пока он запрограммирован, вывод RESET занят отладочным модулем, а ISP не работает — даже при запрограммированном SPIEN. Руководство Atmel-ICE советует доверить установку и сброс DWEN самой среде:
- debugWIRE нужны только RESET, питание и земля, но руководство советует разводить на плате полный разъём ISP: DWEN включают и выключают по SPI;
- чтобы вернуть ISP, в сеансе отладки выбирают Debug → Disable debugWIRE and Close: модуль временно отпускает RESET, и DWEN сбрасывается по ISP. Это сработает, только если запрограммирован SPIEN; если питание снять раньше, debugWIRE снова захватит RESET;
- при установленных lock bits debugWIRE не работает. Lock bits нужно стирать до включения DWEN и не ставить, пока DWEN запрограммирован. Если оба установлены, остаётся высоковольтное программирование с полным стиранием.
Высоковольтное программирование старых AVR (HVSP и HVPP) требует 12 В на выводе RESET на всё время записи. По руководству PICkit 5 (DS50003525C) ни один из нынешних инструментов MPLAB этот режим не поддерживает. Из старых инструментов его умеет как минимум STK500: в списке известных ошибок Microchip Studio есть пункт AVRSV-2558 о том, что HVPP-программирование ATtiny2313A на STK500 не работает. Поэтому предупреждения Microchip Studio о DWEN, SPIEN и lock bits стоит читать внимательно.
Data Visualizer
Data Visualizer принимает данные от интерфейса DGI встроенного отладчика EDBG и от COM-портов и показывает их в терминале и на графиках. С Power Debugger или платой, которая измеряет ток, он сопоставляет потребление с выполняемым кодом. Есть отдельная программа и модуль для Microchip Studio. Сам Power Debugger — отладчик с двумя каналами измерения тока, виртуальным COM-портом и регулируемым выходом питания цели 1,6–5,5 В. Data Visualizer есть и в MPLAB X IDE, и в MPLAB for VS Code.
Переход на MPLAB X IDE и MPLAB for VS Code
Для новых проектов Microchip предлагает MPLAB X IDE (версия 6.35 от 24 июля 2026 года, Windows, Linux и macOS) и набор расширений MPLAB for VS Code. На странице MPLAB X IDE компания пишет, что рекомендует MPLAB for VS Code и для новых, и для существующих проектов. Расширения VS Code создают проекты и импортируют проекты MPLAB X IDE, собирают их через CMake компиляторами XC8, XC32 и XC-DSC, программируют и отлаживают кристаллы текущими отладчиками Microchip, включают MPLAB Code Configurator и Data Visualizer.
Проект Atmel Studio 7 переносится через MPLAB X IDE, по разделу 6.2.3 руководства DS-50002027F:
- File → Import → Atmel Studio Project (или File → New Project → Microchip Embedded → Import Atmel Studio Project) и указать файл
.cprojили.cppproj. По умолчанию проекты Microchip Studio лежат вDocuments\Atmel Studio\7.0\. - Проверить кристалл и программатор. Если инструмента проекта в MPLAB X нет, временно оставить исходный и сменить его после импорта в свойствах проекта.
- Выбрать компилятор. Microchip советует на время импорта оставить тот же компилятор, что и в Microchip Studio, и убедиться, что проект работает; сменить его можно потом в свойствах проекта.
- Выбрать пак устройства: найденный в папке паков Microchip Studio (
C:\Program Files (x86)\Atmel\Studio\7.0\packs) или последнюю версию из MPLAB X. - Задать имя и папку. Исходники при импорте не копируются — новый проект ссылается на файлы в папке проекта Microchip Studio. Независимый проект получится, если создать новый и скопировать исходники.
Ассемблерные проекты на AVRASM2 MPLAB X собирает ассемблером, который устанавливается вместе с Atmel Studio. Для серийной прошивки вместе с MPLAB X ставится MPLAB IPE; подробнее о прошивке PIC и AVR программаторами Microchip — в статье «Программирование PIC через ICSP».
Когда Microchip Studio ещё имеет смысл
- Старый проект на Atmel Studio, ASF3 или Atmel START, который нужно поддерживать без переделки сборки.
- Старые отладчики — JTAGICE mkII, AVR Dragon, AVRISP mkII, STK500 и STK600 есть в списке поддержки Microchip Studio.
- Кристаллы, которые Microchip считает устаревшими — ATtiny11/12/15/22, AT90S1200…AT90S8535, ATmega103/161/163/323 и другие из раздела 6.1 примечаний. Поддерживает ли их MPLAB X IDE, документы не говорят — перед переносом проекта проверьте кристалл в списке поддерживаемых устройств MPLAB X.
Для новых AVR и SAM, работы в Linux и macOS и отладчиков PICkit 5 и MPLAB ICD 5 выбирают MPLAB X IDE, MPLAB for VS Code или открытый тулчейн AVR GCC с avrdude. Обзор остальных сред — в разделе «Программы для электронщика», семейство AVR — на странице «Микроконтроллеры AVR».
Частые вопросы
Microchip Studio и Atmel Studio 7 — это одно и то же?
Да. Microchip переименовала Atmel Studio в Microchip Studio for AVR and SAM Devices в выпуске 7.0.2542 (2020 год), номер версии 7.0 сохранился. Последний выпуск — 7.0.2594 от 20 июня 2022 года.
Поддерживается ли ещё Microchip Studio?
Скачать её можно, но на странице продукта Microchip пишет, что Microchip Studio не рекомендуется для новых разработок и не поддерживает новые продукты компании, а для новых возможностей предлагает MPLAB for VS Code. Новых выпусков после 7.0.2594 (июнь 2022 года) не было. Даты окончания поддержки производитель не называет.
Работает ли Microchip Studio в Linux или macOS?
Нет. Это среда на оболочке Visual Studio, и в примечаниях к выпуску перечислены только Windows: 7 SP1, 8 и 8.1, 10 и серверные Windows Server 2008 R2 и 2012. Для Linux и macOS у Microchip есть MPLAB X IDE и MPLAB for VS Code, которые тоже работают с AVR и SAM.
Как в Microchip Studio записать фьюзы AVR?
Через окно Tools → Device Programming: выбрать программатор, кристалл и интерфейс, нажать Apply, затем на вкладке Fuses нажать Read, поменять галочки или списки и нажать Program. Стирание кристалла (Erase Chip) фьюзы не трогает. Значения байтов удобно заранее проверить в калькуляторе фьюзов: неверный выбор тактового генератора или выключенный SPIEN оставят кристалл без связи с программатором.
Как отключить debugWIRE, если ATmega328P перестал отвечать по ISP?
Запрограммированный фьюз DWEN забирает вывод RESET под debugWIRE, и SPI-программирование перестаёт работать. Нужно начать сеанс отладки и выбрать в меню Debug пункт Disable debugWIRE and Close — Microchip Studio выключит debugWIRE и сама сбросит DWEN по ISP, вернув обычное программирование. Это сработает, только если запрограммирован SPIEN. Если одновременно установлены lock bits, debugWIRE не запустится и поможет только высоковольтное программирование.
Источники
- Microchip. Microchip Studio for AVR and SAM Devices (microchip.com), просмотрено 21.10.2026 — статус Not Recommended for New Designs, рекомендация MPLAB for VS Code, версия 7.0.2594 от 20 июня 2022 года
- Microchip. Microchip Studio Release Notes, DS50002917D (июнь 2022) — история версий 7.0.x, состав тулчейнов, список отладчиков, поддерживаемые Windows и требования к компьютеру, паки устройств, устаревшие кристаллы
- Microchip. Microchip Studio User Guide, DS50002718G (2022) — разд. 2.2 — Data Visualizer и отладчики; 2.6 и 2.10 — создание проекта, выбор инструмента, выходные файлы; 5 — окно Device Programming, фьюзы, lock bits, production-файлы ELF; 11 — atprogram
- Atmel. Atmel-ICE User Guide, Atmel-42330C (октябрь 2016) — интерфейсы и скорости, напряжение цели 1,62–5,5 В, табл. 4-9 — интерфейсы по семействам AVR и SAM, разд. 3.6–3.7 — debugWIRE и фьюз DWEN
- Microchip. MPLAB X IDE User's Guide, DS-50002027F (январь 2022); страница MPLAB X IDE, просмотрено 21.10.2026 — разд. 6.2.3 — импорт проекта Atmel Studio 7; версия MPLAB X IDE 6.35 от 24 июля 2026 года и рекомендация MPLAB for VS Code
- Microchip. MPLAB for VS Code и GCC Compilers for AVR and Arm (microchip.com), просмотрено 21.10.2026 — состав расширений, импорт проектов MPLAB X, компиляторы XC8, XC32, XC-DSC; отдельный AVR 8-Bit Toolchain 4.0.0 с GCC 15.1.0
Нашли ошибку?
Смотрите также
- avr-gcc и avr-libcКомпилятор, binutils, avr-libc, avrdude: установка, команды сборки, Makefile, заголовки, ошибки
- Программаторы и отладчикиUSBasp, ST-LINK, J-Link, PICkit 5, Snap, CMSIS-DAP, WCH-LinkE: сравнение
- AVRDUDEПрошивка AVR из командной строки: ключи, Arduino, USBasp, фьюзы, ошибки
- Arduino IDE 2Установка, менеджер плат, порт, библиотеки, монитор порта, HEX-файл, ошибки загрузки
- Фьюзы AVRБиты фьюзов, заводские значения и avrdude
- Прошивка AVRISP, HVPP, debugWIRE, JTAG, PDI, TPI, UPDI, загрузчики, avrdude
- AVRATmega, ATtiny, AVR Dx/Ex: семейства, прошивка, инструменты
- ПрограммыСАПР плат, симуляторы схем, среды и утилиты прошивки МК