
Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-23 15:15

KHUYẾN CÁO: ĐÂY LÀ HƯỚNG DẪN SỬ DỤNG CHO MỘT SẢN PHẨM CÓ NGUỒN MỞ: BÀN PHÍM MỘT PIN. ĐÂY KHÔNG PHẢI LÀ DỰ ÁN TỰ LÀM. NẾU BẠN MUỐN ĐẶT BAN CHO CHÍNH MÌNH, CÁC BỘ PHẬN EAGLE CÓ THỂ ĐƯỢC TÌM HIỂU Ở CUỐI BÀI HƯỚNG DẪN
Bàn phím một pin là gì?
Bàn phím một pin giúp việc sử dụng bàn phím ma trận dễ dàng hơn rất nhiều và cho phép bạn dự trữ các chân I / O quý giá của mình cho các mục đích khác. Bàn phím ma trận 16 nút thường yêu cầu 8 đầu vào kỹ thuật số trên vi điều khiển hoặc máy tính bảng đơn. Arduinos phổ biến nhất giới hạn bạn chỉ có 14 chân kỹ thuật số, vì vậy bàn phím 16 nút khiến bạn chỉ có 6 chân cho phần còn lại của dự án. Sự thiếu hụt tài nguyên này có thể dẫn đến việc đánh đổi thiết kế tốn kém hoặc nâng cấp vi điều khiển tốn kém hơn. Mô-đun Bàn phím một pin loại bỏ sự cần thiết của tất cả các đầu vào kỹ thuật số này. Như tên gọi của nó, Bàn phím một pin chỉ sử dụng một chân (đầu vào tương tự) cộng với các kết nối GND và VCC, vì vậy việc kết nối bàn phím của bạn chỉ trong tích tắc! Đối với người dùng Raspberry Pi (đối tượng mục tiêu của hướng dẫn này), nó cũng yêu cầu bộ chuyển đổi tín hiệu tương tự sang kỹ thuật số ADS1115, điều này thực sự dễ dàng đi dây. Gói Python One Pin Keypad (bao gồm) cũng đơn giản hóa việc lập trình cần thiết để xử lý đầu vào bàn phím, giúp bạn tiết kiệm nhiều thời gian và công sức hơn.
Để biết Hướng dẫn sử dụng Arduino, hãy nhấp vào đây.
Bước 1: Tập hợp tất cả các bộ phận

Để bắt đầu với bảng Bàn phím một pin, bạn sẽ cần:
- Bảng bàn phím một pin
- Một Arduino của một số hương vị (Một Arduino Nano đã được sử dụng trong trường hợp này)
- 3 cáp jumper M / F,
- 4 M / M HOẶC thêm 4 cáp jumper M / F, tùy thuộc vào loại tiêu đề trên Raspberry Pi của bạn
- Bàn phím màng 16 nút
- Breadboard (Một cái thực sự nhỏ được sử dụng ở đây)
- Mô-đun ADS1115 (từ Adafruit hoặc một bản sao)
- Raspberry Pi có kết nối internet và hệ điều hành Raspbian (tôi đã sử dụng Stretch)
- Phụ kiện Raspberry Pi (Cáp HDMI, nguồn điện, khóa điện tử, màn hình, v.v. tùy thuộc vào hương vị của Raspberry Pi của bạn)
Bước 2: Đấu dây


Nối Bàn phím một pin theo sơ đồ Fritzing, ảnh chụp hoặc cả hai, tùy theo ý thích của bạn.
Xin lưu ý: ghi chú trên sơ đồ Fritzing đại diện cho Bàn phím một pin (và các chữ viết tắt GND VCC và AOUT chỉ định các sơ đồ chân của bảng Bàn phím một pin)
Bước 3: Cài đặt gói Python


Mở cửa sổ dòng lệnh và nhập các lệnh sau:
sudo apt-get cập nhật
sau đó
pip3 cài đặt Progetto-One-Pin-Keypad
để cài đặt gói và các phụ thuộc cần thiết của nó
Bước 4: Cài đặt các ví dụ

