2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
สวัสดีทุกคน, เมื่อโปรเจ็กต์ Arduino ของคุณมีไฟ LED กะพริบเกินขนาด คุณอาจพบว่าตัวเองต้องการพินเพิ่มเติม
ฉันจะแสดงเคล็ดลับที่คุณสามารถใช้ในที่ซึ่งคุณสามารถมีปุ่มได้หลายปุ่ม โดยทั้งหมดเชื่อมต่อกับพินอะนาล็อกเดียวกัน
ขั้นตอนที่ 1: วัสดุ
วงจรนั้นง่ายมากและต้องการเพียงแค่ตัวต้านทาน 1kOhm สำหรับทุกสวิตช์ โดยพื้นฐานแล้ว เรากำลังสร้างตัวแบ่งแรงดันไฟฟ้า โดยเมื่อกดปุ่มแต่ละปุ่ม เราจะเชื่อมต่อตัวต้านทานจำนวนต่างๆ กับอินพุตแบบอะนาล็อกบน Arduino
ขั้นตอนที่ 2: แผนผัง
เริ่มต้นด้วยการเชื่อมต่อตัวต้านทานตัวใดตัวหนึ่งกับเอาต์พุต 5V และด้านหนึ่งของสวิตช์ตัวแรก อีกด้านหนึ่งของสวิตช์จะต้องเชื่อมต่อกับกราวด์ ปุ่มเพิ่มเติมทุกปุ่มจะเชื่อมต่อกับตัวต้านทานของตัวเองตามลำดับโดยที่ปุ่มแรกและกราวด์อยู่อีกด้านหนึ่ง
พินอินพุตแบบอะนาล็อกเชื่อมต่อระหว่างตัวต้านทานตัวแรกกับปุ่มอินพุตตัวแรก
แผนผังแบบเต็มใน EasyEda มีให้ที่นี่:https://easyeda.com/bkolicoski/Multiple-buttons-on…
ขั้นตอนที่ 3: รหัส
โค้ดนั้นง่ายมาก โดยในบรรทัดแรกของฟังก์ชันลูป เราอ่านค่าของอินพุตแบบอะนาล็อก จากนั้นเราเปรียบเทียบกับเกณฑ์ที่กำหนดเพื่อกำหนดว่าปุ่มใดถูกกด ในการระบุค่าที่ถูกต้อง อันดับแรก ฉันมีเพียงค่าจากพินอะนาล็อกที่พิมพ์ไปยังจอภาพแบบอนุกรม จากนั้นจึงแปลงเป็นช่วงที่เหมาะสม
สามารถดาวน์โหลดรหัสเต็มได้จากหน้า GitHub ของฉัน:https://github.com/bkolicoski/arduino-one-pin-butt…
ขั้นตอนที่ 4: การขยายเพิ่มเติม
วิธีนี้สามารถปรับขนาดได้อย่างง่ายดายเป็นปุ่มจำนวนมาก แต่โปรดจำไว้ว่ายิ่งคุณเพิ่มความแตกต่างของเกณฑ์ที่เล็กลงเท่านั้น ดังนั้นการเปลี่ยนแปลงใดๆ ในแรงดันไฟฟ้าอินพุตอาจทำให้เกิดการอ่านผิด อย่างไรก็ตาม สำหรับการทำงานปกติสำหรับปุ่มมากถึง 10 ~ 15 ปุ่ม สิ่งนี้ไม่น่าจะเป็นปัญหา