Программирование Xmega в Linux

 
    Привет, народ. Для всех пингвинов, пытающихся осуществить установку XMega для Linux, я, наконец то смог реализовать это, и мне даже не пришлось ничего компилировать!
   Мои инструменты - плата SparkFun XMega ($ 25) и программатор AVRISP mkII(~ 35 долларов США).
    Я работаю в  Kubuntu Linux 9.10. Это решение, вероятно, будет не так полезно, потому что я предполагаю (но не проверял, поэтому не знаю точно), что Kubuntu 10.04 будет иметь эти обновленные пакеты.
Итак, вот что я собираюсь сделать:
- настройте мою установку Kubuntu 9.10, чтобы скомпилировать XMega с помощью AVR-GCC, - программировать XMegas с использованием AVRDude
- и использовать Eclipse в качестве IDE для всего этого.

    Установите следующие установочные пакеты для вашей системы:
АРН-Libc
AVRDUDE
AVRDUDE-документ
Binutils-АРН

    Установка плагинов Eclipse и AVR
    Сначала запустите установку Eclipse. Вам понадобится Eclipse CDT, который ориентирован на разработку C / C ++ вместо Java. Вы можете скачать его здесь .
   Я установил его в свою папку инструментов разработки. Еще одним стандартным местом является папка opt (/ opt / eclipse).
    После установки Eclipse вы захотите добавить плагин AVR. Следуйте этим инструкциям .

 


Чтобы запустить новый проект AVR для XMega, выполните следующие действия:
1. Нажмите «Файл -> Создать -> Проект C»
2. Введите новое название проекта, а в разделе «AVR Cross Target Application» выберите «Empty Project». AVR-GCC Toolchain следует выбрать с правой стороны. Нажмите "Далее".
3. Нажмите «Дополнительные настройки ...».
4. Нажмите кнопку «AVR-> AVRDude» слева.
5. На вкладке «Программист» выберите своего программиста. Если его нет в списке или список пуст, нажмите «Создать ...» и выберите своего программиста. Для меня это был «Atmel AVR ISP mkII». Нажмите «ОК».
6. Остальные параметры под вкладкой должны быть оставлены по умолчанию.
7. Нажмите кнопку «AVR-> Target Hardware» на левой панели.
8. Выберите процессор. Для меня это «ATXMega128A1».
9. Выберите частоту, с которой будет работать ваш процессор. Для меня 32 МГц.
10. Нажмите «C / C ++ General-> Indexer», затем нажмите ссылку в правом верхнем углу «Настроить параметры рабочей области»,
11. Проверьте опцию «Индекс неиспользуемых заголовков».
12. Проверьте «Исходные файлы индекса, не включенные в сборку».
13. Установите флажок «Разрешить эвристическое разрешение», затем «ОК».
14. Нажмите "Далее".
15. Выберите тип и частоту MCU (опять же, я знаю ...)
16. Нажмите «Готово», чтобы создать проект!

Чтобы запрограммировать контроллер:
1. Нажмите «Run-> Run Configurations ...».
2. В поле «Имя:» введите «Чип программы».
3. В поле «C / C ++ Application:» введите «/ usr / bin / avrdude». Убедитесь, что установлен «Подключить процесс ввода и вывода к терминалу».
4. На вкладке «Аргументы» введите следующее: «-c avrispmkii -p x128a1 -P usb -e -U flash: w: Debug / <имя-проекта> .hex"
5. Нажмите «ОК».

    Теперь в момент нажатия кнопки «Запустить» на панели инструментов (или ее ярлыка, Ctrl-F11) запрограммируется контроллер.По умолчанию для доступа к USB-устройствам необходимы корневые привилегии. Поэтому, когда вы нажмете «Выполнить», он попросит вас ввести ваш пароль (который будет, глупо, появляться в виде простого текста). Чтобы программатор AVR-ISP mkII был доступен простым смертным (не root) пользователям, выполните следующие действия:

1. Откройте терминал. Запустите текстовый редактор как root для создания файла «/etc/udev/rules.d/50 -usbavrispmkII.rules ». Например:
> sudo kate /etc/udev/rules.d/50 -usbavrispmkII.rules
2. Вставьте в редактор следующее:
SYBSYSTEM == "usb", SYSFS {idVendor} == "03eb", SYSFS {idProduct} == "2104", GROUP = "users", MODE = "0666"
3. Выполните следующую команду в терминале:
> sudo udevadm control --reload-rules
    Теперь нет необходимости вводить пароль! Напомню, чтобы собрать проект без программирования нажмите «Ctrl-B». Чтобы создать и запрограммировать, нажмите «Ctrl-F11».
Я нашел маленький недочет, который забыл. Чтобы Eclipseсоздавал HEX afqk (необходимый для работы вышеуказанных инструкций), вам нужно перейти к свойствам проекта -> Настройки, а затем проверить пункт «Генерировать HEX-файл для флэш-памяти». Нажмите кнопку сборки еще раз, и проверьте создание HEX файла.
    Blogger Comment
    Facebook Comment

0 коммент.:

Отправить комментарий