Có bao giờ bạn nghĩ rằng, tại sao cổng USB máy tính chỉ có 4 chân nhưng lại tạo ra bàn phím có tới hàng trăm nút bấm khác nhau?
Nếu bạn đang đọc bài này, chứng tỏ các bạn là người rất yêu công nghệ, điều này đồng nghĩa với việc các bạn đã từng cầm và sử dụng một chiếc bàn phím máy tính. Nhưng liệu có bao nhiêu % trong số các bạn trả lời được câu hỏi trên tiêu đề?
Bài viết này chúng tôi sẽ 'giải ngố' cho các bạn ở mức độ đơn giản nhất về cách người ta nhồi hàng trăm phím bấm vào một cổng kết nối cực ít chân như thế nào.
Cách tạo ra các phím bấm
Với những người chưa biết, hẳn những suy nghĩ đang tồn tại trong đầu các bạn vẫn là, có lẽ trong bàn phím có một con chip nào đó có tới hàng trăm chân để điều khiển hàng trăm nút của phím. Thực tế thì cũng khá đúng nhưng các vi xử lý không nhiều chân tới vậy.
Mạch điện của bàn phím thông thường, chỉ đếm được tổng cộng 27 chân.
Để tạo ra được bàn phím, người ta cần sử dụng 1 thứ gọi là ma trận phím bấm, nói thế nghe có vẻ sang miệng nhưng thực chất nó là một hệ thống gồm nhiều đường ngang và dọc cắt nhau như hình bên dưới.
Mỗi đường ngang và đường dọc quy định một mã lệnh, điểm cắt của chúng chính là nơi quy định 1 phím trên bàn phím. Như trên hình, người ta chỉ cần tới 8 đầu tín hiệu là đã tạo ra được 4 x 4 = 16 nút bấm bàn phím.
Vậy với một chiếc bàn phím tiêu chuẩn có khoảng 104 phím người ta sẽ chỉ cần tạo ra một ma trân phím gồm 12 đường ngang và 12 đường dọc là đã thừa chỗ để nhồi nhét tới 144 phím bấm mà chỉ cần mất vỏn vẹn 24 đường tín hiệu.
Với cách tận dụng ma trận phím này, con người có thể tạo ra một loại bàn phím có hàng ngàn phím bấm khác nhau mà không cần tới hàng ngàn chân tín hiệu trên 1 con chip xử lý.
Giờ mới là phần của bộ vi xử lý
Sau khi rút gọn hàng trăm chân tín hiệu xuống còn khoảng 24 chân, người ta mới bắt đầu cho nó vào các chân của chip vi xử lý sau đó đẩy tín hiệu về 2 chân data của cổng USB hoặc PS/2. Vậy là chỉ với 4 dây tín hiệu của cổng cắm, chúng ta vẫn có thể tạo ra hàng trăm hàng nghìn phím bấm khác nhau trên bàn phím.
Từ ma trận phím tới lý do của hiện tượng Ghosting
Khi đi mua các loại bàn phím chơi game, các nhà sản xuất vẫn thường quảng cáo rằng, bàn phím của mình có tính năng Anti-Ghosting, vậy ghosting là gì tại sao chúng ta lại phải chống hiện tượng này?
Trong thực tế, các chân của Microchip sẽ được chia ra thành đầu vào và đầu ra tương ứng với các hàng ngang và dọc của ma trận nói trên. Ví dụ với ma trận 4 x 4 có ABCD là đầu ra, còn 1234 là đầu vào như hình bên dưới.
Khi không bấm nút, đầu vào của vi xử lý không có tín hiệu, mạch sẽ không nhận phím.
Khi bấm 1 phím, mạch điện từ đầu ra đến đầu vào sẽ được khép kín và tạo ra mã lệnh ví dụ C3 truyền vào vi xử lý tượng trưng cho việc bấm nút C3.
Khi nhấn nút C3, dòng điện sẽ đi từ đầu ra C tới đầu vào 3 tạo thành lệnh nhấn nút C3.
Nhưng vấn đề đặt ra là khi chúng ta bấm cùng lúc nhiều phím ví dụ như B2, B3 và C2 cùng lúc thì sao?
Khi bấm đồng loạt các phím trên, dòng điện đi ra từ cổng C sẽ tới nút mạng C2 rồi đi sang B2 xuống B3 rồi về đường vào 2 và 3 khép kính mạch điện. Khi đó đầu B sẽ không thấy tín hiệu nhấn phím do dòng điện bị chạy sang các đường khác.
Khi bấm 3 nút này, bàn phím lại nhận 2 nút khác.
Ở vi xử lý, chúng ta chỉ nhận được tín hiệu đang đi ra ở cổng C và đi vào ở cổng 2 và 3, và nó sẽ nhầm tưởng là phím C2 và C3 đang được bấm. Trong khi thực tế chúng ta đang bấm phím B2, B3 và C2. Đó gọi là hiện tượng phím ma hay là ma bấm phím tùy các bạn gọi.
Hiện tượng Masking
Song song với hiện tượng phím ma, Masking cũng là một hiện tượng không hiếm gặp nhất là khi các game đua xe bằng phím mũi tên. Nếu Ghosting là hiện tượng bạn không bấm phím mà máy vẫn nhận là có bấm, thì Masking là hiện tượng máy không nhận diện được bạn đang bấm hay đang nhả phím.
Cũng giống như ví dụ trên, nếu đang bấm giữ 3 phím C2, B2, B3 sau đó nhấn thêm phím C3, lúc này bàn phím vẫn chỉ nhận 2 phím C2 và C3 như ban đầu, nhưng nếu bạn thả phím C2 ra và vẫn giữ phím C3. mạch diện ở vị trí C2 vẫn đóng và máy tính vẫn nhận là các bạn đang giữ C2.
Tính năng Anti-Ghosting thực tế là gì?
Thực tế, để xử lý vấn đề này người ta đã có một cách hết sức đơn giản, đó là mắc thêm vào sau mỗi phím 1 con diode có nhiệm vụ ngăn dòng điện chạy ngược lại sang các nút mạng khác. Và hiện tượng dòng tín hiệu chạy lẫn lộn giữa các cổng sẽ được xử lý hoàn toàn.
Hiện tượng Ghosting trên bàn phím.
Đây chính là lý do vì sao hầu như trên các mạch bàn phím cơ các bạn thường thấy có một con diode đấu cạnh mỗi phím. Nó chính là cách chống Anti Ghosting của bàn phím cơ.
Nếu tính toán hơi hài hước một chút thì mỗi con diode được gắn kèm mỗi phím có giá khoảng dưới 300 đồng 1 chiếc, và với một bàn phím có khoảng 100 phím bạn sẽ mất thêm khoảng 30 nghìn đồng cho tính năng vô cùng cao cấp này. Nên đừng nghĩ những bàn phím có tính năng này phải rất xịn, có giá rất cao.
Linh kiện màu da cam vạch đen chính là các con diode.
Nếu chịu khó đọc được tới đoạn này, thì hẳn các bạn đã hiểu gần như toàn bộ cách mà bàn phím máy tính hoạt động. Từ đó các bạn có thể biết được phần nào trên bàn phím là phần có giá trị nhất thay vì nghe những lời quảng cáo có cánh của nhà sản xuất.