Без описания |
Поиск в теме | Версия для печати |
cjA |
Отправлено: 12 Марта, 2011 - 21:05:26
|
Генерал
Сообщений всего: 3291
Дата рег-ции: Янв. 2010
|
а, lamakazzz, не въехал.
Denis800
не пользоваться программ нотепад.
пишите на Си в АВРстудио, ставте галку что мэйкфайла нет, он сам его сгенерирует, все таки они тащат за собой "обязанность" поддержки всех процессоров и всех операционок.
А у АВРстудио этого нет
(разбираться в мэйкфайлах в GCC- это все равно что китайский учить. У меня всегда кончалось слезами, битьем клавы об свою бошку и написанием собственных батников)
(Добавление)
(залезу-ка, почитаю статью)
(Добавление)
это не статья , а заметка , про дельфи.
я совсем не об этом...
сейчас расскажу...
(Добавление)
вначале я установил- AVRStudio
потом- WinAVr
Запускаем студио, потом новый проект AVR GCC (там еще будет ассемблер)
В названии проекта пишем myGCCtest, то же появляется в папке проекта.
Не все чипы поддерживаются для этой спайки, но у меня тинька2313- выбираем ее.
залезим в окно редактора, пишим
void main ()
{
}
как видите по F11 все работает.
Ну осталось только подтянуть включаемые файлы для ваших предопределенных переменных .
Я ни Сишник, и если кто что подправит- нискока не обижусь, мне приятен был факт что не нужно задумываться над содержанием мэйкфайла, так то я не особенно в Си, но ...
...
Кароч в AVRStudio можно работать и с асмом и с Си (для Си нужно скачать GCC в виде бесплатной WinAvr) |
|
|
lamakazzz |
Отправлено: 14 Марта, 2011 - 11:06:38
|
Главнокомандующий
Сообщений всего: 328
Дата рег-ции: Янв. 2010
|
Denis800, не усложняйте себе жизнь, сделайте всё как написано шаг за шагом, почитайте ту статью, которую я привел выше. То, что там идёт речь о Делфи - это Вы поверхностно смотрите. Делфа тоже юзает свой make.exe - от этого и отталкивайтесь.
На первых порах лучше обойтись без лишнего мозгоприкладства и сделать так, чтобы заработало. Тем более, с этой темой уже многие сталкивались и живут отлично.
cjA, когда проекты небольшие, то можно обходиться и без make-файлов. Но вот, к примеру на последнем проекте, есть несколько видов плат и на каждой плате по 5 МК разных типов (2 шт. dsPIC33FJ256GP710 и 3 шт. dsPIC33FJ256GP506). Так вот базовое ПО в них идентичное, различие только в ПФМе. Собирать всё это руками можно, не спорю. Но человеческий фактор играет большую роль и ошибок стопудово не избежать. А еще и зашивать всё это надо. Вот тут на помощь приходит make-файл. Необходимо только правильно его составить и в результате одной кнопкой компилятся все эти прошивки. Удобно, не так ли?
make-файлы представляют сложности только по началу, но за один рабочий день без труда можно разобраться что к чему, главное - найти нормальную литературу.
Да и вообще, мэйки пригодятся пользователям всяких X-овых систем. |
|
|
cjA |
Отправлено: 15 Марта, 2011 - 22:59:26
|
Генерал
Сообщений всего: 3291
Дата рег-ции: Янв. 2010
|
Denis800, нельзя скопировать проект, можно или создать новый или открыть старый.
От того как вы создан проект будет выглядеть оболочкка студии, некоторые функции появятся, некоторые исчесзнут, изменить это будет нельзя.
Итак, стоит аврстудио и винавр
запускаем студио, нажимаем кнопку ньюпроект.
появляется окошко с выбором типа, имени, и тд
выбираем тип AVR GCC (тот который с коровой , а не с жуком)
(папку лучьше создать в корне, без кирилицы и пробелов)
некст
выбираем симулятор 2 и тип процессора. (некоторые будут недоступны)
финиш
открывается окно редактора с основным файлом вашего проекта, пустым (mygcctest.c)
для чего нужен МК? для работы с портами.
пишем например так
CODE:
#include <io.h>
int main ()
{
DDRB = 0hff;
char k = 1;
while (1)
{
PORTB=k;
k=k<<1;
}
}
нажимаем ctrl+f7
Ага! пишет что не знает где лежит io.h
лезем меню, проект, опции конфигурации, папки включений...
там находим где находятся инклюды и подключаем папку с ними- у меня это h:\winavr-20100110\avr\include\avr
(это странно, может и у меня криво стоит, ведь в опции конфигурации, выборочные опции - пути к )
(Добавление)
продолжаю ...
(пути к avr-gcc.exe и make.exe стоят правильные)
нажимаем OK, нажимаем ctrl+f7, нажимаем f11, наблюдаем справа внизу как весело у нас в порт б прыгает квадратик.
Удачи
(Добавление)
я не против makefile, lamakazzz, аврстудио сама его генерирует и подсовывает в мэйк от gcc, но в ее мэйкфайле 79 строчек для этой программы, а winavr предлагает мэйкфайл длинной в 618 строчек.
Разница есть? (а чтобы поглумится ребята даже специальную программу написали для его редактирования)
//hex и eep лежат в папке дифалт вашего проекта. |
|
|
lamakazzz |
Отправлено: 16 Марта, 2011 - 09:55:07
|
Главнокомандующий
Сообщений всего: 328
Дата рег-ции: Янв. 2010
|
Так в том-то и дело, что Вы можете сделать мэйк более компактным и универсальным, заменяя кое-что переменными и указывая универсально файлы для сборки, а не абсолютные пути, например. Вот уже разница будет ощутима =)
Но поскольку Вы юзаете стандартный мэйк и не разбирались в нем, то это представляет некоторую сложность в понимании. Мэйк даёт широчайшие возможности! Например, Вы можете за один прогон не только скомпилить проект, но также указать, где будут лежать временные и конечные файлы, удалить временные файлы и вообще задать различные правила сборки и оптимизации и всё это в одном флаконе. Иначе всё пришлось бы делать ручками, а если еще и много действий с многим кол-вом файлов, то полезет человеческий фактор - ошибки и прочая лабуда - от этого никуда не денешься.
Согласен, что на простых проектах, особенно по началу, про мэйк файл можно забыть (возможно, даже нужно) и не тратить на него нервы и время. |
|
|
|
Поиск в теме | Версия для печати |
Страниц (2): « 1 [2] |
« Программирование микроконтроллеров » |
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
|
|
|
|
|