Tôi đã tạo một thư mục dev để chứa kho lưu trữ trong home / pi nếu bạn muốn làm như vậy (nó hoàn toàn là tùy chọn), hãy chạy lệnh này:
mkdir dev
sau đó, để điều hướng vào thư mục, hãy nhập:
cd dev
Cuối cùng, để sao chép kho lưu trữ, hãy nhập lệnh sau:
Bước 5: Bật I2C



ADS1115 ADC (Analog to Digital Converter) dựa trên giao thức I2C (Inter-Integrated Circuit) để giao tiếp với Raspberry Pi, theo mặc định, bus I2C bị tắt, để kích hoạt nó, hãy nhập:
sudo raspi-config
sẽ đưa bạn đến cửa sổ cấu hình màu xanh lam, từ đó, sử dụng các phím mũi tên và phím enter, hãy chọn
- Tùy chọn giao diện
- I2C
- Sau đó đi xuống
Mẹo: Tham khảo các ảnh chụp màn hình ở trên có thể giúp ích một chút! Nếu bạn vẫn còn bế tắc, đừng sợ! Tham khảo cách thực hiện tuyệt vời này từ Sparkfun!
Bước 6: Chạy Calibratethresholds

Điều hướng đến kho lưu trữ nếu bạn chưa có và đi tới thư mục ví dụ bằng cách sử dụng các lệnh sau:
Mẹo: gõ 'cd Prog' rồi nhấn Tab, nó sẽ tự động điền tên kho!
cd Progetto_One_Pin_Keypad_Python_Package
sau đó gõ:
ví dụ cd
tiếp theo, chạy ví dụ về ngưỡng hiệu chỉnh bằng lệnh này:
Ngưỡng hiệu chuẩn python3
và làm theo hướng dẫn hiển thị trên bảng điều khiển để hiệu chỉnh bo mạch của bạn. Sau khi hiệu chuẩn xem qua tất cả các nút, hãy kiểm tra các giá trị tương tự mới của bạn để xem chúng có hoạt động hay không bằng cách nhấn một số nút khi được nhắc "Bắt đầu". Nếu các giá trị mới được chứng minh là không chính xác, hãy sử dụng Ctrl C để hủy chương trình và chạy nó lần nữa.
Ví dụ hiệu chỉnh sẽ cung cấp cho bạn 2 dòng mã bạn sẽ cần trong ví dụ tiếp theo, hãy đảm bảo giữ bảng điều khiển mở và / hoặc sao chép cả hai!
Bước 7: Sửa đổi và sau đó chạy Readkeypadwithtimeout



Bây giờ Bàn phím một pin của bạn đã được định hình, đã đến lúc đưa nó vào sử dụng. Trong khi bạn có thể làm điều này từ dòng lệnh bằng vi, cá nhân tôi thích sử dụng một IDE như IDLE.
Mở IDLE lên (bạn sẽ muốn có phiên bản python3) và sửa đổi các dòng sau:
Hãy nhớ rằng mảng giá trị tương tự mà bạn đã sao chép? Thay thế dòng 13 (xem bên dưới) bằng các giá trị tương tự mới được hiệu chỉnh đó.
# ex: my_thresholds = [các giá trị đã hiệu chỉnh sẽ ở đây]
được thay thế bằng cái này:
my_thresholds = [225, 2116, 3904, 5200, 6300, 7350, 8450, 9325, 10000, 10750, 11500, 12100, 12550, 13100, 13800, 14250]
Tiếp theo, thêm dòng mã tiếp theo vào sau dòng 23, (xem bên dưới):
keypad.useCalibratedThresholds (my_thresholds)
được thêm vào sau dòng 23:
# ex: keypad.use_calibrated_thresholds (tên mảng của bạn)
cuối cùng làm cho các dòng từ 22 đến 24 trông như thế này:
# Nếu các giá trị đã hiệu chỉnh đang được sử dụng, hãy sử dụng_calibrated_thresholds bên dưới:
# ex: keypad.use_calibrated_thresholds (tên mảng của bạn)
keypad.use_calibrated_thresholds (my_thresholds)
Sau khi hoàn tất, hãy chạy mã và kiểm tra nó bằng cách nhấn một số nút! Hãy thoải mái điều chỉnh bản phác thảo ví dụ cho các dự án của bạn! Hãy nhớ rằng read_keypad_with_timeout trả về nút đang được nhấn dưới dạng ký tự và thời gian chờ được đặt bằng mili giây! Nếu bạn không muốn hết thời gian chờ, hãy sử dụng bàn phím. NO_TIMEOUT hằng số.
Bước 8: Cách hoạt động của bàn phím một pin


