আমি এই উত্তরটি এসটিএম 32 জিপিআইও সেটিংস বোঝার থেকে পেয়েছি
- জিপিআইওপুপিডি (পুল-আপ / পুল-ডাউন)
ডিজিটাল সার্কিটগুলিতে, গুরুত্বপূর্ণ যে সিগন্যাল লাইনগুলি কখনই "ভাসমান" হতে দেয় না। অর্থাৎ, তাদের সর্বদা উচ্চতর বা নিম্ন রাজ্যে থাকা দরকার। ভাসমান অবস্থায়, রাজ্যটি নির্ধারিত হয় এবং কয়েকটি বিভিন্ন ধরণের সমস্যা সৃষ্টি করে।
এটি সংশোধন করার উপায় হ'ল সিগন্যাল লাইন থেকে ভিসি বা জিএনডিতে একটি প্রতিরোধক যুক্ত করা। এইভাবে, যদি লাইনটি সক্রিয়ভাবে উচ্চ বা নিম্নটি চালিত না হয়, তবে প্রতিরোধক একটি পরিচিত স্তরে যাওয়ার সম্ভাবনা তৈরি করবে।
এআরএম (এবং অন্যান্য মাইক্রোকন্ট্রোলার) এটি করার জন্য অন্তর্নির্মিত সার্কিট্রি করেছে। এইভাবে, আপনার সার্কিটে আপনাকে আর একটি অংশ যুক্ত করার দরকার নেই। উদাহরণস্বরূপ, আপনি যদি "GPIO_PuPd_UP" চয়ন করেন তবে এটি সংকেত লাইন এবং ভিসি-র মধ্যে একটি প্রতিরোধক যুক্ত করা সমান।
পুশ-পুল: এটি আউটপুট টাইপ যা বেশিরভাগ লোকেরা "স্ট্যান্ডার্ড" হিসাবে ভাবেন। যখন আউটপুট কম যায়, সক্রিয়ভাবে মাটিতে "টানা" হয়। বিপরীতে, যখন আউটপুট উচ্চে সেট করা হয়, তখন সক্রিয়ভাবে ভিসিটির দিকে "ধাক্কা" দেওয়া হয়। সরলীকৃত, এটি দেখতে এরকম দেখাচ্ছে:
অন্যদিকে ওপেন-ড্রেন আউটপুট কেবল এক দিকে সক্রিয়। এটি পিনটি মাটির দিকে টানতে পারে তবে এটি এটিকে বেশি চালাতে পারে না। পূর্ববর্তী চিত্রটি কল্পনা করুন তবে উপরের মোসফেট ছাড়াই। যখন এটি স্থলভাগে টানছে না, তখন (নীচের দিকের) এমওএসএফইটি কেবল অ-পরিবাহী, যার ফলে আউটপুটটি ভাসমান।
এই ধরণের আউটপুটটির জন্য, সার্কিটের সাথে একটি পুল-আপ রেজিস্টার যুক্ত হওয়া দরকার, যা কম চালিত না হলে লাইনটি উচ্চতর হয়। আপনি এটি বাহ্যিক অংশের সাথে বা GPIO_PuPd মানটি GPIO_PuPd_UP এ সেট করে করতে পারেন।
নামটি এসেছে যে মোসফেটের ড্রেন অভ্যন্তরীণভাবে কোনও কিছুর সাথে সংযুক্ত নেই connected মোসফেটের পরিবর্তে বিজেটি ব্যবহার করার সময় এই ধরণের আউটপুটটিকে "ওপেন-কালেক্টর "ও বলা হয়।
মূলত, এটি আউটপুট সিগন্যালের স্লিভ রেট (উত্থানের সময় এবং পতনের সময়) নিয়ন্ত্রণ করে। স্যুইভ রেট যত দ্রুত, সার্কিট থেকে তত বেশি শব্দ প্রসারিত হয়। বেশিরভাগ হার কমিয়ে আনা ভাল অনুশীলন, এবং আপনার যদি কোনও নির্দিষ্ট কারণ থাকে তবে কেবল এটি বাড়ান।