Меню Рубрики

Avr studio mac os

Think Create | Deqing Sun

AVR Studio on Mac OS

by seer on Nov.11, 2011, under Uncategorized

AVR studio is the official development tool for AVR chips. Users can focus on programming rather than Makefile or configuring the tool chain. Also both the hardware and software simulation function is powerful and it is the only way for us to use the debugging tools to troubleshoot in real environment.

This is a tutorial of using PlayOnMac to run the AVR studio in Mac OS. The software functions pretty well. I haven’t tested the connection of the programming tools.

First you need to download PlayOnMac, AVR Studio and WinAVR. I’m using PlayOnMac4.0.13, AVR Studio 4.19 and WinAvr 20100110.

PlayOnMac is based on wine. Although you can download the source code and compile, it is easier to use the pre-compiled binary package.

PlayOnMac requires XQuartz2.6.3. So you need to upgrade your system to higher than 10.6.3 before installing XQuartz. You’d better logout and log back in after the installation of PlayOnMac to update your DISPLAY environment variable to point to XQuartz.app rather than X11.app. Otherwise, X11 will mess up most icons in AVRstudio just like the following pictures. I realized this problem after taking most of the screenshots.

Double click WinAvr to install it first.

Then open the configuration window in PlayOnMac and select winavr prefix. Click “Run a .exe file in this virtual drive” to install AVRStudio. If you install them separately, AVRstudio will not find the toolchain.

You can make a shortcut of AVRstudio.exe to make it easier for further use.

Now you can launch AVRstudio. If you get an error message like the second screenshot, it is cause by the separation of AVRstudio and WinAvr.

You can create a new project by project wizard. This project will make the on-board led blink on Arduino board.

Choose AVR Simulator and ATmega328P.

In “Project”->”Configuration Options”, change Frequency to 16000000.

Press F7 to compile the project (the code won’t appear automatically so you need to type or paste them).

Then you can find the compiled hex file in Finder.

As long as you can upload a sketch in Arduino IDE, you can get the avrdude command by holding shift and press upload.

Simply replace the file name and path of the target hex file; you can upload the hex file via bootloader.

The led on Arduino will blink.

Logout and log back in after installation of PlayOnMac. You can see PlayOnMac is using XQuartz instead of X11. All icons are displayed correctly.

5 Comments for this entry

Did you ever correctly interface this with a uC? I am receiving the AVR Studio can not find tool chain error.

WinAVR-20100110-install.exe (Ran 1st)
AvrStudio4Setup (1).exe (Ran 2nd)

I didn’t use avr studio to connect to hardware. Instead I ran avrdude on mac to download firmware to chip.
But your “can not find tool chain error” may caused by not installed two package into the same virtual machine.

Читайте также:  Cisco packet tracer for mac os

Did you ever correctly interface this with a uC? I am receiving the AVR Studio can not find tool chain error.

I am trying this on my mac, but when I install AVRStudio, I am getting a message “same or higher version of .net framework 4 has already been installed on this computer”, and then I have to exit the installer. I think I am doing everything the same.

I guess you are using a new version of AVRStudio.
I’m using 4.18 and it does not require .net framework.

Источник

AVR под Mac OS X – это просто!

Всё течёт — всё меняется.

Казалось бы совсем не давно наличие самостоятельно собранного PC считалось нормой высоких технологий, а постоянный «апгрейд» доставлял игровое удовольствие — как процесс творчества. Да и чувствовалась какая-то законченность, так как если не PC — то что? В то прекрасное время, как правило, все PC имели настоящие COM и LPT порты, что упрощало «до нельзя» изучение и освоение AVR. Чем, собственно многие и баловались. Ну как не побаловаться? PC — вот он под рукой, купил AVR-ку «за не дорого» и шей её сколько душе угодно, «скрутив» один единственный шнурок :))

Но, как известно — «всё течёт, всё меняется», и стала появляться достойная (в аппаратном смысле) техника, которая не шумит, собрана «по белому», работает по 24 часа в сутки годами и не виснет, и не греется. И стала находить она своё распространение среди честного люда. И стал чаще возникать вопрос перед честным людом как на сим коне ещё и свои AVR-прихоти реализовывать, учитывая то, что аппаратных COM и LPT портов нет. Да и система несколько отличается — Mac OS X как-никак 🙂 Не ставить же ради AVR дополнительно ОС Windows?

