GIAO TIẾP KEYPAD VỚI ARDUINO BẰNG PROTUES

Xin chào cả nhà Arduino, Lời đầu tiên Arduino Shop xin gởi đến các bạn một ngày mới đầy năng lượng và vui vẻ trong cuộc sống. Hôm nay, Arduino Shop sẽ giúp các bạn làm thế nào để giao tiếp Keypad với Arduino bằng Protues. Bàn phím là một thiết bị được dùng rất nhiều trong các dự án kỹ thuật. Bạn có thể thấy bàn phím trong nhiều thiết bị điện tử và các máy công nghiệp CNC. Ví dụ như máy ATM, có các bàn phím để các bạn thực hiện việc nhập pass... Tương tự, máy tính cũng có bàn phím để giúp mình giao tiếp với CPU...Vì thế, trong tương lai gần, chúng ta cần tới bàn phím.

Ngày đăng: 02-10-2016

3,275 lượt xem

1. GIỚI THIỆU:

Bàn phím được sử dụng trong nhiều ứng dụng trong thực tế, trong các thiết bị điện tử, trong các máy móc công ngiệp. Mục đích là khi bạn cần sử dụng các nút để nhập số hoặc nhập ký tự để gởi lệnh đó thi hành một nhiệm vụ nào đó chẳn hạng. Bạn sử dụng bàn phím sẽ tiết kiệm khá nhiều thời gian ở cả phần cứng cũng như lập trình. Vì vậy, Hôm nay chúng ta có một cái nhín chi tiết về làm thế nào để giao tiếp với bàn phím cũng như cách giao tiếp keypad với arduino thông qua Protues. . Việc sử dụng phần mềm Protues cho dự án này nhằm tiết kiệm thời gian chuẩn bị phần cứng và tiết kiệm chi phí cho mọi người. Vì lở bạn mua bàn phím về mà lập trình chưa được thì tốn khá nhiều thời gian, do vậy theo Arduino Shop, bạn thực hành mô phỏng trên Protues chạy rồi thì bạn mới mua thiết bị thật về làm, như thế sẽ tiết kiệm cho bạn lên tới 80% chi phí về mặt thời gian và tiền. Do vậy, bước đầu tiên hãy mô phỏng nó và sau đó làm phần cứng.


Tiếp theo, Arduino Shop sẽ mô tả chi tiết cách làm việc của keypad:

KEYPAD là một ma trận( matrix) các nút nhấn. Ví dụ, Arduino Shop lấy keypad 4x3 như hình bên dưới:

keypad-3x4

Keypad 3x4

Ở hình trên, chúng ta nhận thấy, chúng có 12 nút nhấn tương ứng với 4 dòng và 3 cột. Nhìn kỹ sẽ có 7 tín hiệu để kết nối với bàn phím này tương đương 12 nút nhấn. Tổng số chân điều khiển là tổng số dòng cộng với tổng số cột.

Nếu chúng ta kết nối sơ đồ dây của bán phím trên như hình bên dưới, ta có như sau:

keypad-3x4

Sơ đồ đấu dây Kedpad 3x4

Cột và hàng được kết nối với nhau, bây giờ giả sử bấm nút "1" trên bàn phím thì hàng đầu tiên và cột đầu tiên sẽ nhận được tín hiệu và ta sẽ biết rằng nút "1" được nhấn.

Tương tự là trường hợp với các nút khác, ví dụ nhấn nút "8" Hàng 3 và cột 2 có tín hiệu, tín hiệu này sẽ là duy nhất cho mỗi nút nhấn

Nói cách đơn giản, trên mỗi nút bấm cột và hàng khác nhau sẽ có được tín hiệu khác nhau, chúng ta cần phải phát hiện được các tín hiệu đó để có được các nút bấm.

==> Khá là đơn giản đúng không nào? Đó là cách 1 bàn phím làm việc. Giờ chúng ta cần có cái nhìn lại, làm thế nào để GIAO TIẾP KEYPAD VỚI ARDUINO BẰNG PROTUES ???

Đầu tiên, trong phần mềm Protues chúng ta cần thiết kế một cái mạch đơn giản có chứa Keypad và Arduino. Ở đây, Arduino Shop chọn thêm 1 cái LCD 16x2, mỗi khi bạn nhấn 1 nút trên keypad thì phím đó ngay lập tức hiển thị trên màng hình.

