สารบัญ:

ตัวอย่าง Locker ด้วย Arduino Matrix Keypad 4x4: 6 Steps
ตัวอย่าง Locker ด้วย Arduino Matrix Keypad 4x4: 6 Steps

วีดีโอ: ตัวอย่าง Locker ด้วย Arduino Matrix Keypad 4x4: 6 Steps

วีดีโอ: ตัวอย่าง Locker ด้วย Arduino Matrix Keypad 4x4: 6 Steps
วีดีโอ: Amazing arduino project 2024, กรกฎาคม
Anonim
ตัวอย่าง Locker ด้วย Arduino Matrix Keypad 4x4
ตัวอย่าง Locker ด้วย Arduino Matrix Keypad 4x4

2 วิธีในการจัดการปุ่มกด 16 ปุ่มพร้อมพินขั้นต่ำ

ขั้นตอนที่ 1: บทนำ

ฉันเพิ่งหาวิธีจัดการเมทริกซ์ปุ่มกดแบบสัมผัส 4x4 ที่เชื่อมต่อกับโคลน Arduino จุดที่ตั้งไว้คือ:

- ใช้เพียง 4+1 พินแทน 8 พินบน atmega328p

- เพื่อเพิ่มลิงค์ LCD Display 4x20 CHAR ผ่าน I2C (2 ขา)

- เพื่อควบคุมเอาท์พุตดิจิตอลและแอนะล็อก

ดังนั้น มีหลายสิ่งที่ต้องควบคุมด้วยจำนวนบาปของ I/O

ขั้นตอนที่ 2: สิ่งที่ต้องใช้:

สิ่งที่ต้องใช้
สิ่งที่ต้องใช้

ฉันซื้อตัวแสดง LCD ขนาด 4x20 ตัวและตัวปรับโมดูล I2C เพื่อเชื่อมต่อจอแสดงผลกับหมุด SDA (A4) และ SCL (A5) บนโคลน Arduino ของฉัน

ฉันใช้ MM74C922N ที่มีชื่อเสียงและล้าสมัยแล้ว: ตัวแปลง 8 ถึง 4 วิธีพอดีกับปุ่มกดเมทริกซ์ 4x4

ฉันสร้างโคลนของ Arduino ตาม atmega328p และตั้งโปรแกรมผ่านตัวเชื่อมต่อ HE10 (บัส SPI) และสาย USBasp

ขั้นตอนที่ 3: แผนผังและบอร์ด:

แผนผังและคณะกรรมการ
แผนผังและคณะกรรมการ
แผนผังและคณะกรรมการ
แผนผังและคณะกรรมการ

กระดานทำจาก:

- ปุ่มกด LCD ใช้กับ Arduino IDE เท่านั้น ใช้กับ LDmicro ไม่ได้ (การเขียนโปรแกรมแลดเดอร์)

- บอร์ด MM74C922N: ปุ่มกด 16 ปุ่มเข้ารหัสบนค่าไบนารี 16 ค่าบน DCBA 4 บิต เมื่อกดปุ่ม: ไฟ LED สีฟ้าจะติดและค่าจะปรากฏบน DCBA (A คือ LSB) เมื่อปล่อยปุ่ม: ไฟ LED สีฟ้าจะดับลง และค่าจะถูกรีเซ็ตเป็นศูนย์ใน DCBA

- บอร์ดโคลน Arduino atmega238p

ขั้นตอนที่ 4: การใช้ LDmicro กับ Ladder Programming:

การใช้ LDmicro กับการเขียนโปรแกรมบันได
การใช้ LDmicro กับการเขียนโปรแกรมบันได
การใช้ LDmicro กับการเขียนโปรแกรมบันได
การใช้ LDmicro กับการเขียนโปรแกรมบันได
การใช้ LDmicro กับการเขียนโปรแกรมบันได
การใช้ LDmicro กับการเขียนโปรแกรมบันได

รหัสที่จะป้อนประกอบด้วย 4 ค่าจากค่าที่กดแป้น 16 ค่า ดังนั้นชุดค่าผสม 16x16x16x16

เมื่อคุณวาด SFC คุณต้องแปลเป็น LADDER ด้วยวิธีการที่ระบุใน my

คำแนะนำ:

www.instructables.com/id/Arduino-tomation-…

เมื่อพิมพ์แล้ว ให้คอมไพล์เป็น xxxx.hex แล้วดาวน์โหลดด้วยโปรแกรมดาวน์โหลด KHAZAMA

ไม่สามารถตั้งโปรแกรมจอ LCD บน LDmicro ได้

ฉันให้ LDmicro zip พร้อมภาพร่าง SERRURE.id และตัวดาวน์โหลด KHAZAMA

ขั้นตอนที่ 5: การใช้ Arduino IDE 1.8.x กับ Mightycore และ SMlib:

การใช้ Arduino IDE 1.8.x กับ Mightycore และ SMlib
การใช้ Arduino IDE 1.8.x กับ Mightycore และ SMlib

ฉันแปล SFC เป็นเครื่องของรัฐ จากนั้นฉันก็ใช้ Arduino IDE กับไลบรารี Mightycore และ SM ภายใน

ฉันแสดงข้อความเช่น: ERROR, WAITING, UNLOCK, state ถึง, ค่าของการกดปุ่มบนจอ LCD

ฉันให้ภาพร่างและ SM lib แก่คุณ สำหรับ Mightycore ดูสิ่งนี้:

www.instructables.com/id/Arduino-18x-Clone…

ขั้นตอนที่ 6: เพื่อสรุป:

นี่เป็นสองวิธีในการจัดการแป้นกด 16 ปุ่มและฉันใช้เวลาหลายชั่วโมงในการค้นหาลำดับที่ดี แต่ตอนนี้มันใช้ได้ดี คุณต้องเคารพขั้นตอนเหล่านี้:

-1 ตรวจพบการกดปุ่มบนขอบที่เพิ่มขึ้นของพิน DA

-2 อ่านค่าที่สร้างบน DCBA และเปรียบเทียบกับค่าที่ดี

เว้นแต่จะไม่ได้ผลอย่างแน่นอน

ขอบคุณกวดวิชาที่น่าสนใจทั้งหมดผ่านทางเน็ต

แนะนำ: