اطلاعیه

Collapse
No announcement yet.

Pull up/down مقاومت

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

    Pull up/down مقاومت

    سلام
    کسی میدونه چرا با وجود اینه میکرو های stm32 مثلا در سری F1 مقاومت داخلی برای آرایش Pull up یا pull down دارند بعضی منابع تاکید بر استفاده مقاومت pull خارجی در پایه ورودی دارند؟
    همانطور که میدونید استفاده از مقاومت pull خارجی باعث میشه بدلیل موازی شدن با مقاومت داخلی امپدانس پایه ورودی کم شه و در نتیجه جریان بیشتری از پایه میکرو کشیده شه، مثلا در f103c8t6 در حالتی که به ورودی 3,3 ولت بدیم مقاومت pull own داخلی طبق دیتاشیت حدود 40k هست و جریانی حدود 80ua از پایه کشیده میشه اما وقتی یک مقاومت خارجی مثلا در حد 10k باهاش pull down میکنیم بدلیل موازی شدن با اون 40k مقدار مقاومت معادل پایه ورودی میشه حدود 8k و جریانی حدود 400ua از پایه میکشه.
    این چه توجیح منطقی برای استفاده از مقاومت pull خارجی به موازات داخلی داره که حاظریم حدود 5 برابر جریان از پایه بکشیم !
    اگر داخلی را غیر فعال کنیم و فقط به خارجی بسنده کنیم بنوعی عقبگرد به نیم قرن پیش و عصر 8051 و avr محصوب میشود پس تکلیف زحمتی که برای پیشرفت تکنولوژی توسط شرکت st کشیده شده چه میشود؟ مثل اینکه پول بدید ماشین دنده اتوماتیک به روز بخرید بعد برید دوباره مثل ماشینهای یک قرن پیش دنده ایش کنید!!!
    جدیدترین ویرایش توسط mrtz_2024; ۱۶:۲۹ ۱۴۰۴/۰۱/۱۸.

    #2
    درود
    بنده با stm32 کار نکردم ولی بطور کلی به نظرم دو مورد را میشه عنوان کرد.
    مورد اول در مورد اینکه فرمودید مقاومت pull داخلی و خارجی موازی میشوند، شما باید اول مقاومت pull داخلی را disable کنید. در واقع کاربر مقاومت pull داخلی را فعال/غیرفعال میکند و اینطور نیست که مقاومت pull داخلی همیشه به پایه وصل باشه.
    مورد دوم در مورد اینکه چرا مقاومت pull خارجی استفاده میشه: مقاومت داخلی دو تا مشکل میتونه داشته باشه. اول اینکه مقدارش ثابت و غیر قابل تغییره و دوم اینکه pull ضعیفی ایجاد میکنه (weak pull-up/down) . هر دو مورد بسته به شرایط مدار میتونه مشکل ایجاد کنه و مدار کار نکنه. یک وقت هست شما فقط میخواهید وضعیت پایه را از حالت float در بیارید تو این حالت فرقی نداره مقاومت داخلی باشه یا خارجی، پس برای کاهش قطعات از همان مقاومت داخلی استفاده میکنیم. ولی یک وقت مثلا دارید با پروتکل i2c کار میکنید و 40k برای pull-up میتونه ضعیف باشه و ارتباط رو خراب کنه. تو این حالت مقاومت داخلی رو غیرفعال میکنید و مثلا یک مقامت 10k خارجی میذارید. از طرفی مقدار مقاومت pull همیشه ثابت نیست و بستگی به شرایط مدار داره و ثابت بودن مقاومت pull داخلی استفاده ازش در این موارد را غیر ممکن میکنه.
    حتما موارد دیگه ای هم هست که اساتید راهنمایی میکنند.

    دیدگاه


      #3
      ممنون از همراهی شما متوجه شدم
      اما سئوالات جدیدی پیش آمده ، یکیش اینه که وقتی پایه های ورودی رو روی حالت NO Pull قرار میدم و Pull سخت افزاری با مقاومت 10K روی ولتاژ 3.3V میکنم طبق رابطه ی آمپر باید حدود 330uA=0.33mA جریان بگذره اما این جریان فقط در حالت Pull up عبور میکنه و در حالت Pull down ده برابر کمتر یعنی 0.033mA=33uA جریان از پایه ورودی عبور میکنه!
      فرمول محاسبه جریان Pull down فرق داره؟ چرا ده برابر جریان کمتر عبور میکنه مگه مقاومتهای داخلی میکرو در حالت No pull نیستند! ظاهرا اینطور که فکر میکنم رو Pull down با اینکه کانفیگ پایه ورودی مربوطه روی No Pull گذاشته شده اما همچنان مقاومت داخلیش با مقاومت خارجیم سری میشه که باعث افت جریان میشه!

      دومی اینکه روی حالت Pull up چرا قبل از کلید زنی حدود 40uA جریان کشی داره پایه ورودی میکرو؟

      با تشکر
      جدیدترین ویرایش توسط mrtz_2024; ۱۳:۳۲ ۱۴۰۴/۰۱/۲۰.

      دیدگاه

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