ตัวต้านทานแบบดึงขึ้น - ลง "เก็บ" อินพุตที่ระดับเฉพาะเมื่อไม่มีอินพุตไปยังขาแทนที่จะปล่อยให้อินพุตลอย
เมื่อคุณพิจารณารูปที่ 1 ในรูปวาดของคุณการเปิดสวิตช์ไม่ให้การเชื่อมต่อไฟฟ้ากับพินดังนั้นจึงอนุญาตให้มีการรบกวนจากภายนอกการรั่วไหลภายในและอื่น ๆ ที่มีผลต่อแรงดันไฟฟ้าของพินอินพุต อิทธิพลภายนอกเหล่านี้สามารถทำให้อินพุตถูกตีความว่าเป็นค่าที่ผันผวนทำให้เกิดการแกว่งที่ไม่ต้องการหรือเอาต์พุตที่ไม่คาดคิด
ดังนั้นเพื่อให้แน่ใจว่าพินนั้นอยู่ในสถานะ "รู้" จำเป็นต้องเชื่อมต่อกับ VCC หรือ GND เสมอ ดูรูปที่ 2 อย่างไรก็ตามมีปัญหา: หากคุณเชื่อมต่อพินกับ VCC เพื่อคงไว้ที่สถานะ "สูง" จากนั้นเชื่อมต่อสวิทช์ของคุณกับ GND และกดสวิทช์คุณจะสร้างคำสั่งสั้น ๆ ! คุณจะระเบิดฟิวส์ทำลายแหล่งจ่ายไฟของคุณเผาบางสิ่งบางอย่าง ฯลฯ
ดังนั้นแทนที่จะเชื่อมต่ออินพุตโดยตรงกับ VCC หรือ GND คุณสามารถเชื่อมต่ออินพุตผ่านตัวต้านทานแบบดึงขึ้น / ดึงลงได้ ในรูปที่ 3 พวกเขาใช้ตัวต้านทานแบบดึงขึ้นเชื่อมต่ออินพุตกับ VCC
เมื่อไม่มีอินพุตอื่นบนพินกระแสไฟฟ้าเกือบเป็นศูนย์จะไหลผ่านตัวต้านทานแบบดึงขึ้น ดังนั้นจึงมีแรงดันตกคร่อมน้อยมาก สิ่งนี้ทำให้สามารถเห็นแรงดัน VCC ทั้งหมดได้ที่ขาอินพุต กล่าวอีกนัยหนึ่งหมุดป้อนข้อมูลอยู่ในระดับ "สูง"
เมื่อสวิตช์ของคุณปิดตัวต้านทานอินพุตและพูลอัพจะเชื่อมต่อกับ GND ปัจจุบันบางกระแสเริ่มไหลผ่าน pull-up แต่เนื่องจากมันเป็นความต้านทานที่สูงกว่าลวดที่นำไปสู่ GND แรงดันไฟฟ้าเกือบทั้งหมดจึงลดลงผ่านตัวต้านทานแบบดึงขึ้นทำให้มีแรงดัน ~ 0 โวลต์ที่ขาอินพุต
คุณจะเลือกตัวต้านทานค่าที่ค่อนข้างสูงเพื่อ จำกัด การไหลของกระแสเป็นค่าที่สมเหตุสมผล แต่ไม่สูงเกินกว่าความต้านทานภายในของอินพุต
ตัวต้านทานแบบดึงขึ้นช่วยให้คุณสามารถเก็บอินพุตไว้ที่สถานะที่รู้จักเมื่อไม่มีอินพุต แต่ยังให้ความยืดหยุ่นในการป้อนสัญญาณโดยไม่ต้องสร้างสัญญาณลัด