Để tiếp tục đề tài hôm trước hướng dẫn lập trình arduino bằng Protues, hôm nay chúng ta bổ xung thêm 1 cái Keypay vào dự án đó. Mục đích Arduino Shop mong muốn sẽ làm cho các bạn một dự án hoàn chỉnh từ đầu đến cuối.

Nào, giờ chúng ta thiết kế phần cứng trên protues nhé. Các bạn xem hình bên dưới:

ket-noi-keypad-lcd-arduino

Kết nối Keypad và lcd với arduino

Chúng ta cần có một cái lcd và một con Arduino. Ở đây, chúng ta chọn Arduino mega 2560 R3.

Chúng ta cần viết một chương trình, hiển thị số phím nhấn lên lcd sau mỗi lần nhấn.

Lưu ý:

- Nếu các bạn chưa biết cách sử dụng arduino trong protues thì đọc lại bài học cách lập trình arduino với protues. Bài này sẽ hướng dẫn các bạn cách làm việc giữa arduino với protues và Lcd. Ở bài này cũng tương tự, chỉ thêm keypad.

- Tải thư viện Keypad cho Arduino IDE. Do nếu không có thư viện này, các bạn sẽ không thực hiện được. Khi cài thư viện cho Arduino IDE, thì trong protues khi biên dịch chương trình, nó tự động đến thư viện của IDE để cập nhật thư viện cho protues. Các bạn có thể tải thư viện của keypad này >> tại đây<<

Bây giờ chúng ta copy đoạn code bên dưới để past vào phần mềm lập trình Protues và tiến hành mô phỏng các bạn nhé:

#include <Keypad.h> // Khai báo thư viện của keypad
#include <LiquidCrystal.h> // Khai báo thư viện của Lcd
LiquidCrystal lcd(8,9,4,5,6,7); 
const byte ROWS = 4; // Khai báo keypad có 4 dòng và 3 cột
const byte COLS = 3; // Khai báo 3 cột
char keys[ROWS][COLS] = {
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'*','0','#'}
};// Khai báo hiển thị các phím nhấn của keypad
byte rowPins[ROWS] = {17, 18,19,20}; //kết nối các chân của keypad với các pin nay( kết nối hàng)
byte colPins[COLS] = {14,15, 16}; // kết nối cột

Keypad kpd = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );// Khai náo keypad

void setup() {
lcd.begin(16,2);
lcd.print("Arduino Shop");
}

void loop() {

char customKey = kpd.getKey(); // Đoạn này đọc và hiển thị nút nhấn. 
 
  if (customKey){
    lcd.setCursor(0,1);
    lcd.print(customKey);
  }

Và kết quả chúng ta có được như hình bên dưới:

 

Video:

Đến đây, các bạn có thể tham khảo dựa trên video này để thành thạo hơn nha các bạn

Video hướng dẫn lập trình keypad với arduino bằng Protues

Vâng, trên đây là toàn bộ nội dung mà Arduino Shop muốn truyền tải đến các bạn. Hi vọng, với một chút kiến thức này, các bạn có thể áp dụng hoặc tự nghỉ ra cho mình một ứng dụng tuyệt vời nhất. Trong dứ án tiếp theo, Arduino Shop sẽ cho ra đời một ứng dụng tự động liên quan tới keypad này, các bạn quan tâm theo dõi tại website: ungdungarduino.com nhé. 

Bạn nào test mô phỏng Ok rồi, thì có thể tự mua cho mình 1 cái keypad để tự vọc thực tế. Quá tuyệt đúng không các bạn. Hiện arduino cũng có kinh doanh keypad này. Các bạn liên hệ ngay bên dưới để được hỗ trợ các bạn nhé:

Keypad 4x4

GỌI NGAY - 0902 37 12 52 (Mr Quốc): Tư vấn KT

ĐỂ ĐƯỢC TƯ VẤN VÀ CUNG CẤP GIẢI PHÁP KỊP THỜI CHO BẠN

ARDUINO SHOP

Địa chỉ: Số 41 Gò Dưa, Phường Tam Bình, Quận Thủ Đức, TP. Hồ Chí Minh
Email: arduinoshophcm@gmail.com

Bình luận (0)

Gửi bình luận của bạn

Captcha
<