ในการกวดวิชานี้เราจะไปติดต่อปุ 4x4 (16 คีย์) กับ ARDUINO UNO เราทุกคนรู้ว่าปุ่มกดเป็นอุปกรณ์อินพุตที่สำคัญที่สุดอย่างหนึ่งที่ใช้ในวิศวกรรมอิเล็กทรอนิกส์ ปุ่มกดเป็นวิธีที่ง่ายและถูกที่สุดในการให้คำสั่งหรือคำสั่งกับระบบอิเล็กทรอนิกส์ เมื่อใดก็ตามที่มีการกดปุ่มในโมดูลปุ่มกด Arduino Uno จะตรวจพบและใส่คีย์ที่เกี่ยวข้องบน LCD 16x2
ส่วนประกอบที่จำเป็น
ฮาร์ดแวร์: ARDUINO UNO, แหล่งจ่ายไฟ (5v), ตัวเก็บประจุ 100uF, ปุ่ม (สองชิ้น), ตัวต้านทาน1KΩ (สองชิ้น), โมดูลปุ่มกด 4x4, LED, JHD_162ALCD (16x2LCD)
ซอฟต์แวร์: arduino IDE (Arduino ทุกคืน)
แผนภาพวงจรและคำอธิบายการทำงาน
ในจอ LCD 16x2 จะมีหมุดทั้งหมด 16 พินหากมีไฟด้านหลังหากไม่มีไฟส่องหลังจะมี 14 พิน หนึ่งสามารถจ่ายไฟหรือปล่อยหมุดไฟด้านหลัง ตอนนี้ใน 14 ขามี 8 ข้อมูลหมุด (7-14 หรือ D0-D7) 2 หมุดแหล่งจ่ายไฟ (1 & 2 หรือ VSS & VDD หรือ GND & + 5V) 3 ถพินสำหรับการควบคุมความคมชัด (วีควบคุมวิธีการหนาตัวละครที่ควรจะเป็น แสดง) และ 3 พินควบคุม (RS & RW & E)
ในวงจรเชื่อมต่อปุ่มกด Arduino unoคุณสามารถสังเกตได้ว่าฉันใช้พินควบคุมเพียงสองอัน ทำให้เกิดความยืดหยุ่นในการทำความเข้าใจที่ดีขึ้นไม่ได้ใช้บิตคอนทราสต์และ READ / WRITE บ่อยนัก ทำให้ LCD มีคอนทราสต์สูงสุดและโหมดอ่าน เราต้องควบคุมพิน ENABLE และ RS เพื่อส่งอักขระและข้อมูลตามนั้น
การเชื่อมต่อที่ทำกับ LCD มีดังต่อไปนี้:
PIN1 หรือ VSS ลงกราวด์
PIN2 หรือ VDD หรือ VCC ถึง + 5v
PIN3 หรือ VEE กับพื้น (ให้ความเปรียบต่างสูงสุดที่ดีที่สุดสำหรับผู้เริ่มต้น)
PIN4 หรือ RS (Register Selection) เป็น PIN8 ของ ARDUINO UNO
PIN5 หรือ RW (อ่าน / เขียน) ลงกราวด์ (ทำให้ LCD อยู่ในโหมดอ่านช่วยให้การสื่อสารสำหรับผู้ใช้ง่ายขึ้น)
PIN6 หรือ E (เปิดใช้งาน) เป็น PIN9 ของ ARDUINO UNO
PIN11 หรือ D4 ถึง PIN10 ของ ARDUINO UNO
PIN12 หรือ D5 ถึง PIN11 ของ ARDUINO UNO
PIN13 หรือ D6 ถึง PIN12 ของ ARDUINO UNO
PIN14 หรือ D7 ถึง PIN13 ของ ARDUINO UNO
เราจะเชื่อมต่อโมดูลปุ่มกดระหว่างพิน 0-7 ของ Arduino Uno ดังแสดงในแผนภาพวงจร โมดูลปุ่มกดทั้งแปดพินเชื่อมต่อตามลำดับ
ตอนนี้สำหรับการตั้งค่าการเชื่อมต่อระหว่างโมดูลปุ่มกดและ UNO เราจำเป็นต้องรับไลบรารีปุ่มกดจากเว็บไซต์ ARDUINO หลังจากนั้นเราสามารถเรียกไฟล์ส่วนหัวได้โดยตรง เราจะพูดถึงแต่ละคำสั่งด้านล่าง
// กำหนด Keymap
{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'#', '0', '*', 'D'} }; // เชื่อมต่อปุ่มกด ROW0, ROW1, ROW2 และ ROW3 กับหมุด Arduino เหล่านี้
// เชื่อมต่อปุ่มกด COL0, COL1 และ COL2 กับหมุด Arduino เหล่านี้
// สร้างปุ่มกด
|
ก่อนอื่นเราจะเรียกไฟล์ส่วนหัวซึ่งช่วยให้ผู้ใช้สามารถเข้าถึงคำสั่งปุ่มกดทั้งหมด เราจะเขียนแต่ละปุ่มของปุ่มกดในเมทริกซ์เพื่อให้ UNO เข้าใจการกดปุ่ม
บอก Uno ว่าใช้พินใดในการเชื่อมต่อโมดูลปุ่มกด
การบอกให้ UNO แมปแต่ละปุ่มเมื่อกด
รับคีย์ที่แมป UNO เข้าสู่หน่วยความจำ
การทำงานของ Arduino Uno Keypad Interface อธิบายได้ดีที่สุดในรหัส C ด้านล่าง