ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 2 از 2
  1. #1
    2014/05/29
    قدس
    1,228
    124

    سوالی در رابطه با توابع NVIC مربوط به UART میکروکنترلر LPC1768

    سلام
    دوستان اونجایی که اشتباه گفتم رو تصحیح کنید و اون سوالم رو هم جواب بدید ممنون میشم.
    خب این 6-7 تا تابع رو یه توضیح میدم(چیزی که فهمیدم) و بعد....
    NVIC_EnableIRQ : فعال کردن وقفه
    NVIC_DisableIRQ : غیر فعال کردن وقفه
    NVIC_SetPriority : تعیین اولویت وقفه (چطور این کارو انجام میده؟ یعنی طبق شکل زیر میاد جای اون وقفه ها رو عوض میکنه؟ شمارشون رو عوض میکنه؟ درسته؟ اصلا ترتیب رخ دادن وقفه های همزمان مثل شکل زیر هستش یا فرق داره؟ )
    NVIC_GetPriority : فهمیدن اولویت وقفه
    NVIC_SetPendingIRQ - NVIC_ClearPendingIRQ - NVIC_GetPendingIRQ : این 3 تابع مربوطه به وقفه معلق، حالا این وقفه معلق دقیقا چیه؟ و چرا تابعی برا پاک کردنش هم داره؟

    کد:
    void NVIC_EnableIRQ(IRQn_Type IRQn)void NVIC_DisableIRQ(IRQn_Type IRQn)
    void NVIC_SetPriority(IRQn_Type IRQn, int32_t priority)
    uint32_t NVIC_GetPriority(IRQn_Type IRQn)
    void NVIC_SetPendingIRQ(IRQn_Type IRQn)
    void NVIC_ClearPendingIRQ(IRQn_Type IRQn)
    IRQn_Type NVIC_GetPendingIRQ(IRQn_Type IRQn)
    اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ وآلِ مُحَمَّدٍ وعَجِّلْ فَرَجَهُمْ

    اگه دوس دارید سریع به جواب برسید :
    1) قبل از پرسیدن سوال، بسرچید.
    2) سوالاتون رو با جزئیات کامل مطرح کنید.
  2. #2
    2012/07/14
    35
    2

    پاسخ : سوالی در رابطه با توابع NVIC مربوط به UART میکروکنترلر LPC1768

    سلام
    در مورد سوال اولتون: تا اونجا که من میدونم اولویت وقفه یه شماره است که وقتی وقفه رخ میده در کنترلر وقفه یا همون NVIC براساس اون وقفه ها به ترتیب اولویت مرتب میشن و اجرا میشن.یعنی اگه چندتا وقفه با هم رخ بده کنترلربرداری وقفه (NVIC) به ترتیب اولویت اونها رو اجرا میکنه.و اگر وسط یه وقفه ،وقفه دیگری با اولویت بالاتر بیاد قبلی رو متوقف میکنه و اونو اجرا میکنه واین روند ادامه پیدا میکنه به همین دلیل هم میگن کنترلر وقفه تودرتو(Nested) هست.
    در مورد سوال دوم : وقتی یه وقفه ای رخ میده تا اجرا بشه یک بیت در کنترلر ست میشه که بگه این وقفه رخ داده،مثل فلگ در میکروهای دیگر.در روتین وقفه حتما اولین کار اینه که اونو پاک کنید.گاهی هم پیش میادکه بخواین نرم افزاری وقفه تولید کنید که از تابع SetPendingIRQ استفاده میکنید.گاهی هم وقفه غیرفعاله و شما با پولینگ از طریق GetPending از وقوع یه رخدا د مطلع میشین.
    در کل برای راه اندازی وقفه به این توابع نیاز داریدبا همین ترتیب:
    NVIC_ClearPendingIRQ
    NVIC_SetPriority
    NVIC_EnableIRQ
نمایش نتایج: از 1 به 2 از 2

موضوعات مشابه

  1. پاسخ: 1
    آخرين نوشته: 2014/08/18, 11:06
  2. کاربرد رجیسترهای بخش NVIC در LPC1768
    توسط hamedb3269 در انجمن NXP
    پاسخ: 1
    آخرين نوشته: 2014/05/08, 20:09
  3. بخش uart مربوط به استارتر کیت LPC1768
    توسط sanatnegar در انجمن NXP
    پاسخ: 4
    آخرين نوشته: 2014/04/28, 08:34
  4. سوالی از توابع رشته ای
    توسط af-2012 در انجمن میکروکنترلرهای AVR
    پاسخ: 5
    آخرين نوشته: 2014/04/06, 15:38
  5. توابع مربوط به حافظه
    توسط mahyarelc در انجمن C , C++ , C#
    پاسخ: 1
    آخرين نوشته: 2011/09/13, 18:40

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •