L ỜI CAM Đ OAN i
2.3.1. Button, KeyPad và Switch 33
Sơđồ khối: 12 KEYPAD SWITCH R1201 1k R1203 1k R1205 1k R1207 1k R1209 1k R1211 1k R1213 1k R1215 1k SW31 * 0 # D C 9 8 7 4 5 6 B A 3 2 1 SW1201 KEY PAD 4X4 . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 KEY PAD 2 KEY PAD 4 KEY PAD 3
- Su dung 8 sw gat cong tac bit on - Su dung key pad gat cong tac bit off
- Su dung button bang phim "*, 0, #, D" tren key pad gat cong tac bit off va gat sw4 len 1
dong thoi gat 8sw len 1
KE Y PA D 5 KE Y PA D 8 KE Y PA D 7 KE Y PA D 6 KEY PAD 1 SW1202 SW1203 SW1204 SW1205 SW1206 SW1207 SW1208 SW1209 KEY P A D 8 KEY P A D 5 KEY P A D 6 KEY P A D 7 KEY P A D 2 KEY P A D 3 KEY P A D 4 KEY P A D 1 R1202 4.7k R1204 4.7k R1206 4.7k R1208 4.7k R1210 4.7k R1212 4.7k R1214 4.7k R1216 4.7k 3.3V
Kit BKFET được tích hợp 1 bộ bàn phím KEYPAD 4x4 và 8 Switch. Với thiết kế của KIT ta có thể lựa chọn 1 trong 2 chếđộ làm việc của bàn phím KEYPAD
Chếđộ Button thông thường
Chếđộ ma trận phím Khối mạch bao gồm:
1 Bàn phím KEYPAD 4x4
8 Switch hoạt động ở chếđộđầu vào
1 Switch cho phép lựa chọn chếđộ làm việc
8 Điện trở kéo lên nguồn VCC
8 Điện trở kéo xuống GND
Ghép nối KEYPAD và Switch:
Tên tín hiệu Chân FPGA Chân AVR Mô tả tính năng
KEY_PAD_1 PIN_42 PC0 Switch[0], R0
KEY_PAD_2 PIN_43 PC1 Switch[1], R1
KEY_PAD_3 PIN_44 PC2 Switch[2], R2
KEY_PAD_4 PIN_45 PC3 Switch[3], R3
KEY_PAD_5 PIN_47 PC4 Switch[4], C0
KEY_PAD_6 PIN_48 PC5 Switch[5], C1
KEY_PAD_7 PIN_51 PC6 Switch[6], C2
KEY_PAD_8 PIN_52 PC7 Switch[7], C3
Bảng 2-15: Gán chân KeyPad Switch
Cấu tạo KEYPAD:
Nhìn vào cấu tạo trên ta có thể thấy các cực cùng phía của bàn phím được nối chung với nhau theo hàng và cột. Mục đích của việc kết nối này nhằm giảm số
lượng chân tín hiệu đầu vào. Với bàn phím 4x4 chúng ta có 16 nút, số chân tín hiệu cần kết nối là 8, nếu sử dụng phím nhấn thông thường để có 16 tín hiệu đầu vào thì chúng ta cần có 16 chân được kết nối.
Lựa chọn chếđộ làm việc:
KEYPAD làm việc ở chếđộ Button
Để sử dụng ma trận bàn phím ở chế nút nhấn thông thường có 2 cách
o SW31 hoạt động ở chế độ ngắt (off), SW23-SW26 bật (on: chế độ
kéo trở lên) và SW27-SW30 tắt (off: trở kéo).
o SW31 hoạt động ở chế độ đóng (on), SW23-26 tắt (off) và SW27- 30 bật (on).
KEYPAD làm việc trong chếđộ ma trận phím
o Phương pháp quét hàng: SW31 đóng (on), SW23-SW26 ngắt (off) và SW27-SW30 đóng (on).
o Phương pháp quét cột: SW31 ngắt (off), SW23-SW26 đóng (on) và SW27-SW30 ngắt (off).
Chếđộ chuyển mạch 8 Switch
SW31 ngắt (off) 4 Switch KEYPAD1-KEYPAD4 có thể sử dụng SW31 đóng (on) sử dụng được cả 8 Switch.
Đọc tín hiệu:
Chếđộ Button
SW31 off:
o Trạng thái không có phím nào được nhấn: tín hiệu trên các chân KEYPAD1-KEYPAD4 = “1”, KEYPAD5-KEYPAD8 = “0”
o Trạng thái khi có phím được nhấn: KEYPAD5-KEYPAD8 = “0”, KEYPAD1-KEYPAD4 bị thay đổi trạng thái phụ thuộc vào nút bị
Ta thấy trong trường hợp này KEY5-8 luôn không đổi cho dù nút có được nhấn hay không nên không thể dựa vào 4 tín hiệu đó để phân biệt trạng thái nút có
được nhấn hay không. Khi có nút được nhấn trạng thái tín hiệu trên các chân KEY1-4 thay đổi vậy ta sẽ sử dụng chúng để phân biệt các nút với nhau. Nút 1, 4, 7, * được nhấn thì KEYPAD1 = “0” các chân còn lại bằng “1”, tương tự khi ta nhấn các nút khác thì sẽđược tín hiệu trên chân KEYPAD2, 3, 4 = “0.
SW31 on
o Trạng thái không có phím nào được nhấn: tín hiệu trên các chân KEYPAD1-KEYPAD4 = “0”, KEYPAD5-KEYPAD6 = “1”
o Trạng thái khi có phím nhấn: KEYPAD1-KEYPAD4 = “0”, KEYPAD5-KEYPAD8 thay đổi trạng thái phụ thuộc vào nút vừa
được nhấn.
Tương tự như trường hợp trước chỉ khác là chúng ta sẽ sử dụng tín hiệu trên các chân KEYPAD5-KEYPAD8 để nhận biết phím nào được nhấn.
Chếđộ Ma trận bàn phím:
Với việc sử dụng KEYPAD trong chế độ Button mặc dù chúng ta có 16 nút nhấn nhưng chúng ta chỉ phân biệt được 4 trạng thái. Với việc sử dụng trong chếđộ
ma trận phím chúng ta có khả năng phân biệt được 16 trạng thái khác nhau tương
ứng với từng phím sẽ là 1 trạng thái riêng. Kỹ thuật được sử dụng trong trường hợp này được gọi là quét KEYPAD.
Phương pháp quét cột:
Sử dụng phương pháp này cần thao tác theo hướng dẫn đã đề cập bên trên trong mục lựa chọn chế độ làm việc. Ở chế độ này các chân từ KEYPAD1- KEYPAD4 sẽ là input và KEYPAD5-KEYPAD8 output. Các bước cần tiến hành:
o Xuất tín hiệu mức logic “0” trên từng chân từ KEYPAD5- KEYPAD8 (tại 1 thời điểm 1 chân = “0” còn lại = “1”), đồng thời kiểm tra trạng thái đầu vào trên các chân KEYPAD1-KEYPAD4.
o Nếu 1 trong 4 đầu vào bằng mức logic “0” thì kiểm tra trạng thái tín hiệu điều khiển (KEYPAD5-KEYPAD8) chân nào bằng mức logic “0”).
o Kết hợp giữa trạng thái đầu vào và đầu ra đưa ra kết luận phím nào
đang được nhấn hay không có phím nào được nhấn
Phương pháp quét hàng: làm ngược lại về tín hiệu input, output trong trường hợp trên, các bước tiến hành tương tự.
Ví dụ cho trường hợp số 5 được nhấn: sử dụng phương pháp quét cột, trong trường hợp này khi chúng ta quét đến chân KEYPAD6 (KEYPAD6 = “0”, các chân KEYPAD5, 7, 8 = “1”). Tín hiệu đầu vào lúc này ta thu được sẽ là KEYPAD1, 3, 4 = “1”, KEYPAD2 = “0” điều này ứng với trường hợp (bước 2 tại phương pháp quét cột xảy ra) 1 đầu vào khác “1”. Sau đó kiểm tra ngược lại chân tín hiệu đang
được quét “KEYPAD6” (cột hàng 2 và hàng 2 bằng mức logic “0”) chúng ta có thể
kết luận phím số 5 đã được nhấn.
Chếđộ chuyển mạch Switch
Nếu muốn sử dụng cả 8 Switch làm đầu vào ta cho phép SW31 đóng (on). Switch là chuyển mạch cho phép giữ trạng thái, thông thường được ứng dụng trong các hệ thống số đơn giản, trong hệ thống điều khiển ít được sử dụng vì tính linh hoạt không cao. Trạng thái tín hiệu Switch (“0” hay “1”) Switch gạt lên trên tín hiệu là mức “1”, ngược lại nếu gạt xuống dưới có mức logic 0 . Từ tín hiệu đó ta có thể
yêu cầu chương trình thực thi 1 đoạn lệnh nào đó.