سلام دوستان عزیز
اقا ما اخر این اینتراپت تو توابع cmsis سردر نیاوردیم
میخوام هرموقع اینتراپت خورد متوجه بشم این فایل ویدیویی رو هم دیدم ولی بازم متوجه نشدم
اگه کسی مثالی داره قرار بده ممنون میشم
میخوام 3 تا اینتراپت 0و1و2 همزمان راه بندازم
تشکر
سلام دوستان عزیز
اقا ما اخر این اینتراپت تو توابع cmsis سردر نیاوردیم
میخوام هرموقع اینتراپت خورد متوجه بشم این فایل ویدیویی رو هم دیدم ولی بازم متوجه نشدم
اگه کسی مثالی داره قرار بده ممنون میشم
میخوام 3 تا اینتراپت 0و1و2 همزمان راه بندازم
تشکر
به نام آن کسی که به من بال پرواز داد تا اوج بگیرم
سلام
مهندس کار سه سوته!
کدام فایل ویدیویی ؟
کجاش ایراد دارید؟ دیباگ کردید ببینید بعد اینیشیالیز همش فعاله؟
سلامممممممممممممممممممممم ممممممممممممممممممممممممم ممممم اقا مهدی خیلی وقت بود انجمن نیومده بودم دلم تنگ شد براتون
ویدیویی که شما زحمتش کشیدین
برای شما استادا کار سه سوته ما پیر مردا که یک ماه باید کار کنیم روش
چیزی که فهمیدم اینه اول باید هر سه تا رو به ترتیب pinsel کنیم بعدش دیگه هیچی نفهمیدم
به نام آن کسی که به من بال پرواز داد تا اوج بگیرم
من خودم با رجیستر راحت ترم
شما قسمت رجیستریش ببین چطوریه
اها باشه یک نگاه میندازم
ولی استاد گرامی من نمونه میدادی بد نبود
به نام آن کسی که به من بال پرواز داد تا اوج بگیرم
خوب وقتی وقفه 0 و یک نمونش هست در فیلم شما کافیه این دو را بذارید بغل هم که هر دو با هم فعال شود و دیباگ هم کنید مطمئن شوید از فعال شدن pinsell هر دو فعال شدن وقفه هر دو
مهندس دستت درد نکن
روش کار میکنم ببینم به چه نتیجه ای میرسم
متشکرم
به نام آن کسی که به من بال پرواز داد تا اوج بگیرم
سلام
آقا من الان یک چیزی سردر نیاوردم
اینکه الان ما اینتراپت 0 رو انتخاب کردیم
بعدش تنظیمات مخصوص وقفه انجام دادیم
سوالی که پیش میاد اینه من زیر برنامه کجا بنویسم
وقتی وقفه اومد برنامش کجااااااااااااااااااااااا اااااااااااا بنویسم اصلا چطور بفهم وقفه خورده
اینم برنامه خود سی دی بدون تغییرات
PINSEL_CFG_Type PinCfg;
EXTI_InitTypeDef EXTICfg;
/* Setting P2.10 as EINT0 */
PinCfg.Funcnum = 1;
PinCfg.OpenDrain = 0;
PinCfg.Pinmode = 0;
PinCfg.Pinnum = 10;
PinCfg.Portnum = 2;
PINSEL_ConfigPin(&PinCfg);
/* Initialize External 0 interrupt */
EXTI_Init();
EXTICfg.EXTI_Line = EXTI_EINT0;
/* edge sensitive */
EXTICfg.EXTI_Mode = EXTI_MODE_EDGE_SENSITIVE;
//EXTICfg.EXTI_Mode = EXTI_MODE_LEVEL_SENSITIVE;
//EXTICfg.EXTI_polarity = EXTI_POLARITY_LOW_ACTIVE_OR_FALLING_EDGE;
EXTICfg.EXTI_polarity = EXTI_POLARITY_HIGH_ACTIVE_OR_RISING_EDGE;
EXTI_Config(&EXTICfg);
به نام آن کسی که به من بال پرواز داد تا اوج بگیرم
تا تنظیمات pinsell و تنظیمات وقفه انجام دادید تا وقفه میاد برنامه تشریف میبره زیر روال وقفه مربوطه
بحث منم همینه این زیر روال کجاس ؟
اخه من زیر روالی تعریف نکردم
به نام آن کسی که به من بال پرواز داد تا اوج بگیرم
اقا مهدی
فکر کنم مشکل حل شد ظاهرا زیر برنامه باید اینجا بنویسمvoid EINT0_IRQHandler(void
{
EXTI_ClearEXTIFlag(EXTI_EINT0);
}
به نام آن کسی که به من بال پرواز داد تا اوج بگیرم