Jump to content

    

Вопрос по IAR asm

У меня нет проблем с ассемблером под все мною освоенные микроконтроллеры. А нюансы, рано или поздно найду решение.

Си много раз пытался освоить, не моё.

Я думаю, что у всех, кто Вам в этом топике что то советовал, нет проблем с ассемблером под разные платформы, но у всех этих людей так же нет проблем с Си, так как Си, в принципе, поддерживает любые платформы.

 

Share this post


Link to post
Share on other sites
Предложенные варианты у меня не работают

Что именно из предложенного не работает: "--image_input" или

Документацию на компилятор открывать пробовали?
не работает? :biggrin:

Share this post


Link to post
Share on other sites

Очень рад за всех этих людей.

Если конкретно по ассемблеру реальных примеров нет, то Си оставим в покое.

Конструкцию из даташита

 

--image_input=filename,symbol,segment,alignment

 

В линкере строка есть, но файл не добавляет в код

Share this post


Link to post
Share on other sites
В линкере строка есть, но файл не добавляет в код

Т.е. - "почему у других работает, а у меня нет?" даже не задумались?

Видимо нужно ещё обеспечить чтобы линкёр не выкидывал эту секцию из выходного файла. А для этого имя "httpContent" должно использоваться где-то в программе.

Ну и регион компоновки для секции ".httpContent" в .icf-файле тоже неплохо указать.

Share this post


Link to post
Share on other sites

Всё заработало.

 

-gbootsymbol

--image_input=$PROJ_DIR$\папка\файл.bin,bootsymbol,BOOTLOADER,1

-Z(CONST)BOOTLOADER=0x7400,0x7fff

 

Спасибо всем.

 

Share this post


Link to post
Share on other sites

Спасибо не булькает... (; Что не так-то было? Расскажите.

Share this post


Link to post
Share on other sites

Приветствую всех.

Подскажите знатоки AVR  IARа не получается в проекте на ассемблере определить данные.

Конструкция типа     

           RSEG     DATA,100
buffer  Ds      128

определяет начало блока данных в области Кода.


                ****************************************
                *                                      *
                *      SEGMENTS IN ADDRESS ORDER       *
                *                                      *
                ****************************************

SEGMENT              SPACE    START ADDRESS   END ADDRESS     SIZE  TYPE  ALIGN
=======              =====    =============   ===========     ====  ====  =====
?FILL1               CODE          00000000 - 00000057          58   rel    0
CODE                 CODE          00000058 - 0000005B           4   rel    1
DATA                 CODE          00000064 - 000000E3          80   rel    0

                ****************************************
                *                                      *
                *        END OF CROSS REFERENCE        *
                *                                      *
                ****************************************

 0 bytes of UNTYPED memory (+ 128 absolute )
 4 bytes of CODE    memory (+   88 range fill )

 

Подскажите как правильно указывать Данные в ассемблерном проекте для AVR, за ранее благодарен за совет.

По Help   асму  примеры не работают, результат так или иначе связан с определением с кодом программы.

.DSEG IAR не понимает.

Edited by kuber

Share this post


Link to post
Share on other sites

Можно использовать злобный хак. Напиши код на С и скомпилируй его с генерацией листинга и ассемблерного файла. Так получишь скелет с определением всего что надо на асме. И его уже дальше редактируй как надо.

Share this post


Link to post
Share on other sites

Спасибо подсказку.

Всё получилось, даже как то просто.

           RSEG    DATAS:DATA,0
buffer  DS      128
;

и результат


                ****************************************
                *                                      *
                *      SEGMENTS IN ADDRESS ORDER       *
                *                                      *
                ****************************************


SEGMENT              SPACE    START ADDRESS   END ADDRESS     SIZE  TYPE  ALIGN
=======              =====    =============   ===========     ====  ====  =====
START                CODE          00000000 - 000000FF         100   rel    0
CODE                 CODE               00000100                                rel    1
DATAS                DATA          00000000 - 0000007F           80   rel    0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this