بعد از ریست میکر stm چه کارهایی انجام می دهد تا به برنامه ی اصلی برسد

ساخت وبلاگ
سلام
تو این https://www.eca.ir/forums/thread87000.html دوستان گفتن شروع کد از ادرس 0188 هست و دلیلش هم پیدا کردیم
در ای وی ار بعد از ریست میکر تابع مین را اجرا می کرد اما در این میکرو ها یه سری کار ها ی دیگر انجام می دهند
اون کار ها چی می تونن باشند
من ساده ترین کد مکمن را نوشتم
کد:

int main(void)
{
  //HAL_Init();
  //SystemClock_Config();
   
    RCC->AHB1ENR |= 1<<2; //Clock for GPIOD
    GPIOC->MODER=4;
    GPIOC->ODR=2;
    int xx=0;
    fffff:
    xx++;
    if(xx<0x100000) goto fffff;
    GPIOC->ODR=0;
    while(1);
}

و اتفاقا در عمل اجرا شد و کار هم کرد (یک بیزر به به مدت 100 میلی ثانیه صدا می دهد و قطع می شود )
یعنی توابع HAL_Init و SystemClock_Config رو از توی مین پاک کردم و کد کارکرد . این یعنی به هیچ چیزی برای شروع نیاز نداریم
اما سوالی که پیش اومد . با این که تو مین هیچ تابعی را صدا نزدم اما در زمان دیباک کردن ماکرو های داخل startup_stm32f407xx.s اجرا میشن
اینا چی هستن ؟
چطور جلوی اینا رو میشه گرفت .
و این که ایا چیز دیگه ی غیر اینا هست
دستگاه پوشال زن...
ما را در سایت دستگاه پوشال زن دنبال می کنید

برچسب : نویسنده : pushalzan بازدید : 126 تاريخ : پنجشنبه 7 فروردين 1399 ساعت: 9:46