Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

Работа в Code::Blocks

Непрочитано 06.04.2011, 00:18  
CodeNameHawk
Вид на жительство
 
Регистрация: 21.10.2009
Сообщений: 349
Сказал спасибо: 181
Сказали Спасибо 65 раз(а) в 57 сообщении(ях)
CodeNameHawk на пути к лучшему
По умолчанию Работа в Code::Blocks

CodeBlokcs визардом создал проект (атмега16)

Код:
#include ‹avr/io.h›
#include ‹avr/eeprom.h›

uint16_t EEMEM proba;

int main(void)
{

    eeprom_busy_wait();
    eeprom_write_word(&proba,0x1111);

    while(1)
	{
	}

    return 0;
}
При компиляции (Build-›Build) вылазит ошибка :
Код:
mus/main.c:10: undefined reference to `__eewr_word_m16'
Видно, что вызывается
Код:
avr-g++
Как и где поменять установки, чтобы использовался
Код:
avr-gсс
Подскажите где найти инфу по конфигурации CodeBlokcs для работы с WinAVR. (Как прикрутить внешний макефайл знаю)

mus.rar
Реклама:

Последний раз редактировалось CodeNameHawk; 06.04.2011 в 00:22.
CodeNameHawk вне форума  
Непрочитано 06.04.2011, 10:41  
projects.org.ua
Заблокирован
 
Регистрация: 15.10.2010
Адрес: Kiev/Kharkov
Сообщений: 133
Сказал спасибо: 15
Сказали Спасибо 21 раз(а) в 21 сообщении(ях)
projects.org.ua на пути к лучшему
По умолчанию Re: Работа в Code::Blocks

Найди в каком хидере объявлен тип `__eewr_word_m16' и подключи его, по идее должно попустить.
В крайнем случае добавь видимость этого хидера в мэйкфайл.
projects.org.ua вне форума  
Непрочитано 06.04.2011, 14:09  
CodeNameHawk
Вид на жительство
 
Регистрация: 21.10.2009
Сообщений: 349
Сказал спасибо: 181
Сказали Спасибо 65 раз(а) в 57 сообщении(ях)
CodeNameHawk на пути к лучшему
По умолчанию Re: Работа в Code::Blocks

