ESP8266 Bàn phím Bíp

Hướng dẫn này chỉ cho bạn cách sử dụng ESP8266 để phát ra âm thanh beep khi bàn phím được nhấn. Cụ thể, ESP8266 điều khiển buzzer Piezo và phát ra một âm thanh ngắn cho mỗi lần nhấn phím.

Phần cứng cần chuẩn bị

1×ESP8266 NodeMCU ESP-12E
1×Recommended: ESP8266 NodeMCU ESP-12E (Uno-form)
1×USB Cable Type-A to Type-C (for USB-A PC)
1×USB Cable Type-C to Type-C (for USB-C PC)
1×Bàn phím ma trận
1×3-24V Active Piezo Buzzer
1×Active Piezo Buzzer Module
1×Passive Piezo Buzzer Module
1×breadboard
1×dây jumper
1×(Khuyến nghị) Screw Terminal Expansion Board for ESP8266
1×(Khuyến nghị) Power Splitter for ESP8266 Type-C

Or you can buy the following kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)

Về bàn phím và chuông Piezo

Nếu bạn chưa quen với keypad và Piezo Buzzer (bao gồm các chân cắm, cách hoạt động và lập trình), các bài hướng dẫn sau có thể hỗ trợ:

Thư viện ezBuzzer đã được tạo ra để cho phép các buzzer kêu beep hoặc phát các giai điệu mà không can thiệp vào mã nguồn khác.

Sơ đồ đấu dây

sơ đồ nối dây ESP8266 NodeMCU với bàn phím và còi piezo

This image is created using Fritzing. Click to enlarge image

Xem thêm Sơ đồ chân ESP8266Cách cấp nguồn cho ESP8266.

Mã ESP8266

/* * Mã ESP8266 NodeMCU này được phát triển bởi newbiely.vn * Mã ESP8266 NodeMCU này được cung cấp để sử dụng công khai, không có ràng buộc. * Để xem hướng dẫn chi tiết và sơ đồ kết nối, vui lòng truy cập: * https://newbiely.vn/tutorials/esp8266/esp8266-keypad-beep */ #include <Keypad.h> #include <ezBuzzer.h> #define BUZZER_PIN D0 // The ESP8266 pin connected to the buzzer's pin #define ROW_NUM 4 // 4 rows #define COLUMN_NUM 3 // 3 columns char key_layout[ROW_NUM][COLUMN_NUM] = { {'1','2','3'}, {'4','5','6'}, {'7','8','9'}, {'*','0','#'} }; byte pin_rows[ROW_NUM] = {D1, D2, D3, D4}; // The ESP8266 pins connect to the row pins byte pin_column[COLUMN_NUM] = {D5, D6, D7}; // The ESP8266 pins connect to the column pins Keypad keypad = Keypad(makeKeymap(key_layout), pin_rows, pin_column, ROW_NUM, COLUMN_NUM ); ezBuzzer buzzer(BUZZER_PIN); // create ezBuzzer object that attach to a pin; void setup() { Serial.begin(9600); } void loop() { buzzer.loop(); // MUST call the buzzer.loop() function in loop() char key = keypad.getKey(); if (key) { Serial.print(key); // prints key to serial monitor buzzer.beep(100); // generates a 100ms beep } }

Hướng dẫn từng bước

Để bắt đầu với ESP8266 trên Arduino IDE, hãy làm theo các bước sau:

  • Xem hướng dẫn ESP8266 - Cài đặt phần mềm nếu đây là lần đầu bạn sử dụng ESP8266.
  • Kết nối các thành phần như được hiển thị trong sơ đồ.
  • Kết nối mạch ESP8266 với máy tính của bạn bằng cáp USB.
  • Mở Arduino IDE trên máy tính của bạn.
  • Chọn board ESP8266 phù hợp, ví dụ NodeMCU 1.0 (ESP-12E Module), và cổng COM tương ứng của nó.
  • Kết nối ESP8266 với máy tính bằng cáp USB.
  • Mở Arduino IDE và chọn đúng board và cổng.
  • Nhấp vào biểu tượng Thư viện ở thanh bên trái của Arduino IDE.
  • Tìm kiếm “keypad” và xác định thư viện keypad do Mark Stanley và Alexander Brevig sáng tác.
  • Sau đó, nhấn nút Cài đặt để hoàn tất việc cài đặt thư viện keypad.
thư viện bàn phím ESP8266 NodeMCU
  • Tìm kiếm “ezBuzzer”, sau đó tìm thư viện buzzer từ ArduinoGetStarted.
  • Nhấn nút Cài đặt để cài đặt thư viện ezBuzzer.
thư viện buzzer ESP8266 NodeMCU
  • Sao chép mã và mở nó trong Arduino IDE.
  • Nhấn nút Tải lên trong Arduino IDE để biên dịch và tải mã lên ESP8266.
tải mã lên Arduino ide
  • Nhấn một số phím trên bàn phím ma trận.
  • Lắng nghe một tiếng bíp và sau đó kiểm tra Serial Monitor để xem kết quả.

Giải thích mã nguồn

Xem giải thích theo từng dòng được ghi trong các bình luận của mã nguồn!

Video Tutorial

Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.