2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
เมื่อคุณมีปุ่มกดทำงานแล้ว คุณมักจะต้องการดำเนินการบางอย่างโดยพิจารณาจากจำนวนครั้งที่กดปุ่ม ในการทำเช่นนี้ คุณจำเป็นต้องทราบเมื่อปุ่มเปลี่ยนสถานะจากปิดเป็นเปิด และนับจำนวนครั้งที่การเปลี่ยนแปลงสถานะนี้เกิดขึ้น สิ่งนี้เรียกว่าการตรวจจับการเปลี่ยนแปลงสถานะหรือการตรวจจับขอบ ในบทช่วยสอนนี้ เราเรียนรู้วิธีตรวจสอบการเปลี่ยนแปลงสถานะ เราส่งข้อความไปยัง Serial Monitor พร้อมข้อมูลที่เกี่ยวข้อง และเรานับการเปลี่ยนแปลงสถานะสี่รายการเพื่อเปิดและปิด LED
ขั้นตอนที่ 1: ส่วนประกอบที่จำเป็น:
1. Arduino UNO
2. เขียงหั่นขนม
3. ปุ่มกด
4. ตัวต้านทาน
5. สายจัมเปอร์
ขั้นตอนที่ 2: แผนภาพวงจร:
ต่อสายไฟสามเส้นเข้ากับบอร์ด อย่างแรกเริ่มจากขาข้างหนึ่งของปุ่มกดผ่านตัวต้านทานแบบดึงลง (ที่นี่ 10k โอห์ม) ลงกราวด์ ส่วนที่สองเปลี่ยนจากขาที่ตรงกันของปุ่มกดไปยังแหล่งจ่ายไฟ 5 โวลต์ ส่วนที่สามเชื่อมต่อกับพิน I/O ดิจิทัล (ที่นี่พิน 2) ซึ่งอ่านสถานะของปุ่ม
เมื่อปุ่มกดเปิดอยู่ (ไม่ได้กด) จะไม่มีการเชื่อมต่อระหว่างขาทั้งสองข้างของปุ่มกด ดังนั้นหมุดจึงเชื่อมต่อกับกราวด์ (ผ่านตัวต้านทานแบบดึงลง) และเราอ่านค่า LOW เมื่อปิดปุ่ม (กด) จะทำการเชื่อมต่อระหว่างขาทั้งสองข้าง ต่อพินเข้ากับแรงดันไฟ เพื่อให้เราอ่านค่า HIGH (พินยังคงเชื่อมต่อกับกราวด์ แต่ตัวต้านทานต้านทานการไหลของกระแส ดังนั้นเส้นทางที่มีความต้านทานน้อยที่สุดคือ +5V) หากคุณถอดพิน I/O ดิจิทัลออกจากทุกสิ่ง ไฟ LED อาจกะพริบผิดปกติ เนื่องจากอินพุตเป็นแบบ "ลอย" นั่นคือไม่ได้เชื่อมต่อกับแรงดันไฟฟ้าหรือกราวด์ มันจะสุ่มผลตอบแทนสูงหรือต่ำแบบสุ่มมากหรือน้อย นั่นเป็นเหตุผลที่คุณต้องการตัวต้านทานแบบดึงลงในวงจร
ขั้นตอนที่ 3: รหัส:
ติดตามผลงานอื่นๆ ที่น่าสนใจได้ที่: Youtube:
เพจเฟสบุ๊ค:
อินสตาแกรม:
ปุ่ม int=2;
int a, i=0; การตั้งค่าเป็นโมฆะ () { Serial.begin (9600); pinMode(ปุ่ม, INPUT); } วงเป็นโมฆะ () { a = digitalRead (ปุ่ม); ถ้า (a==1) { i=i+1; Serial.print (" ตัวนับ ="); Serial.println(i); } อื่น ๆ { i=0; } }