Хичээл 11 Keypad
Энэхүү хичээлээр бид keypad яаж ажилладаг, түүнийг хэрхэн ашиглах талаар судална.
Хэрэглэгдэхүүн:
- Ардиуно 1ш
- Keypad 1ш
- М-М утас 8ш
Keypad гэж юу вэ?
Кeypad бол компьютерийн кeyboard-той адилхан хэрэглчийн оролтыг уншихад тусалдаг төхөөрөмж юм. Үүнийг гар утас, хаалганы түгжээ, богино долгионы зуух гэх мэт маш олон төрлийн төхөөрөмжүүдээс харж болно. Тэд бараг хаа сайгүй байдаг. Лифтэнд суугаад хэдэн давхарт очихоо бид keypad ашиглан оруулж өгдөг. Хэрэглэгч хэдэн давхарт хүрэх мэдээллээ оруулж байгааг хэрэглэгчийн оролт гэж нэрлээд байгаа юм. Бид энэхүү хичээлээр матриц кeypad ашиглана. Үүнийг хэрхэн холбох, хэрхэн программчлахыг сурах нь өөр маш олон төслийг хийх боломжийг бидэнд нээж өгнө. Матриц keypad нь 16 товчлууртай. Гэхдээ микроконтроллерт холбогдох 8 хөл байдаг. Бид тоон оролт хичээл дээр 2 товчлуурыг микроконтроллерт холбосон. Яг үүнтэй адил байдлаар 16 товчлуурыг холбож болох ч илүү ухаалаг байдлаар бид 8 хөлөөр л 16 товчлуурыг аль нь дарагдсаныг мэдэх боломжтой.

Зарчмын схем


Холболтыг хүснэгтээр харуулсан бөгөөд энэ нь танд алдаагүй зөв холбоход тусална.

Программ
Холболтоо хийж дууссан бол программчилах хэрэгтэй. Энэ удаа бидэнд <Keypad> сан хэрэгтэй болох бөгөөд үүнийг татаж аваарай. Сан хэрхэн татаж авах, суулгахыг бид хамгийн эхний хичээл дээр үзсэн. Үүнийг санагүй байгаа бол ЭНД дарж үзнэ үү. 16 товчлуурыг 8 хөлөөр аль нь дарагдсан байгааг хэрхэн мэдэх талаар судлахад танд зарчмын схем туслана. Жишээ болгон keypad дээр дарах үед ямар товчлуур дарагдсаныг дэлгэц дээр хэвлэх кодыг орууллаа.
#include <Keypad.h>
const byte ROWS = 4;
const byte COLS = 4;
char hexaKeys[ROWS][COLS] = {
{'0','1','2','3'},
{'4','5','6','7'},
{'8','9','A','B'},
{'C','D','E','F'}
};
byte rowPins[ROWS] = {3, 2, 1, 0};
byte colPins[COLS] = {7, 6, 5, 4};
Keypad customKeypad = Keypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);
void setup(){
Serial.begin(9600);
}
void loop(){
char customKey = customKeypad.getKey();
if (customKey){
Serial.println(customKey);
}
}
Хэрвээ холболт зөв бол дэлгэц дээр аль товчлуур дарагдсаныг харуулна. Үүнийг харахын тулд Serial monitor нээгээд тохиргоог зөв хийх хэрэгтэй. Прогарммын үр дүнг доор харуулав.


