โปรเจกต์นี้จะพาน้องไปเจาะลึกว่า คีย์บอร์ด 5 ปุ่ม มันทำงานยังไง แล้วเราจะเอามันมาสร้างเป็นอุปกรณ์สำหรับพิมพ์ข้อความลงในโปรเจกต์ Arduino ของน้องได้ยังไง รับรองว่าเจ๋งแน่นอน!
รายละเอียดเทคนิคเพิ่มเติม
ตรรกะของส่วนติดต่อผู้ใช้
การพิมพ์ตัวอักษรด้วยปุ่มแค่ 5 ปุ่ม ต้องใช้ตรรกะการเลือกแบบ "T9" หรือ "List-based" นะตัว
- เลื่อนแนวตั้ง: ปุ่มสองปุ่ม (ขึ้น/ลง) ใช้สำหรับเลื่อนเลือกตัวอักษรในชุด (A-Z, a-z, 0-9 และสัญลักษณ์)
- เลื่อนแนวนอน: ปุ่มอีกสองปุ่ม (ซ้าย/ขวา) ใช้สำหรับเลื่อนเคอร์เซอร์ภายในข้อความที่กำลังพิมพ์
- ยืนยัน: ปุ่มที่ห้าทำหน้าที่เป็น "Enter" หรือ "OK" สำหรับยืนยันข้อความที่พิมพ์เสร็จ
ฮาร์ดแวร์และโปรโตคอล
- จอแสดงผล: SSD1306 OLED เป็นจอที่ใช้โปรโตคอล I2C ความละเอียด 128x64 พิกเซล เอาไว้แสดง "คีย์บอร์ดเสมือน" หรือลิสต์ตัวอักษรที่เลื่อนได้ พร้อมกับข้อความที่กำลังพิมพ์
- การดีบาวซ์ปุ่ม: คีย์บอร์ด 5 ปุ่มจะถูกจัดการในเฟิร์มแวร์เพื่อป้องกันการกดหลอน (phantom presses) สามารถทำได้โดยใช้พินดิจิตอลแยกกัน หรือใช้การอ่านค่าแอนะล็อกจากตัวต้านทานแบบลัดเดอร์ (resistor ladder) ที่การกดแต่ละปุ่มจะให้ค่าแรงดันไฟฟ้าที่แตกต่างกัน
ตัวอย่างการนำไปใช้
โมดูลฮาร์ดแวร์นี้เหมาะสุดๆ สำหรับโปรเจกต์ที่ต้องการตั้งค่ากันในสนามโดยไม่ต้องพึ่งพีซี เช่น:
- ตั้งค่า SSID และรหัสผ่าน WiFi
- พิมพ์ชื่อไฟล์สำหรับบันทึกข้อมูลลงการ์ด SD
- ตั้งค่าช่วงเวลา (timer) หรือค่าขีดจำกัด (threshold) ในระบบควบคุมแบบสแตนด์อโลน
วิดีโอสอนแบบเต็มๆ ดูได้ที่นี่เลย: