![แผงปุ่มกดพร้อม Arduino โดยไม่ใช้ห้องสมุดปุ่มกด (บทช่วยสอนแรก): 4 ขั้นตอน แผงปุ่มกดพร้อม Arduino โดยไม่ใช้ห้องสมุดปุ่มกด (บทช่วยสอนแรก): 4 ขั้นตอน](https://img.gwsigeps.com/img/img/blank.jpg)
สารบัญ:
- วัสดุ:
- ขั้นตอนที่ 1: ส่วนประกอบ
- ขั้นตอนที่ 2: การคำนวณดัชนีขององค์ประกอบใด ๆ ในเมทริกซ์ 4x4
- ขั้นตอนที่ 3: การเชื่อมต่อ
- ขั้นตอนที่ 4: อัปโหลดรหัสและอธิบาย
แผงปุ่มกดมักใช้ในโครงการส่วนใหญ่เพื่อให้ลูกค้าสามารถจัดการกับโครงการเช่น (นาฬิกาเรียลไทม์ (RTC) เพื่อปรับวันเวลาการควบคุมการเข้าถึง ….. ฯลฯ) แต่ถ้าคุณใช้กับห้องสมุดปุ่มกดของ Arduino ง่ายและไม่ดีดังนั้นที่นี่เราจะเรียนรู้วิธีการใช้งานกับ Arduino โดยไม่ต้องใช้ห้องสมุดปุ่มกดใน 3 บทช่วยสอน
วัสดุ:
ขั้นตอนที่ 1: ส่วนประกอบ
ส่วนประกอบทั้งหมดที่เราต้องการคือ:
1- Arduino Uno หรือ Mega
สายเชื่อมต่อ Arduino 8-8 x (ชาย - ชาย)
ปุ่มกดเมทริกซ์ขนาด 4x4 4x4
ขั้นตอนที่ 2: การคำนวณดัชนีขององค์ประกอบใด ๆ ในเมทริกซ์ 4x4
ถ้าเราดูภาพด้านบนเราจะได้ดัชนีขององค์ประกอบใด ๆ ที่เท่ากับ
index = จำนวนแถว x4 + จำนวนคอลัมน์
ขั้นตอนที่ 3: การเชื่อมต่อ
ก่อนอื่นนี่คือการกำหนดค่า Pin ของปุ่มกด ….
R …. หมายถึงแถว
C …. หมายถึงคอลัมน์
แป้นพิมพ์ที่สองเชื่อมต่อกับ Arduino ดังต่อไปนี้
ปุ่มกด Pin R1 -> Arduino Pin 2
Keypad Pin R2 -> Arduino Pin 3
Keypad Pin R3 -> Arduino Pin 4
ปุ่มกด Pin R4 -> Arduino Pin 5
ปุ่มกด Pin C1 -> Arduino Pin 6
Keypad Pin C2 -> Arduino Pin 7
Keypad Pin C3 -> Arduino Pin 8
ปุ่มกด Pin C4 -> Arduino Pin 9
ขั้นตอนที่ 4: อัปโหลดรหัสและอธิบาย
ที่นี่รหัสในลิงค์ด้านล่าง:
sh.st/TwENk
เพื่อแสดงรหัสฉันจะอธิบายในไม่กี่บรรทัด:
คำแนะนำต่อไปนี้จะถูกดำเนินการซ้ำ ๆ กันทุก ๆ 50ms ก่อนตรวจสอบว่าไม่มีการกดปุ่มใดถ้าเป็นจริงจะไม่มีการตั้งค่าสถานะการกดเป็นหนึ่งและเคาน์เตอร์ h และ v จะถูกรีเซ็ตเป็นศูนย์แล้วผลลัพธ์ทั้งหมดจะต่ำ หนึ่งในนั้นคือ LOW (h กลายเป็นจำนวนคอลัมน์) a สำหรับลูปการเปลี่ยนแปลงเอาต์พุตแรกเป็น HIGH หากอินพุตซึ่ง LOW เปลี่ยนเป็น HIGH นั่นหมายความว่านั่นคือแถวที่ถูกต้องของ (v กลายเป็นจำนวนแถว) จากนั้นทำการทั้งหมด ออกต่ำสุดเพื่อปิดการใช้งานการกดจนกว่าคุณจะปล่อยปุ่มที่กดใหม่ตั้งค่าสถานะกดเพื่อ ZERO และคำนวณดัชนีและกลับมาในขณะที่คุณกดปุ่มใด ๆ ที่ไม่มีธงกดเป็นศูนย์และฟังก์ชั่นกลับ 50 และสลับกรณีที่ใช้ มอนิเตอร์แบบอนุกรมตามฟังก์ชั่นปุ่มกดแบบฟอร์มส่งคืน