Основы работы в WinAVR | Любительские конструкции на микроконтроллерах
В качестве платформы для разработки конструкций на микроконтроллерах я использую пакет программ WinAVR. Почему выбор пал именно на него? Данная платформа распространяется бесплатно с открытым исходным кодом. Каждый может её улучшить и доработать по своему усмотрению (хотя смысла это делать не вижу). Генерирует достаточно оптимальный код. Синтаксис языка с в нём максимально приближён к классическому Си, нету конструкций типа PORTB.1 = 1 как в CVAVR. Вообще у меня на компьютере установлены и WinAVR, и пресловутый CVAVR. Есть и PonyProg, и даже Algorithm Builder. И всеми ими приходится иной раз пользоваться , т.е. они друг друга прекрасно дополняют. Например, когда возникла необходимость прошить AT90USB162, я сделал это при помощи CVAVR, т.к. ни PonyProg, ни USBASP_AVRDUDE_PROG не поддерживают данный кристалл. Кроме того CVAVR удобно пользоваться, если надпись на кристалле затёрта и не известен тип. Для этого, после подключения программатора, во вкладке «chip programmer» нажимается кнопка «read signature». Этой же функцией можно воспользоваться, если есть подозрения в исправности программатора или самой микросхемы. Algorithm Builder удобно использовать для написания программ для 8-миногих «тинек» — изучая ассемблер, изучается внутренняя архитектура контроллера. Кроме того, при расчёте некоторых величин для записи в регистры удобно смотреть по вкладкам AB, т.к. при вводе частоты работы ядра автоматически рассчитываются, например, значения регистров для установки скорости обмена по UART, другие величины… Но я отвлёкся, разговор-то идёт про WinAVR. Итак, качаем дистрибутив отсюда и устанавливаем на своём компьютере. Я думаю пошагово объяснять установку не нужно – все, читающие эти сроки, наверняка подготовлены как пользователи ПК. Главной программой, в которой собственно и идёт работа является Programmer Notepage. Для себя я вынес её ярлык на рабочий стол ПК. Открываем Programmer Notepage, «File» -> «New». Откроется окно нового файла. Предварительно создадим папку в которой будут храниться наши проекты. В эту папку сохраним новый файл с расширением с. Набираем собственно код. Для примера я использовал небольшой проектик, который будет выводить на экран LCD индикатора все возможные для него символы, ведь содержимое знакогенератора адресов 0xA0 – 0xFF для различных видов HD44780-совместимых LCD индикаторов может меняться от модели к модели. Итак, набираем код. Сохраняем его как znakogenerator.c в папку Znakogenerator. Кроме того, для работы с LCD необходимо подключить файл с набором таких функций. Берём его из своей наработанной библиотеки и копируем в эту же папку. Ну и для задания параметров самого проекта необходимо создать так называемый makefile. В дальнейшем, после приобретения некоторого опыта данный файл можно будет копировать из других своих проектов, а я сейчас покажу как сделать его с помощью специальной программы из пакета WinAVR. Кликаем «Пуск» -> Все программы -> WinAVR -> MFile (иконка в виде кипящего чайника). Открывается окно. Кликаем «Mikefile» и начинаем вводить параметры своего проекта.
В основном там нужно будет поменять название главного файла проекта (по умолчанию «main»), мы вводим znakogenerator, выбрать тип микроконтроллера MCU type, остальное можно не трогать, все параметры, в том числе и указанные выше, возможно поменять будет потом в папке проекта. Потом кликаем «File» -> «Save As» и сохраняем его как mikefile (по умолчанию) в папку Вашего проекта, в нашем случае папку Znakogenerator. Сохранили, теперь из Programmer Notepage открываем папку проекта и видим там четыре файла: znakogenerator.c – это основной файл проекта, lcd.c, lcd.h – файл функций работы с LCD и заголовочный файл к нему (мы их добавили из своей библиотеки) и makefile проекта, который мы с вами создавали. Откроем его.
Всё, что написано после символа # — это комменты, они нас не интересуют, хотя, если владеете английским можно почитать. Смотрим сверху вниз. Я буду пояснять только те строки, которые необходимы, остальные можно оставить по умолчанию. MCU = atmega88 – строка где мы выбираем тип кристалла. F_CPU = 1000000 – частота работы ядра, которую мы задаём фьюзами. TARGET = znakogenerator – строка, задающая имя главного файла проекта (того, где есть функция main), имя указывается без расширения С. SRC = $(TARGET).c – строка, указующая на источники Си-кода, под ней добавлена строка SRC += lcd.c – этим мы подключаем к проекту файл lcd.c. Если подключаются ещё какие-то файлы, то они так же записываются как указано выше новой строкой под существующими. Листаем вниз, до опций программатора Здесь в строке AVRDUDE_PROGRAMMER = stk500 можно выбрать любой тип программатора, который есть в выпадающем списке программы MFile. Ниже строка выбора порта связи с программатором AVRDUDE_PORT = com1. Список портов также указан в выпадающем списке MFile. С программаторами есть небольшой нюанс. Дело в том, что в выпадающем списке программаторов нет USBasp, а он достаточно распространён среди радиолюбителей. Ничего страшного – пропишем его вручную. Вот так: AVRDUDE_PROGRAMMER = usbasp и укажем порт: AVRDUDE_PORT = usb. Всё, сохраним изменения, нажатием на соответствующую кнопочку. Теперь проект нужно откомпилировать и прошить в кристалл. Для этого соберём схему из элементов микроконтроллерного конструктора и подключим её к программатору USBasp, который хорошо описан здесь. В Programmer Notepage кликаем «Tools» -> «Make Clean» — это очистит папку от предыдущих результатов компиляции. После этого «Tools» -> «Make All» — это откомпилирует проект, и, если не будет ошибок, то вылезет такое окно.
После успешной компиляции в папке проекта появиться куча файлов, о них я сейчас рассказывать не буду – можно посмотреть самим. Потом прошиваем кристалл: «Tools» -> «Program». Если всё соединено правильно, результат будет таким,
а на экране LCD Вы уведите раз в полсекунды меняющиеся символы знакогенератора и их порядковый номер.
Теперь, создавая свой проект, можно не выходя после очередной компиляции в USBASP_AVRDUDE_PROG, Pony Prog или другую программу, зашивать кристалл и видеть результаты изменения исходного кода. Фьюзы предварительно нужно зашить любой из вышеуказанных программ, в зависимости от используемого программатора. Следует также отметить, что WinAVR замечательно стыкуется с AVR studio, но об этом позже. Удачи, друзья!
Запись опубликована в рубрике Разное с метками LCD, WinAVR. Добавьте в закладки постоянную ссылку.
Программирование МК AVR. Описание среды разработки AVR Studio. В теоретической части вы получили общее представление о контроллерах, в частности о том как создавать для них ПО. Так же я упоминал о программной среде разработки AVR Studio. Помимо данной среды разработки существуют и другие. Например WinAVR — бесплатный программный пакет, включающий в себя компилятор для С++ и Ассемблера, IDE, средства отладки, программатор, а так же другие вспомогательные утилиты. Кстати, я с него и начинал, когда писал на С++, очень хорошая вещь. Об этой среде достаточно хорошо расписано здесь. Не будем останавливаться на других средах разработки, более детальную информацию о них вы сможете просмотреть по этим адресам: http://myrobot.ru/stepbystep/mc_programming.php Итак, у вас стоит AVR Studio 4. Программу вы уже написали. Теперь вам необходимо её скомпилировать. Для этого в верхнем меню выбираем Build->Build или просто жмём кнопку F7. Далее, в окне сообщений у вас должно появиться уведомление о том что код успешно скомпилирован, разумеется, если он правильный :) Теперь вы сможете осуществить отладку своей программы. Для этого выбираем пункт Debug->Start Debugging. Запустится окно отладки. Отладка программы осуществляется, посредством последовательного выполнения инструкций и просмотра результатов этого выполнения. Для этого выберете пункт. Debug->Step Over При этом эмулятор перейдёт на следующую команду. Думаю, что неплохо было бы рассмотреть основные элементы средства отладки. Однако, если хорошо дружите с английским, можете посмотреть это в хэлпе. Посмотрите ещё раз на содержание пункта Debug. Там есть также следующие подпункты: Stop Debuggind — остановка отладки. Run — запуск быстрой автоматической отладки. Эмулятор переходит в режим автоматического исполнение кода, при этом не информируя вас о том, на какой команде он находится в данный момент. Это может потребоваться, когда вам необходимо быстро прогнать через отладчик какой-то большой кусок кода и остановиться в нужном вам месте. При этом место остановки автоматической отладки должно быть указано стоп-точкой (Breakpoint). Например. Break — используется для остановки режимов автоматической отладки. Reset — для перезапуска программы эмуляции. Step Into — используется для режима ручной пошаговой отладки, с учётом перехода в подпрограмму, если встречается инструкция вызова подпрограммы. Step Over — работает точно так же как и Step Into за исключением того, что при переходе на инструкцию вызова подпрограммы переходит в режим быстрой автоматической отладки кода подпрограммы и останавливается на следующей инструкции после выполнения подпрограммы. Step Out — используется для запуска быстрой автоматической отладки, если текущая позиция команды находится в вызванной подпрограмме. Это может потребоваться когда вам необходимо перейти в код вызываемой подпрограммы но не отлаживать полностью её в ручном режиме, а остановиться на требуемом вам месте а затем запустить быструю автоматическую отладку в пределах кода подпрограммы. Run to Cursor — используется для запуска быстрой автоматической отладки от текущего положения до места, где установлен курсор. Auto Step — используется для запуска режима медленной автоматической отладки. При этом эмулятор информирует вас о текущем состоянии параметров всех элементов МК. Теперь давайте рассмотрим другие элементы окна отладки. Рассмотрим вкладку Processor. Вот основные её поля: 1 — Показывает текущее состояние счётчика программ, т.е. адрес текущей инструкции в памяти программ. 2 — Указатель стека, показывает текущее значение адреса точки возврата в памяти данным, где, в принципе, и реализован стек. 3 — Текущее значение указателя X (R26:R27). 5 — Текущее значение указателя Z (R30:R31). 6 — Показывает количество машинных циклов, совершённых в режиме отладки. 7 — Показывает условную частоту кварцевого резонатора. 8 — Показывает текущее время по ходу выполнения программы. 9 — Текущее состояние регистра SREG. 10 — Список регистров общего назначения. У отладчика AVR Studio есть также удобное окно просмотра текущего состояния периферийных устройств и других компонентов, а так же регистров специального назначения, отвечающих за их настройки. Так же очень часто бывает нужно регистрировать различные изменения в памяти данных, или в других видах памяти. Для этого есть специальный просмоторщик текущего состояния различных областей и видов памяти. Имеется так же специальный наблюдатель, который показывает изменения, выбранных вами регистров как общего, так и специального назначения. Ну вот в принципе и всё, что хотел для начала рассказать о среде AVR Studio. Вот только ещё следует отметить, что иногда её глючит, особенно ранние версии, однако в большей своей части она работает довольно грамотно 🙂 Загрузка программы в память МК. После того, как вы написали программу её надо как-то «зашить» в сам МК. Для этого используются программаторы. Различают 2 основных способа программирования МК AVR: параллельное и последовательное. Параллельное программирование осуществляется с использованием специализированных параллельных программаторов при повышенном напряжении (+12 В) и обычно используется в массовом производстве для прошивки сразу большого количества МК. На данном этапе мы пока рассмотрим только режим последовательного программирования через интерфейс SPI. Это вид программирования является весьма удобным, не только из-за простоты программирования, но так же возможности осуществлять прошивку контроллера не вынимая его из печатной платы устройства. Теперь поговорим о программаторах. Они бывают самыми разнообразными, но наибольшей популярностью, среди начинающих, обладают простейшие программаторы типа STK200. Самым простым является программатор из «5 проводков» от порта LPT. По сути дела это просто 5 проводков подключённых к соответствующим выводам МК интерфейса SPI. Они подключаются либо напрямую, либо через промежуточные буферы, либо через токоограничивающие резисторы, дабы обезопасить порт. Однако, прямое подключение, по отношению к порту LPT, является опасным, даже при наличие резисторов, т.к. LPT весьма чувствителен к перегрузкам. Впринципе, вы без особых проблем сможете приобрести фирменный программатор компании Atmel, но здесь весь вопрос упирается в финансы, а так же в ваше умение и желание работать с паяльником 🙂 Всё таки рекомендую вам спаять нормальный STK200 с промежуточным буфером, для безопасной работы с портом LPT. Вот например мой самый первый программатор, который я частенько использую и по сей день. Здесь я просто добавил стабилизированный источник питания (LM7805 + батарейка 9 В), а также внешний кварц. Светодиод служит для индикации напряжения питания. 2 панельки для большего удобства, что бы можно было прошивать МК серии Mega к корпусах DIP28 и DIP40. Подключение соответствующих выводов МК к порту LPT осуществляется через токоограничивающие резисторы по 150 Ом. Вторая версия моего программатора соответствует схеме фирменного STK200. Он очень удобен в применении и обеспечивает защиту порта LPT. Однако ему требуется отдельное питание, что не очень удобно в некоторых случаях. Скачать архив с разводкой платы (формат Sprint Layout) Думаю, что с программатором особых проблем возникнуть не должно. Теперь поговорим о программах, с мощью которых мы будет осуществлять загрузку прошивки в память контроллера. В принципе, некоторые среды разработки, например WinAVR и CodeVisionAVR, позволяют производить загрузку вашей программы в контроллер с использование программатора STK200. Однако у AVR Studio нет такой возможности, поэтому придётся воспользоваться чем-нибудь другим. На этот случай имеется очень удобная и бесплатная утилита — PonyProg. Она поддерживает многие популярные программаторы для контроллеров PIC и AVR, в том числе STK200 и позволяет осуществлять прошивку либо через последовательный порт COM и либо через параллельный порт LPT. В верхнем меню Device выбираем нужный тип и модель контроллера, в данном случае AVR micro->Atmega8 Теперь у вас всё есть для загрузки программы в контроллер. В качестве примера попробуем загрузить программу, рассмотренную в предыдущей статье. Для этого мы с помощью меню File->Open Program (FLASH) File открываем файл прошивки «*.hex», который обычно лежит в той же директории где и основной файл вашего проекта. Теперь подсоединяем программатор (ВЫКЛЮЧЕННЫЙ!) к порту LPT, затем включаем. В верхнем меню выбираем вкладку Command->Write Program (FLASH) и ожидаем окончания загрузки и проверки. В случае успешной загрузки данных, прога выдаст вам сообщение «Write Successful!» После загрузки программы в МК отключаем программатор и только потом отсоединяем его от порта LPT. Настройка фьюзов. Практически для всех МК, не только для AVR, существует ряд различных настроек которые определены в особой области памяти. Фьюзы — это обычные биты в регистрах фьюзов. Но программно они не могут быть изменены, а только лишь при помощи программатора. Они могут отвечать за такие настройки как: тип источника тактирования, настройки сброса, тип программирования, управление питанием и т.д. Здесь мы кратко рассмотрим несколько наиболее важных. Выбор источника тактирования и управление питанием. Как я уже отмечал, МК может тактироваться от различных источников. Наиболее популярно тактирование с внутренним кварцевым генератором с использованием внешнего кварцевого резонатора. За настройку источника тактирования отвечают конфигурационные биты, представленные в таблице: Картинка взята с сайта: http://avr123.nm.ru/ Следует отметить, что бит CKOPT отвечает за режим работы усилителя тактового генератора. Здесь возможно два режима:
режим работы в условиях сильных электромагнитных помех и высоких частот, когда амплитуда колебаний на
выводе усилителя XTAL2 равна напряжению
питания и режим, когда амплитуда колебаний значительно меньше напряжения питания.
Первый режим так же рекомендуется использовать при необходимости тактирования других устройств тактовым сигналом МК, однако при таком режиме работы повышается его энергопотребление.
В общем-то о конфигурационных битах достаточно хорошо расписано в соответствующей литературе, поэтому не будем в деталях рассматривать данный вопрос, т. к. для начала вам этого будет достаточно. Вот впринципе и всё что хотелось рассказать в данной статье, а следующей темой будет конкретный практический пример. Желаю удачи! ©2010 «my-electronics.narod.ru»
НА ГЛАВНУЮ |
Использование WinAVR и командной строки для разработки AVR
С тех пор, как мои учебные пособия по V-USB стали популярными, в разделе комментариев постоянно появлялись люди, которые явно заинтересованы в опробовании этого руководства, но из-за ограниченного знакомства с языком C и командной строки либо не могут следовать моим кратким инструкциям по компиляции примеров файлов .hex, либо боятся командной строки, пытаются вместо этого использовать AVR Studio и терпят неудачу.
Должен признаться, поначалу меня немного раздражали эти люди — почему они пытаются следовать сложному проекту, когда они, казалось бы, не понимают, как работает командная строка, make-файлы, компилятор C и процесс компоновки? Затем, комментарий за комментарием, я, наконец, понял, что не все начали программировать в девяностых, когда вы запускали Windows 3. 11 в основном для того, чтобы играть в пасьянс, а самым важным фактором в производительности кодирования был текстовый режим 80 × 50, который позволял вам получать 16-цветное блаженство хакерства в вашей Borland Turbo C++ 3.0 IDE (или RHIDE, после появления DJGPP).
Итак, вместо того, чтобы игнорировать этих людей или часами отвечать на одни и те же вопросы, я решил начать новую серию руководств, чтобы охватить действительно основы разработки AVR так, как я люблю это делать: Old skool.
Навигация по командной строке
Низкая планка мастерства командной строки в разработке AVR. В нем четыре уровня:
- Запуск командной строки
- Переход к каталогу и просмотр его содержимого
- Запуск команд
Первый очень простой. В Windows 7 вы можете просто нажать кнопку «Пуск», ввести «cmd», и все готово. Или введите «команда», так как командная строка обычно отображается первым поисковым запросом. Более хардкорные люди используют Win + R (эта клавиша с символом флага, наконец, делает что-то полезное!) И введите «cmd» в диалоговом окне «Выполнить», как показано на заглавном изображении этого поста.
После того, как вы откусили синюю таблетку, команда № 2 также довольно проста. Во-первых, вам нужно понять, что командная строка очень похожа на проводник Windows (показан на скриншоте выше) — вы всегда находитесь в каком-то каталоге, и команды, которые вы вводите, обычно работают в пределах этого каталога. В приведенном выше примере мы находимся в каталоге E:\Koodi\AVR\usb_tutorial — давайте попробуем воспроизвести это в командной строке:
Как видите, вы используете «X:» для переключения на другой диск, «cd XXX», чтобы перейти в каталог XXX, и «dir», чтобы отобразить содержимое каталога (хороший способ убедиться, что вы находитесь в правильном месте). Кстати, вы можете перейти сразу в несколько каталогов, используя разделитель каталогов \ с такими командами, как «cd koodi\avr\usb_tutorial». Вы, наверное, уже заметили, что имена файлов командной строки Windows не чувствительны к регистру, потому что они не были такими в 80-х, и, знаете, кому вообще нравятся изменения?
Чтобы подняться на один уровень, вы используете «cd . .» («..» по существу означает «один выше»). Чтобы перейти в каталог верхнего уровня, «cd\». Обратите внимание, что обратная косая черта «\» отличается от обычной косой черты «/», используемой в средах типа Unix — не торопитесь, чтобы найти ее с клавиатуры! Вы также можете комбинировать \ и .. с обычными именами каталогов. Теперь вы можете догадаться, что они делают:
cd ..\.. cd \koodi\avr\..\avr dir \koodi\avr dir ..\
Как только вы освоите cd
и dir
, вы уже должны понимать почти все, что нужно знать о командной строке Windows — команды (такие как «cd» и «dir») и их параметры (для обеих этих команд это каталог, в который вы хотите перейти или отобразить содержимое) .
Примечание: нераспознанные команды и переменная PATH
Внимательные читатели обратите внимание, что в приведенном выше примере сеанса командной строки я также пытался запустить «make», как указано в руководствах по V-USB. Командная строка очень удобна и полезна, и в этом случае она распечатала подробное и простое для понимания сообщение об ошибке: Не удалось распознать введенную команду. Это означает, что:
- «make» не является допустимой командой внутренней командной строки
- В текущем каталоге нет «make.exe» (бинарный исполняемый файл) или «make.bat» (текстовый пакетный командный файл)
- … также нет «make.exe» или «make.bat» ни в одном каталоге, указанном в переменной PATH
Что означает эта «переменная PATH»? По сути, это общесистемная переменная (точнее, командная строка «наследует» глобальную настройку, и затем вы можете изменить ее локально с помощью команды «set» и глобально с помощью «setx»), которая сообщает каталоги, в которых выполняется поиск команд. Вы можете просмотреть/изменить глобальную переменную PATH, щелкнув правой кнопкой мыши «Компьютер» в меню «Пуск», выбрав «Свойства»/«Дополнительные параметры системы»/«Дополнительно»/«Переменные среды».
Теперь, когда вы прочитали предыдущий абзац, вы можете забыть об этом. Ключевым выводом является то, что утилиты командной строки, такие как «make», «avrdude» и «gcc», обычно устанавливаются «где-то» при установке WinAVR, MinGW и подобных пакетов компилятора, и установщик изменяет переменную PATH, чтобы включить это. местоположение, поэтому, когда вы вводите эту команду «сделать», она просто работает автоматически. Это означает, что вам не нужно копировать make.exe, gcc.exe или что-либо еще в каталог вашего проекта — если вы это делаете, вы делаете это неправильно !
Установка WinAVR
WinAVR — отличный кросс-компилятор GNU GCC, в котором есть все необходимые утилиты для разработки AVR на языке C (и ассемблере) в Windows. «Кросс-компилятор» означает, что он работает на оборудовании ПК, но генерирует двоичный код для другой платформы, в данном случае для 8-битных микроконтроллеров AVR. GNU GCC — это широко распространенный набор компиляторов C с открытым исходным кодом (также часто включает C++). WinAVR содержит компилятор, несколько полезных утилит, таких как make, и некоторые специфичные для AVR вещи, такие как утилита «avrdude», которую можно использовать для прошивки двоичного файла в микроконтроллер AVR и изменения настроек предохранителей микроконтроллеров AVR.
Установка WinAVR очень проста: вы просто заходите на сайт WinAVR, переходите в раздел загрузки, выбираете последнюю версию install.exe (на момент написания, версия 2010-01-10) и запускаете ее. Вы можете установить его куда угодно, но в целях безопасности можно избегать пробелов в именах каталогов, так как они иногда вызывают проблемы.
После установки WinAVR перезапустите командную строку, чтобы изменения PATH вступили в силу, и убедитесь, что команды «avr-gcc», «avrdude» и «make» выдают собственные сообщения об ошибках (на самом деле avrdude просто отображает свою команду — параметры строки), и вы не получите стандартную тираду «команда не распознана как…». Теперь давайте снова попробуем наш процесс «сделать»:
Вуаля! Теперь, если у вас была схема учебного проекта USB, подключенная к компьютеру через программатор ISP, и настройки Makefile в порядке, вы можете просто ввести «make flash» и начать пользоваться своей программой. Если вы не следите за обновлениями для следующей части, которая будет посвящена компиляции, компоновке и основам Makefile!
Использование микропроцессоров AVR в CCRMA под Win32
Использование микропроцессоров AVR в CCRMA под Win32Pascal Stang, май 2005 г. (в значительной степени основано на руководстве по AVR/OSX, написанном Мэттом Райт)
В этом документе объясняется, как подготовить ПК с Win32 (ПК под управлением Windows 98, Windows2000, WindowsXP) для разработки программного обеспечения AVR в CCRMA. Это в первую очередь предназначен для людей, которые занимались разработкой AVR под Планетой CCRMA Linux, и которые теперь хотят заниматься разработкой самостоятельно ПК с Windows. Это руководство предназначено для тех, кто участвует в программе CCRMA 250a. класс или взаимодействие человека с компьютером летний мастер-класс), но и другим может пригодиться.
Содержимое
- Программное обеспечение Win32, необходимое для разработки AVR: что будет быть установлен и откуда он взялся?
- Этапы установки: как скачать и установить инструменты и библиотеки Преобразователи USB-to-Serial
- : какой использовать и другие полезные детали
- Связь между avr и pd через последовательный OSC (Pd)
Программное обеспечение Win32, необходимое для разработки AVR
Есть много способов получить полный набор инструментов, необходимых для разработки AVR. на ПК. В этом руководстве мы стремимся представить самый простой способ настройки полнофункционального Среда разработки AVR. Ниже приведен список необходимых программных инструментов который вы будете устанавливать. В настоящее время поддерживается версия CCRMA. по CCRMA. Там, где это возможно, также даются ссылки на оригинальные источники.
- Необходимые инструменты
- WinAVR — полный инструмент разработки Win32 AVR-GCC.
упаковка
[Интернет]
- Компилятор AVR-GCC
- Отладчик AVR-GDB (с графическим интерфейсом Insight)
- Программатор УИСП AVR
- Блокнот программиста — отличный редактор кода и менеджер проектов
- Большой набор команд Linux, скомпилированных для Win32 (например, bash, make, ls, больше и т. д.)
- AVRlib — большой набор библиотек кода AVR для облегчения разработка [местный]
- WinAVR — полный инструмент разработки Win32 AVR-GCC.
упаковка
[Интернет]
- Дополнительные инструменты
- Atmel AVRStudio — бесплатный ассемблер, симулятор, отладчик и программатор [веб]
- PonyProg2000 — бесплатный программатор, поддерживающий Процессоры AVR среди многих других [Интернет]
Этапы установки
Для установки всех необходимых инструментов вам потребуется около 80 МБ дискового пространства. Вам также нужно будет выбрать ДОМАШНИЙ каталог на вашем ПК с Windows. Этот каталог будет иметь ту же структуру, что и каталог HOME вашей учетной записи CCRMA linux.
- Загрузите следующие необходимые файлы (версии CCRMA сверху):
- WinAVR-20050214-install.exe (13,3 МБ)
- Чтобы свести к минимуму проблемы, установите WinAVR в новый домашний каталог, который вы создадите, и выберите его без пробелов. путь (например, c:\ccrma).
- Если вы используете Win2000 или WinXP, рекомендуется установить WinAVR с правами администратора.
Для большинства версий Windows:
- Щелкните правой кнопкой мыши Мой компьютер
- Выберите Свойства
- Выберите вкладку Дополнительно
- Щелкните Переменные среды
- Нажмите New , чтобы добавить системную переменную среды.
- Имя переменной: ГЛАВНАЯ
- Значение переменной: c:\ccrma (или что вы выбрали в качестве домашнего каталога)
- в ~/avrlib/make отредактируйте файл avrccrma_make, раскомментировав «пользователь Windows»
Почему именно эти каталоги?
Рекомендуется поместить инструменты WinAVR в путь к каталогу, который не имеет пробелы, потому что пробелы могут вызвать проблемы с разбором командной строки unix.
В CCRMA принято, что avrlib находится в домашнем каталоге каждого пользователя, поэтому, если вы поместите avrlib в указанный вами домашний каталог Windows, у вас будет меньше изменяться при копировании проектов AVR из вашей учетной записи CCRMA Linux.
Преобразователи USB-последовательный порт
Многие современные компьютеры PC/x86 больше не оснащены последовательными портами, поэтому использовать адаптер USB-to-Serial. Я лично добился успеха с Keyspan УПР-112 и Keyspan USA-19устройства и отсутствие успеха с немаркированным универсальное устройство, известное как «Prolific» или «BF». я слышал это в основном эти инструменты работают только с оборудованием Keyspan; пожалуйста, дайте мне знать [Мэтт at CCRMA] вашего опыта работы с другим оборудованием. Если вы физически находитесь в CCRMA Весной 2005 года вы можете одолжить один или оба моих серийных номера на USB устройства.
Для всех этих USB-устройств требуются драйверы, которые обычно поставляются на компакт-диске. вы покупаете устройство, но также доступны для скачивания с сайта производителя веб-сайте (например, http://www.keyspan.com/downloads/win).
После установки драйвера и подключения USB-устройства оно будет отображаться как стандартный COM-порт. Вы можете увидеть, какой номер COM был назначен вашему USB-последовательному порту. адаптер, проверив в диспетчере устройств Windows.
серийный номер osc: от avr до pd
Чтобы заставить AVRmini общаться с Pd на вашем компьютере с Win32 через OSC через последовательный порт через USB в это время не тривиально.