Вот и решил автор облегчить начинающим жизнь, поделившись своим опытом. Описание действительно и будет полезно для обладателей iMac, Mac Mini под управлением Mac OS X (Snow Leopard).

Необходимое ПО.

Итак. Mac OS кроме графического интерфейса имеет прекрасную Unix-like оболочку. Люди, которые раньше сталкивались с Linux, Unix и прочими *nix системами, будут прекрасно себя чувствовать, используя наработки всего *nix мира, которые прекрасно живут и здесь. Да и для тех, кто не сталкивался с *nix системами — ничего страшного. Так как из всей мощи коммандной строки, нам, вобщем-то, необходимо будет всего-то: запускать комманду компиляции, да и утилиту прошивки AVR устройст. Проще говоря, всё у нас сведётся к двум коммандам: make и make flash 🙂

Итак. Нам нужно всего два предмета: компилятор нашего софта и утилита программирования AVR-устройств. Благо, что и здесь добрые люди о нас позаботились, портировав известный всем avr-gcc пакет на Mac OS, да ещё и упростив процедуру установки. Всё, что нам понадобится — так это посетить страницу загрузки проекта CrossPack for AVR: www.obdev.at/products/crosspack/download.html скачать последнюю редакцию пакета и установить одним кликом 🙂 Не плохо почитать ReadMe.rtf возле установщика.

Установили. В результате установки мы получили и компилятор avr-gcc и средство прошивки avrdude.

Теперь открываем программу «Терминал» (если Терминал был открыт, желательно открыть новое окно, чтобы появились новые переменные окружения). Заходим в любимый каталог, где мы собираемся творить свои поделки, например это будет рабочий стол. Для этого в «Терминале», в коммандной строке пишем:
cd

Читайте также:  Vmware mac os sierra iso

Теперь мы в каталоге рабочего стола. Создадим здесь Demo проект, для чего введём:
avr-project Demo

В результате имеем на рабочем столе папку Demo с демонстрационным проектом внутри. Заходим любыми удобными средствами внутрь папки Demo и видим Demo.xcodeproj (для любителей Xcode) и папку firmware (для нас). Заходим в firmware и видим два файла:

  1. Main.c — собственно сама программа для AVR.
  2. Makefile — а это самый нужный файл, к которому нужно очень внимательно отнестись в самом начале настройки. Так как в нём мы укажем для какого процессора компилировать программу, параметры прошивания устройства и т. д. Это сделаем внимательно один раз и потом просто будем компилировать и шить всё что хотим «лёгким движением руки».

Откроем любым текстовым редактором Makefile.

Обратим внимание на параметр DEVICE — здесь мы указываем процессор, для которого компилируется программа. Параметр CLOCK — частота, на которой работает процессор. PROGRAMMER — это набор параметров для прошивки утилитой avrdude, о которой мы поговорим позже. Ну и FUSES — самый опасный параметр, требующий особой внимательности, так как при комманде make fuses — он устанавливает fuse на микроконтроллере. Чем это чревато при не правильных установках — думаю тебе уже известно.

Если мы прямо сейчас введём комманду «make», то получим скомпилированную прошивку для МК, который указан в параметрах DEVICE и CLOCK файла Makefile. Прошивка и вспомогательные файлы будут лежать в текущем каталоге. Процесс компиляции сопровождается комментариями компилятора и указаниями на ошибки (если таковые имеются).

Итак, программно мы уже готовы к проектам AVR. Осталось подыскать подходящий программатор (аппаратный разумеется). Какие же нам подойдут программаторы? Чтобы узнать вводим комманду:
avrdude -c ?

Теперь ты видишь просто огромный список поддерживаемых устройств-программаторов. Запоминаем/распечатываем и идём на радиобазар (опыт показал, что радиобазар — самый быстрый способ как приобрести, так и вернуть/обменять программатор))

Программатор.

Чтобы не мудрствовать лукаво, исходим из того, что он дожен быть наиболее стандартным. Главное: при покупке ОБЯЗАТЕЛЬНО оговаривай с продавцом безпроблемный возврат, если вдруг тебе что-то в нём не подойдёт. Не важно насколько программатор стандартный и должен правильно работать, если у тебя не получится его «завести», то какая разница по какой причине? Поэтому перед покупкой с продавцом договорился о возврате «если тебе по любой причине не подойдёт», он — кивнул головой, пришёл домой — подключил, проверил, работает — ОК. Если помучался, не смог заставить работать — вернулся на следующий день — забрал деньги. От того, как эти деньги вернул продавец, станет сразу понятно: иметь с ним долгосрочные отношения дальше или нет. Купил другой программатор и т.д.