Phần lớn thiết kế của Bàn phím một pin dựa trên việc Hari Wiguna triển khai bộ chia điện áp để có được giá trị tương tự duy nhất cho mỗi phím trong bàn phím 16 chân. Thiết kế của One Pin Keypad phần lớn vẫn giữ nguyên, với một số tinh chỉnh. Nếu bạn muốn có một hướng dẫn tuyệt vời về cách hoạt động của Bàn phím một pin, hãy xem video tuyệt vời của Hari Wiguna tại đây!
Bước 9: Kết luận

Trong phần hướng dẫn này, chúng tôi đã đề cập đến cách bắt đầu với bảng Bàn phím một pin của bạn. Bây giờ, những người tò mò có thể đã tự hỏi tại sao bản phác thảo ví dụ readKeypadInstanterma không bao giờ được sử dụng, lý do là nó không hữu ích, bởi vì nút phải được nhấn khi nó được gọi, hàm readKeypadInstant da () được sử dụng chủ yếu để đơn giản hóa readKeypadWithTimeout () trong thư viện. Nếu nó bắt mắt bạn, hãy thoải mái quay thử. Chúc mừng Hacking!
Nếu bạn có bất kỳ câu hỏi nào, hãy để lại bình luận bên dưới hoặc gửi email cho chúng tôi theo địa chỉ [email protected]. Chúc mọi điều tốt lành, Công ty Progetto P. S. Như đã hứa, một liên kết đến Tập tin Eagle của hội đồng quản trị.
Đề xuất:
Hướng dẫn sử dụng bàn phím Arduino 4x4: 4 bước (có hình ảnh)

Hướng dẫn sử dụng bàn phím Arduino 4x4: Đầu vào bàn phím hiển thị cho màn hình nối tiếp với mã đầy đủ của bàn phím arduino una và 4x4
Chúng tôi là một nhóm hướng dẫn 6 sinh viên UQD10801 (Robocon1) từ Đại học Tun Hussein Onn Malaysia (UTHM): Bàn phím 4x4 và LCD Arduino: 3 bước

Chúng tôi là một nhóm hướng dẫn 6 sinh viên UQD10801 (Robocon1) đến từ Đại học Tun Hussein Onn Malaysia (UTHM): Bàn phím 4x4 và LCD Arduino: Bàn phím là một cách tuyệt vời để cho phép người dùng tương tác với dự án của bạn. Bạn có thể sử dụng chúng để điều hướng menu, nhập mật khẩu, điều khiển trò chơi và rô bốt. Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách thiết lập bàn phím trên Arduino. Đầu tiên, tôi sẽ giải thích cách Ardu
Làm thế nào để viết một hướng dẫn sử dụng các tài liệu hướng dẫn: 14 bước

Làm thế nào để viết một hướng dẫn bằng cách sử dụng các bảng hướng dẫn: Tài liệu này chỉ ra cách sử dụng các bảng hướng dẫn để viết một chỉ dẫn
Giao diện Bàn phím LCD 16x2 chữ và số và bàn phím ma trận 4x4 với Raspberry Pi3: 5 bước (có hình ảnh)

Giao diện Bàn phím ma trận màn hình LCD và 4x4 16x2 chữ và số với Raspberry Pi3: Trong phần hướng dẫn này, chúng tôi giải thích cách giao diện bàn phím ma trận 16x2 LED và 4x4 với Raspberry Pi3. Chúng tôi sử dụng Python 3.4 để phát triển phần mềm. Bạn cũng có thể chọn Python 2.7, với ít thay đổi
Bàn phím Das nhanh và bẩn (Bàn phím trống): 3 bước

Bàn phím Das nhanh và bẩn (Bàn phím trống): Bàn phím A Das là tên của bàn phím phổ biến nhất không có chữ khắc trên các phím (bàn phím trống). Bàn phím Das được bán lẻ với giá 89,95 đô la. Tài liệu hướng dẫn này sẽ hướng dẫn bạn cách tự làm một cái bằng bất kỳ bàn phím cũ nào mà bạn có