-การใช้งาน Matrix Switch (Keypad)
ทฤษฎีและหลักการ
คีย์แพดหมายถึง อุปกรณ์อ่านค่าอินพุตต่อเข้ากับปุ่มกดจำนวนของคีย์แพด จะเท่ากับ ขาพอร์ตของที่ใช้งานซึ่งเป็นการสิ้นเปลืองขาพอร์ตจึงมีการต่อใช้สวิตช์จำนวนมากนี้แบบรูปของ “เมตริกสวิตช์” (Metrix Switch) จึงทำให้ลดการใช้พอร์ตได้อย่างดี
การต่อใช้งานคีย์แพดเมตริกสวิตช์จะต่อใช้งานแบบพูลอัพ ดังนั้นสถานะของสวิตช์จะมีสถานะเป็น “.1” ทั้งหมด เมื่อต้องการอ่านค่าของคีย์แพด เราจะต้องกำหนดค่าของหลัก (Column) ให้สถานะเป็น “0” เพราะ หลัก (Column) นั้นจะเป็นการควบคุมสัญญาณ หากสวิตช์แถวไหน มีการเปลี่ยนแปลงแสดงว่าแถวนั้นมีการกดสวิตช์
***Download ไฟล์ได้จาก***
http://cid-c0a6064779796550.skydrive.live.com/browse.aspx/.Public
การต่อ keypad
-โค้ดการทำงาน Keypad โดยการใส่ password
-การนำไปใช้คือ เอาไปใช้กับล็อคห้องหรือใช้ในการที่ต้องใส่ password แล้วมีการปล้ดล็อค
#include <Keypad.h>
int counter = 0;
int Delay1;
char* secretCode = "21010704";
const byte ROWS = 4; //four rows
const byte COLS = 4; //four columns
//define the cymbols on the buttons of the keypads
char hexaKeys[ROWS][COLS] = {
{'1','4','7','*'},
{'2','5','8','0'},
{'3','6','9','#'},
{'A','B','C','D'}
};
byte rowPins[ROWS] = {3, 2, 1, 0}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {7, 6, 5, 4}; //connect to the column pinouts of the keypad
//initialize an instance of class NewKeypad
Keypad customKeypad = Keypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);
void setup(){
Serial.begin(9600);
pinMode(13,OUTPUT);
}
void loop()
{
char customKey = customKeypad.getKey();
if (customKey)
{
Serial.print(customKey);
}
if (customKey == secretCode[counter])
{
counter++;
delay(5);
if(counter == 8)
{
digitalWrite(13,HIGH);
counter=0;
}
if(customKey == '*'||customKey == '#')
{
counter = 0;
digitalWrite(13,LOW);
}
delay(50);
}
-ปัญหาที่จะเจอเวลาที่เขียนคือ หาlibraly ของ keypad ไม่ได้และการที่จะใส่passwordได้เราต้องรู้จักเรียกใช้ตัวแปลให้ถูก การใช้char* คือจะใส่อักษรได้แบบยาวๆ
-ในช่วงบ่าย น้องนักศึกษใหม่ได้เข้ามาแล๊ปเพื่อศึกษาในแต่ละแล๊ปและเรียนรู้เบื้องต้นในแล๊ปนั้นๆโดยพี่ๆที่อยู่ห้องแล๊ปได้แนะนำและเสนอแนะ พีเซ็นโปรเจ็คของแต่ละคน
-พี่กอฟจะได้รับความสนใจจากน้องๆ เป็นอันดับ1เลยก็ว่าได้เพราะน้องๆเขาสนใจเกียบกับคลื่นสมอง และสงสัยว่าทำได้ไงเพราะสมองเรามีความซับซอนมาก




ไม่มีความคิดเห็น:
แสดงความคิดเห็น