Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ORG в ассемблере IAR 6.20 ARM
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > IAR
Tanker
Здравствуйте!
скачал на попробовать IAR 6.20, и решил им перекомпилить проект писанный в 4.42 (проект на ARM7, в тоже время есть проекты на Cortex которые пишутся на GCC, есть желание перейти по всем проектам на IAR)

столкнулся с проблемами переноса на этапе стартапа, а именно в нашем стартапе, вектора определены так:
Код
__program_start
    org 0x00
        LDR     PC, =Reset_Handler
......................
    org 0x10
        LDR     PC, =DAbt_Handler
    org 0x18
        LDR     PC, VICADDRESS;вероятно тут какая-то фишка, ибо в екзамплах обычно [PC, #-0x0120]


А в асме 6.20 ORG отсутсвует, чем его заменить? не хотелось бы править то что написано мудрыми предками

вот ещё:
почему компилится но не линкуется?:
LDR PC, VICADDRESS
Error[Lp002]: relocation failed: value out of range or illegal: 0xfffffee0
Kind : R_ARM_LDR_PC_G0[0x4]
Location: 0x00000018
"__vector" + 0x18
Module: D:\Project\Projects\GALS\DXGLS\FW\LPC\iar620\fs008\Release\Obj\LPC2300.o
Section: 10 (.intvec)
Offset: 0x18
Target : 0xffffff00
Absolute symbol VICADDRESS
Error while running Linker

Kavlav
По правильному пишется не ORG, a к примеру, SECTION .intvec:CODE:NOROOT(2).
Откройте в папке examples любой cstartup.s и все прояснится.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.