2015-12-14 16 views
2

В микроконтроллере Cortex M3, когда переменные в разделе .data Flash будут скопированы в SRAM, выполняется ли это до получения сброса и начальные указатели SP или позже? Am использование Keil4 и LPC 1778В микроконтроллере Cortex M3, когда переменные в разделе .data Flash копируются в SRAM, Is

ответ

2

Вот как это обычно идет:

  1. Загрузчик MCU в этом минимальный HW первонач, читает SP и PC с FLASH, и запускает код пользователя;
  2. Код пользователя копирует .data от FLASH до ОЗУ и нулей .bss;
  3. main() называется.

Например:

+0

Можете ли вы показать мне, где в Keil запуске файла это происходит [ссылка] (https://github.com/openxc/nxp-cdl/blob/master/CMSISv2p00_LPC177x_8x/src/startup_LPC177x_8x.s) –

+0

Извините, связанные файлы для голых систем. Ищет файлы типа 'crt' в Keil. (crt означает C runtime). Они должны включать этот код. – domen