Сообщение от projects.org.ua Посмотреть сообщение
Найди в каком хидере объявлен тип `__eewr_word_m16' и подключи его, по идее должно попустить.
В крайнем случае добавь видимость этого хидера в мэйкфайл.
Для avr-gcc хватает уже объявленных хидеров. Похоже собака зарыта в другом месте.
В настройках указан avr-gcc для С
Ожидаю, что им будет откомпилирован файл.
Миниатюры:
Нажмите на изображение для увеличения
Название: comp.JPG
Просмотров: 145
Размер:	87.8 Кб
ID:	20263  

Последний раз редактировалось CodeNameHawk; 06.04.2011 в 14:17.
CodeNameHawk вне форума  
Непрочитано 07.04.2011, 16:09  
CodeNameHawk
Вид на жительство
 
Регистрация: 21.10.2009
Сообщений: 349
Сказал спасибо: 181
Сказали Спасибо 65 раз(а) в 57 сообщении(ях)
CodeNameHawk на пути к лучшему
По умолчанию Re: Работа в Code::Blocks

Нашел, что небходимо подключить библиотеку libc.a

Но это решение в лоб, а как это оформить кошерно?
Миниатюры:
Нажмите на изображение для увеличения
Название: linker_settings.JPG
Просмотров: 103
Размер:	70.0 Кб
ID:	20296  
CodeNameHawk вне форума  
Непрочитано 11.04.2011, 16:25  
tanq
Гражданин KAZUS.RUN
 
Регистрация: 12.10.2009
Сообщений: 576
Сказал спасибо: 30
Сказали Спасибо 138 раз(а) в 110 сообщении(ях)
tanq на пути к лучшему
По умолчанию Re: Работа в Code::Blocks

Сообщение от CodeNameHawk Посмотреть сообщение
Нашел, что небходимо подключить библиотеку libc.a
Но это решение в лоб, а как это оформить кошерно?
Project-›Build Options-›Linker Settings

Либо то же самое вписать в натсройки компилятора. Но они действуют глобально, для всех проектов.
tanq вне форума  
Непрочитано 11.04.2011, 21:02  
CodeNameHawk
Вид на жительство
 
Регистрация: 21.10.2009
Сообщений: 349
Сказал спасибо: 181
Сказали Спасибо 65 раз(а) в 57 сообщении(ях)
CodeNameHawk на пути к лучшему
По умолчанию Re: Работа в Code::Blocks

Сообщение от tanq Посмотреть сообщение
Project-›Build Options-›Linker Settings

Либо то же самое вписать в натсройки компилятора. Но они действуют глобально, для всех проектов.
Извините слабо объяснил.
Я нашел, что для данного проца библиотека "libc.a" лежит в "C:\WinAVR\avr\lib\avr5"
ИМХО, чтобы собиралось при замене проца на другой, надо указывать файл библиотеки "libc.a", который лежит в "C:\WinAVR\avr\lib"
Тогда по идее линкер, в зависимости от проца, сам выберет нужную библиотеку (н.п. из папки "C:\WinAVR\avr\lib\avr3"), но так не хочет собираться.

Последний раз редактировалось CodeNameHawk; 11.04.2011 в 21:26.
CodeNameHawk вне форума  
Непрочитано 12.04.2011, 00:18  
zhevak
Прописка
 
Регистрация: 26.04.2005
Сообщений: 209
Сказал спасибо: 199
Сказали Спасибо 390 раз(а) в 159 сообщении(ях)
zhevak на пути к лучшему
По умолчанию Re: Работа в Code::Blocks

А я вызываю линковщик для си-шных проектов не через g++, а через gcc.

Linker for dinamic libs: gcc

На вкладке, которая приведена в предыдущем посте.

Может не правильно. Но я все время так и работаю. С++ проектов не делаю. Поэтому вопросов не возникает.
zhevak вне форума  
Непрочитано 12.04.2011, 21:05  
CodeNameHawk
Вид на жительство
 
Регистрация: 21.10.2009
Сообщений: 349
Сказал спасибо: 181
Сказали Спасибо 65 раз(а) в 57 сообщении(ях)
CodeNameHawk на пути к лучшему
По умолчанию Re: Работа в Code::Blocks

Сообщение от zhevak Посмотреть сообщение
А я вызываю линковщик для си-шных проектов не через g++, а через gcc.

Linker for dinamic libs: gcc

На вкладке, которая приведена в предыдущем посте.

Может не правильно. Но я все время так и работаю. С++ проектов не делаю. Поэтому вопросов не возникает.
И при помощи avr-gcc пробовал.
Код:
avr-gcc.exe -mmcu=atmega16 -Os -Wall -DF_CPU=11059200UL  -mmcu=atmega16 -Os -W -Wall -g -DF_CPU=11059200UL    -IC:\WinAVR\avr\include -IC:\WinAVR\avr\lib  -IC:\mus -c main.c -o obj\Debug\main.o
avr-gcc.exe -LC:\WinAVR\avr\lib -LC:\WinAVR\avr\include  -o bin\Debug\mus.elf obj\Debug\main.o   -mmcu=atmega16 -Wl,-Map=bin\Debug\mus.elf.map,--cref  C:\WinAVR\avr\lib\libc.a 
obj\Debug\main.o: In function `main':
C:\mus/main.c:10: undefined reference to `__eewr_word_m16'
Если вас не затруднит, попробуйте мой проект из первого поста.
CodeNameHawk вне форума  
Непрочитано 12.04.2011, 21:42  
zhevak
Прописка
 
Регистрация: 26.04.2005
Сообщений: 209
Сказал спасибо: 199
Сказали Спасибо 390 раз(а) в 159 сообщении(ях)
zhevak на пути к лучшему
По умолчанию Re: Работа в Code::Blocks

э-э.. "попробовать" что? Откомпилировать?

Загрузил проект в среду. Откомпилировал. Вопросов не возникло. Отчет в прикрепленном файле mus-Release. Единственное, что пришлость изменить -- последнюю строку в Опциях проекта. Я работаю под Линем, поэтому никаких cmd .с "..." не надо. В прочем, эта строка ни на что не влияет. Она "вытягивает" листинг из эльфа, но на компиляцию и линковку влияния ни какого не оказывает.

Да! Я заметил, у Вас почему-то в параметрах дважды указана частота проца и вроде еще что-то.
Вложения:
Тип файла: zip mus-Release.zip (5.4 Кб, 41 просмотров)
zhevak вне форума  
Непрочитано 12.04.2011, 21:57  
CodeNameHawk
Вид на жительство
 
Регистрация: 21.10.2009
Сообщений: 349
Сказал спасибо: 181
Сказали Спасибо 65 раз(а) в 57 сообщении(ях)
CodeNameHawk на пути к лучшему
По умолчанию Re: Работа в Code::Blocks

Спасибо. Место дублирования частоты проца удалил, дальше буду разбираться.
CodeNameHawk вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Напряжённая работа Roshens Отвлекитесь, эмбеддеры! 8 01.09.2010 23:08


Часовой пояс GMT +4, время: 08:32.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.