Разброс файла ARM Cortex M4 и запись программы - PullRequest
0 голосов
/ 10 января 2020

У меня проблема с запуском и профилированием моей C сборки для Cortex M4 с помощью профилировщика ARM Workbench IDE (RVCT). Профилировщик просто зависает и не входит в основную функцию.

Вот мой Makefile:

    CPU       = Cortex-M4
    CFLAGS    = --c99 --cpu=$(CPU) -Otime -O3 --min_array_alignment=8

    ifeq "$(CPU)" "Cortex-M4"
        CPPFLAGS += -DCortex_M4
    endif

    LDFLAGS   = --cpu=$(CPU) --info sizes,totals --remove --inline --scatter Cortex-M4.scat 
    DEPFLAGS  = --depend_target $@ --md --no_depend_system_headers --phony_targets --depend $(BUILD)/$*.Td

А это файл разброса:

FLASH_LOAD 0x0000 0x10000000
{
  VECTORS 0x0 0x400
  {
    * (:gdef:__vectab_stack_and_reset, +FIRST)
    ; Additional region for other vectors would be added here
  }

  ;; Maximum of 256 exceptions (256*4 bytes == 0x400)
  CODE 0x400 FIXED
  {
    * (+RO)
  }

  DATA 0x00140000 0x00800000-0x00140000-0x00008000
  {                     
    * (+RW, +ZI)
  }

  ;; Stack grows downwards
  ARM_LIB_STACK 0x00800000 EMPTY -0x8000
  {
  }

  ;; Heap grows upwards
  ARM_LIB_HEAP 0x00800000 EMPTY 0x0200000
  {
  } 

}

Do Мне нужно дать какие-либо конкретные c параметры для Makefile или для профилировщика? Профилировщик имеет следующие параметры, которые я не изменил по умолчанию: База кучи: 0x00000000, Лимит кучи: 0x0007c000, База стека: 0x00080000

...