Не просто есть, а без него никуда. Так как С/С++ и прочие компиляторы GCC геренрируют ассемблерный код, который скармливается as-у (avr-as в случае avr-gcc).
И макросредства у того ассемблера вполне приличные, ну например
http://electronix.ru/forum/index.php?showt...mp;#entry821327Всё почти так же, только в проекте не .c файл, а .S.
Т.е. makefile от этого не поменяется, если там уже была запись для обработки ассемблерных файлов (например, файл переключателя контекстов в scmRTOS). Только теперь метка main должна оказаться в ассемблерном файле.
Вот нашёл
простую болванку проекта. Cтарый довольно, я с тех пор makefle переделывал. Сам makefile и вспомогательные .mak из каталога makefiles те же, что и для С-шных проектов.
В каталоге dummy -- собственно проект. Там добавлять другие .S файлы, они автоматом подхватятся и прилинкуются.
При этом используется та же "запускалка" (стартап), что и для С. Т.е. вектора инициализируюся, память данных инициализируется/чистится, в зависимости от секции.
Там, правда, практически пусто в смысле того, чтобы продемонстрировать работу с векторами прерывания или исползоваия инициализированных данных, но сейчас сил нет что-то добавлять.