Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Микроконтроллеры (MCU) и микропроцессоры (MPU) > Как заставить AVR Studio работать с XMEGA


Автор: Курсант 26.6.2011, 10:13
Всем здравствуйте!
Извините за настырность. И все таки, хочу добить эту проблему окончательно. Суть проблемы в том, что среда AVR Studio не позволяет работать с контроллером Atxmega128a3 (да есть подозрения что и с другими моделями серии xmega тоже). Очевидным решением этой проблемы вижу применение заголовочных файлов из состава Atmel Software Framework, там, помимо определения имен и адресов регистров, есть такие вещи как драйверы устройств (то есть заголовочные файлы с почти высокоуровневыми функциями, с именованными конфигурациями и функциями вроде SetADCConfiguration и тому подобное ). Теперь о том, с какими проблемами столкнулся.
При попытке подключить вместо заголовочного файла avr/io.h файл avr/iox128a3.h, получил ошибку, что нужно вместо этого файла использовать avr/io.h. Полез в текст avr/iox128a3.h, и увидел там такие грабли:
Код

#ifndef _AVR_IO_H_
#  error "Include <avr/io.h> instead of this file."
#endif

#ifndef _AVR_IOXXX_H_
#  define _AVR_IOXXX_H_ "iox128a3.h"
#else
#  error "Attempt to include more than one <avr/ioXXX.h> file."
#endif 

Судя по ним, файл avr/iox128a3.h вообще никогда не заработает. Поэтому первый абзац я стер нафиг. После этого у меня стал компилиться вот такой вот пустой проект:
Код

#include <avr/iox128a3.h>

int main(void)
{
  
}

что было воспринято как хороший знак smile Дальше я пытался скомпилировать такой код: 
Код

#include <avr/iox128a3.h>

int main(void)
{
    GPIOR5 = 120;
}

На что получил ответ: 
Код

Error    2    lvalue required as left operand of assignment    

GPIOR5 определен в заголовочном файле iox128a3 как
Код

#define GPIOR5  _SFR_MEM8(0x0005)

В общем ничего у меня толком не вышло... С драйверами тоже проблема... Которую не знаю как решить. Все драйверы разбросаны по папкам Atmel Software Framework, и ссылаются друг на друга без всяких там путей. При попытке указать абсолютный путь на один заголовочный файл с функциями, получаю пять сообщений, о том что включенные уже в файл драйвера заголовочные файлы не найдены... И опять не знаю, как с этим бороться... Толи собрать все заголовочные файлы в кучу, и пытаться с ними работать там...

В общем если кто-нибудь может что-нибудь подсказать, или дать какую-нибудь статью нормальную, буду очень признателен...

Автор: Курсант 26.6.2011, 14:04
Хммм... Разобрался таки... Будет время - напишу, как именно заставить... Время будет только после 30-го числа.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)