Jump to content

    
Sign in to follow this  
pitter_3

IAR, AVR Studio, WinAVR

Recommended Posts

суть в том чтоя уже откомпилировал до этого 2 или 3 программы используя этот Makefile
Угадал все буквы и даже слова, а смысл прежложения не постиг.

Для каждой программы (вернее для каждого проекта) всегда пишут свой собственный Makefile (не будем вдаваться в подробности и рассматривать случай включения Makefile'ов).

Share this post


Link to post
Share on other sites
суть в том чтоя уже откомпилировал до этого 2 или 3 программы используя этот Makefile
А потом установили на комп какой-то компилятор имени борланда?

Вы можете убеждать меня или себя сколько угодно, но makefile для WinAVR написан под gnu make. Если вы не верите, что синтаксис Borland make и GNU make отличается - чем же мы можем помочь?

Share this post


Link to post
Share on other sites
или снести борланда ;)

:bb-offtopic:

Что я и сделал при первой же возможности (для этого dll-ки для дельфийской программы на mingw32-gcc переделал).

 

Share this post


Link to post
Share on other sites

Товарищ видимо не совсем понял, что make.exe есть и в каталоге Builder'a и в WinAVR. Хоть эти файлы и имеют одинаковое название, но по сути это две совершенно разные программы несовместимые друг с другом. И в path прописаны пути к им обоим, но путь к WinAVR имеет более низкий приоритет, т.к. инсталляция borlanda была позднее и добавила свои пути до путей WinAVR. Чтобы исправить ситуацию надо поместить пути WinAVR раньше buildera.

(наберите в справке windows "переменные среды окружения или системные переменные")

Share this post


Link to post
Share on other sites

Напишу здесь чтобы не создавать ещё одну тему.

Есть такая "хитрая" загвоздка с AVR Studio (версия 4.18). В общем работаю в IARe 5.51, а дебаг программный делаю в студии и всё всегда работало. Однако есть проект массивный, где такая связка не работает и не знаю почему. Вроде всё как всегда линковщик настроен на ubrof8, всё линкуется, открываю файл в студии .dbg, но он врубает десасемблер, а на С не хочет. Что только не делал, все настройки проверял не в какую. Тут же открываю другой проект, всё тоже самое и там работает.

 

П.С. Этот проект был перенесён со старой версии ИАРа 4.20, но в новом всё компилится, в общем должно быть всё норм по идее. У кого-нибудь такое было?

Edited by cyb

Share this post


Link to post
Share on other sites
открываю файл в студии .dbg, но он врубает десасемблер, а на С не хочет.
Посмотрите на вкладке Output компилятора, стоит ли галочка "Generate debug information".

 

Share this post


Link to post
Share on other sites
Чтобы исправить ситуацию надо поместить пути WinAVR раньше buildera.

(наберите в справке windows "переменные среды окружения или системные переменные")

Или, есть вариант проще:

переименовать каталог куда был установлен Borland в _Borland, на время работы с gnu make.

Share this post


Link to post
Share on other sites

Не смог обнаружить в WinAVR функции или макросы преобразования двоичного кода в двоично-десятичный. Имеются ли в нём таковые, или кроме printf() ничего нет и нужно создавать свои?

Share this post


Link to post
Share on other sites
Использование printf() - слишком уж тормозной и memory-потребляющий способ.
С printf в avr-libc недавно разбирались - не слишком memory-потребляющий, около 20 байт на стеке. Неспешный, это да. А, еще по размеру кода может быть великоват.

 

дымок: В avr-libc есть функции ltoa(), itoa(), utoa, ultoa(). Вы можете вычесть из каждого символа результата по '0' и сложить полученные числа парами в тетрады. Или писать свою функцию - поддержка BCD-кода как-то не слишком распространена в языках программирования.

Share this post


Link to post
Share on other sites

Грубо от 1.5 до 2.5 килобайта в зависимости от версии форматтера (поддержка разных вариантов ширин полей и float).

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this