วันอังคารที่ 21 กรกฎาคม พ.ศ. 2558

วันที่46 ที่Fibo

-การใช้งาน 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เลยก็ว่าได้เพราะน้องๆเขาสนใจเกียบกับคลื่นสมอง และสงสัยว่าทำได้ไงเพราะสมองเรามีความซับซอนมาก


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

แสดงความคิดเห็น