Компиляция с заданного адреса?

Тема в разделе "Микроконтроллеры AVR", создана пользователем ostrov, 29 фев 2016.

  1. ostrov

    ostrov Гуру

    Простой вопрос, ответ на который затрудняюсь найти. Как дать команду компилятору сформировать HEX с кодом начинающимся с заданного адреса вместо 0000 по умолчанию?
     
  2. AlexU

    AlexU Гуру

    За это отвечает не компилятор, а линкер.
    Пример опций линкера:
    Код (Bash):
    -Wl,--section-start=.text=0x3e00 -Wl,--section-start=.version=0x3ffe
     
    ostrov нравится это.
  3. ostrov

    ostrov Гуру

    Куда это вставлять в IDE? В AVRS нашел куда.
    И вообще странно, что нужно писать такие заклинания. Наверное редко это используется.
     
    Последнее редактирование: 1 мар 2016
  4. AlexU

    AlexU Гуру

    Не знаю.
    Вы так говорите, потому что пользуетесь в Arduino IDE. Она от пользователей скрывает очень много каких заклинаний.
    Небольшой совет: если Вы уже дошли до того уровня, когда нужно более гибко управлять сборкой прошивки, то забрасывайте уже Arduino IDE (удалять не обязательно) и начинайте пользоваться более продвинутыми IDE. Тогда у Вас появиться шанс узнать про много разных заклинаний.
     
  5. AlexU

    AlexU Гуру

    И некоторое уточнение: я надеюсь Вы знаете, что в AVR во flash адресуются слова, а не байты?
     
  6. ostrov

    ostrov Гуру

    За совет спасибо. В данный момент я пользуюсь и тем и другим, в зависимости от ситуации. Благо, что разница не так велика как кажется внешне. Для того чтобы уйти от всяких там digitalWrite() не обязательно уходить с IDE. IDE прекрасно компилит скопипащенный с AVRS код (причем точно такой же), а вот наоборот фигушки (если, конечно, не поставить туда соответствующий плагин). И иногда бывает нужно быстро сделать простую программку не вникая в порты, тут IDE оказывается удобнее. )
     
  7. Unixon

    Unixon Оракул Модератор

    Ну так настройте проект правильным образом и будет вам счастье. В приложении для примера шаблоны проектов для Code::Blocks IDE с подключенной библиотекой Wiring и опциями сборки, как в Arduino IDE.
     

    Вложения:

    • leonardo.zip
      Размер файла:
      241,2 КБ
      Просмотров:
      278
    • mega.zip
      Размер файла:
      239,1 КБ
      Просмотров:
      298
    • uno.zip
      Размер файла:
      237,8 КБ
      Просмотров:
      268