اطلاعیه

Collapse
No announcement yet.

نحوه عملکرد رجیسترهای PINMODE و PINMOD_OD

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    نحوه عملکرد رجیسترهای PINMODE و PINMOD_OD

    سلام.
    دیتاشیت میکروکنترلر LPC1768 رو که مطالعه میکردم توی صفحه 107 در مورد نحوه کار رجیسترهای PINMODE و PINMODE_OD توضیحاتی داده بود که به ابهاماتی برخورد کردم از جمله :
    1- نوشته که مد open drain باعث میشه که پین pulled low بشه اگه پین به صورت خروجی پیکربندی شده باشه و data value صفر باشه. منظور از data value چی هستش؟
    2- نوشته که مد open drain باعث میشه که output driver پین خاموش بشه اگه پین به صورت خروجی پیکربندی شده باشه و data value یک باشه. منظور چی هستش؟
    از صفحه 107 عکس گرفتم و براتون گذاشتم. اگه ممکنه به غیر از سوالات بالا در مورد پاراگراف آخر هم توضیحات کاملی بدین. خیلی ممنون.




    #2
    پاسخ : نحوه عملکرد رجیسترهای PINMODE و PINMOD_OD

    بذار اول یه چیزی رو بگم؛ Open Drain یعنی یه خروجی که می تونه صفر بشه، ولی نمی تونه یک بشه. علت اینکه نمی تونه تو خروجی High بشه اینه که چیزی نداره که ولتاژش رو بالا بکشه. این از این.
    حالا یه تجربه بگم. این LPC1768 چند تا پایه داره که در ذات خودش Open Drain اِ. مثل IC. یه برد برا یکی زده بودم، می گفت به فلان پورتش LED وصل کردیم روشن نمی شه. چند مدت سرِ کار بودیم تا آخرِ سر فهمیدیم این خروجی Open Drain بوده و نمی تونسته High بشه :icon_razz:

    و اما پاراگراف آخر؛ میگه که، وقتی شما خروجی رو 1 می کنید، عملاً یعنی پورت رو هواست دیگه. پورتِ رو هوا یعنی ورودی. خــوب، حالا فرض کن شما با رجیستر PINMODE اومدی Pull-up داخلیِ این رو وصل کردی. در این موقع، اگه پورت رو بخونی 1 می بینی. مثلاً میشه صرفه جویی در استفاده از مقاومت Pull-up خارجی برای IC یا امثال اون.
    بیایید با Google آشتی کنیم!

    دیدگاه

    لطفا صبر کنید...
    X