ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
12 июля
422827
Back-loz (08.07.2013 21:39, просмотров: 876)
У меня случилась такая проблема. Сразу предупрежу что в плане программирования на IAR-овском ассемблере я новичок, хотя вообщем систему команд THUMB-2 знаю. Приведу сразу свой код который я пытаюсь написать на IAR 6.4.0 неважно что и как он должен делать. Программа предполагается для STM32F407VG и в настройках был выбран именно этот микроконтроллер.
NAME    main
        
NEXT    MACRO
        LDRH R1,[R0,#2]
        LDR PC,[R8,R1,LSL #2]
        ENDM
COMPILE MACRO
          IF _args == 1
          DC16 \1
          ENDIF
          IF _args == 2
          DC16 =\1
          DC32 =\1
          ENDIF
        ENDM
        PUBLIC  __iar_program_start
        
        SECTION .intvec : CODE (1)
        THUMB
        
        SECTION ThreadedCode : DATA (1)
        DC16 123
        ;MACRO LIT 1
        ;MACRO LIT 2
        
__iar_program_start
        B       main
        SECTION WORDS : CODE (1)
        THUMB

;NEXT     LDRH R1,[R0,#2]
;         LDR PC,[R8,R1,LSL #2]

ENTER   push {R0}
        ADD R0,R8,R1,LSL #2
        LDRH R1,[R0,#4]
        LDR PC,[R8,R1,LSL #2]

EXIT    pop {R0}
        NEXT

PLUS    LDMIA R2!,{R4,R5}
        ADD R4,R5,R4
        STMDB R2!,{R4}
        NEXT

LIT     ADD R1,R1,#1
        LDR R1,[R8,R1,LSL #2]
        STMDB R2!,{R4}
        NEXT
        ;LDRH R1,[R0],#2
        ;LDR PC,[R8,R1,LSL #2]
        
        SECTION .text : CODE (1)
        THUMB
  
main    NOP
        ADD R1,R2,R3
        B main

        END
дело в том что как только я добавляю в код секцию для данных: SECTION ThreadedCode : DATA (1) DC16 123 то ИАР начинает выдавать ошибку Error[Lp001]: no definition for init routine "__iar_copy_init3" вообщем подскажите в чём проблема и как её исправить??