Итак я приобрёл самый простой, первый попавшийся USB-программатор за $20-$25 который гордо нёс надпись, что он STK500v2 совместимый (кому интересно: and-tech.pl/programator-avrprog-usb-v2/ ). Но и это не важно, так как смотрим список поддерживаемых устройств утилитой avrdude и выбираем, что нашей душе угодно.

Читайте также:  Wondershare video converter mac os x

Принёс его домой, воткнул, у меня сразу появилось устройство: /dev/tty.usbmodemavrdope1

Итак я изменил в Makefile параметр PROGRAMMER:
PROGRAMMER = -c stk500v2 -p m16 -P /dev/tty.usbmodemavrdope1
где -c stk500v2 это тип программатора; -p m16 это тип МК (ATMega16A); -P /dev/tty.usbmodemavrdope1 это адрес устройства программатора.

Так же установил значения FUSES, однако реально FUSES на МК менял отдельным скриптом — так спокойнее было 🙂

Разумеется, что строчки с коммандой exit стоят для того, чтобы не было случайного запуска скрипта и требовалось особой осознанности того, кто желает поменять фьюзы на МК.

Теперь мы и аппаратно подкованы. Можем создавать свой проект в новом каталоге, копируем туда наш Makefile, делаем необходимые изменения в Makefile (МК, частота, порт программатора, фьюзы-если необходимы), а далее всё просто. В Main.c пишем свою программу для МК. В «Терминале» в нашем каталоге вводим комманду «make» — наблюдаем процесс компиляции и возможные ошибки/предупреждения. Если всё ок, вводим «make flash» -наблюдаем процесс прошивки МК. Если в Makefile установили правильно и осознанно параметр FUSES, то можно запустить «make fuses» и программатор установит фьюзы на твоём МК.

Достаточное ПО.

Разумеется, удовлетворив необходимые условия для AVR творчества, мы подходим к достаточным условиям. А именно: первое с чем сталкивается начинающий программист — так это поиск толкового текстового редактора. Автор уважает труд других людей и предпочитает не нарушать права «писателей ПО». Поэтому поиск вёлся в русле свободного ПО. Фаворитами стали абсолютно бесплатный проект Komodo Edit ( www.activestate.com/komodo-edit ) и условно бесплатный Sublime Text 2 ( www.sublimetext.com/ ). Условная бесплатность у последнего очень оригинальная. Производитель указывает на то, что ты можешь скачать и пользоваться ею бесплатно. Со временем, тебе таки нужно её приобрести, НО по времени ты никак не ограничен. Что же по удобству, так именно Sublime Text 2 меня очень порадовал. На нём я и остановился.

В моих проектах я люблю общаться с МК по RS232. Это удобно и для отладки процессов, и для изменения параметров процессов «на ходу», поэтому многим может понадобиться ещё один COM порт. Для этого я взял самый простой и дешёвый USB-COM шнурок с pl2303 на борту. Не стоит пугаться, практически все Noname (дешевые и безимянные) переходники и шнурки на этой микросхемке. Качаем нечто типа драйвера под этот чип ( sourceforge.net/projects/osx-pl2303/files/ ), устанавливаем, подключаем шнурок и у нас появляется устройство типа /dev/tty.PL2303-00001004

Осталось найти достойный и бесплатный терминал, который бы общался с RS232. И такой был найден. CoolTerm ( freeware.the-meiers.org/ )

Небольшой Видео-пример по теме статьи в котором мы редактируем, компилируем, прошиваем, настраиваем терминал и общаемся с МК:

Описанные в статье условия оказались для меня достаточными для удобного и простого создания AVR проектов на Mac OS X! Причём нативно и без каких-либо эммуляций. В следующей части, на примере одного из моих проектов, я покажу как это всё работает «в живую». Как программатор шьёт и питает схему, как через подключенный USB-RS232 шнурок мы тут же «общаемся» с МК, изменяя параметры работы схемы или снимая статистику.

Источник

Adblock
detector