Procházet zdrojové kódy

Merge pull request #385 from Defragster/patch-6

Teensy4: Startup Hooks
teensy4-core
Paul Stoffregen před 5 roky
rodič
revize
ab83544af0
Žádný účet není propojen s e-mailovou adresou tvůrce revize
1 změnil soubory, kde provedl 6 přidání a 0 odebrání
  1. +6
    -0
      teensy4/startup.c

+ 6
- 0
teensy4/startup.c Zobrazit soubor

@@ -35,6 +35,10 @@ uint32_t set_arm_clock(uint32_t frequency); // clockspeed.c
extern void __libc_init_array(void); // C++ standard library


void startup_default_early_hook(void) {}
void startup_early_hook(void) __attribute__ ((weak, alias("startup_default_early_hook")));
void startup_default_late_hook(void) {}
void startup_late_hook(void) __attribute__ ((weak, alias("startup_default_late_hook")));
__attribute__((section(".startup"), optimize("no-tree-loop-distribute-patterns"), naked))
void ResetHandler(void)
{
@@ -115,12 +119,14 @@ void ResetHandler(void)
}
SNVS_HPCR |= SNVS_HPCR_RTC_EN | SNVS_HPCR_HP_TS;

startup_early_hook();
while (millis() < 20) ; // wait at least 20ms before starting USB
usb_init();
analog_init();
pwm_init();
tempmon_init();

startup_late_hook();
while (millis() < 300) ; // wait at least 300ms before calling user code
//printf("before C++ constructors\n");
__libc_init_array();

Načítá se…
Zrušit
Uložit