Простой вопрос, ответ на который затрудняюсь найти. Как дать команду компилятору сформировать HEX с кодом начинающимся с заданного адреса вместо 0000 по умолчанию?
За это отвечает не компилятор, а линкер. Пример опций линкера: Код (Bash): -Wl,--section-start=.text=0x3e00 -Wl,--section-start=.version=0x3ffe
Куда это вставлять в IDE? В AVRS нашел куда. И вообще странно, что нужно писать такие заклинания. Наверное редко это используется.
Не знаю. Вы так говорите, потому что пользуетесь в Arduino IDE. Она от пользователей скрывает очень много каких заклинаний. Небольшой совет: если Вы уже дошли до того уровня, когда нужно более гибко управлять сборкой прошивки, то забрасывайте уже Arduino IDE (удалять не обязательно) и начинайте пользоваться более продвинутыми IDE. Тогда у Вас появиться шанс узнать про много разных заклинаний.
За совет спасибо. В данный момент я пользуюсь и тем и другим, в зависимости от ситуации. Благо, что разница не так велика как кажется внешне. Для того чтобы уйти от всяких там digitalWrite() не обязательно уходить с IDE. IDE прекрасно компилит скопипащенный с AVRS код (причем точно такой же), а вот наоборот фигушки (если, конечно, не поставить туда соответствующий плагин). И иногда бывает нужно быстро сделать простую программку не вникая в порты, тут IDE оказывается удобнее. )
Ну так настройте проект правильным образом и будет вам счастье. В приложении для примера шаблоны проектов для Code::Blocks IDE с подключенной библиотекой Wiring и опциями сборки, как в Arduino IDE.