Mục lục:

Giao tiếp nối tiếp Arduino và Python - Hiển thị bàn phím: 4 bước
Giao tiếp nối tiếp Arduino và Python - Hiển thị bàn phím: 4 bước

Video: Giao tiếp nối tiếp Arduino và Python - Hiển thị bàn phím: 4 bước

Video: Giao tiếp nối tiếp Arduino và Python - Hiển thị bàn phím: 4 bước
Video: [PYTHON - ARDUINO] Bài 2: Truyền dữ liệu từ Arduino lên Python để hiển thị 2024, Tháng bảy
Anonim
Giao tiếp nối tiếp Arduino và Python - Màn hình bàn phím
Giao tiếp nối tiếp Arduino và Python - Màn hình bàn phím

Dự án này được tạo cho người dùng mac nhưng nó cũng có thể được thực hiện cho Linux và Windows, bước duy nhất nên khác là cài đặt.

Bước 1: Cài đặt phần mềm

Cài đặt phần mềm
Cài đặt phần mềm
  1. Tải xuống và cài đặt Arduino ->
  2. Tải xuống và cài đặt Python 2.7 ->
  3. Tải xuống thư viện Python "pyserial-2.7.tar.gz" ->
  4. Giải nén pyserial-2.7.tar.gz
  5. Mở Terminal và nhập:

cd /users/"Your-User-Account"/Downloads/pyserial-2.7

sudo python setup.py cài đặt

Cài đặt phần mềm đã sẵn sàng!

Bước 2: Đấu dây

Đấu dây
Đấu dây
Đấu dây
Đấu dây
Đấu dây
Đấu dây
Đấu dây
Đấu dây
  1. Arduino Uno
  2. Bàn phím 12 nút Sparkfun

Việc đấu dây được thực hiện mà không có điện trở bên ngoài, thay vào đó tôi đã sử dụng Điện trở Pullup bên trong của bộ vi điều khiển (Điện trở Pullup bên trong của Arduino có giá trị từ 20K-Ohm đến 50K-Ohm)

Để kích hoạt Điện trở kéo bên trong, hãy đặt Chân đầu vào CAO trong mã

Nếu bạn sử dụng Bàn phím khác, hãy xem bảng dữ liệu để biết dây phù hợp, nếu không nó có thể làm hỏng bộ vi điều khiển của bạn

Bước 3: Mã Arduino

Mã Arduino
Mã Arduino
  • Đầu tiên, chúng tôi xác định một bảng mã-Ma trận cho các phím
  • Bàn phím sử dụng các đầu nối chuyển đổi thông thường được sắp xếp thành 4 hàng (Ghim 7, 2, 3 và 5) và 3 cột (Ghim 6, 8 và 4), được định nghĩa là Mảng rowPins và colPins
  • Hàm setup ()

    • Mở cổng nối tiếp với Serial.begin ();
    • Đặt các cột là OUTPUT-Pins HIGH
    • Kích hoạt Pullup-Resistors, để thực hiện việc này, thiết lập các hàng là INPUT-Pins CAO;
  • Hàm getkey ()

    • Đặt mọi hàng THẤP và kiểm tra xem một trong các cột có THẤP không. Vì các Điện trở kéo lên đều là hàng CAO cho đến khi một phím được đẩy xuống. Phím được đẩy tạo ra tín hiệu THẤP tại chân INPUT. LOW này cho biết phím được đẩy trong hàng và cột này
    • Chờ cho đến khi khóa được phát hành và trả về ký tự của keymap-Array hoặc 0 nếu không có khóa nào được đẩy
    • Sử dụng thời gian trễ (debounceTime) để ổn định tín hiệu

Bước 4: Mã Python_2.7

Mã Python_2.7
Mã Python_2.7
  • Nhập Thư viện Sê-ri
  • Xác định một biến được kết nối = FALSE, sau này biến này được sử dụng để kiểm tra xem kết nối nối tiếp có khả dụng hay không
  • Mở Cổng nối tiếp bằng serial. Serial ("Tên cổng nối tiếp của bạn", baud)

    • Để lấy tên cổng nối tiếp của bạn, hãy nhấp vào -> Công cụ / Cổng nối tiếp trong Arduino IDLE
    • baud phải giống như trong Mã Arduino
  • Trong kiểm tra vòng lặp while nếu kết nối khả dụng hoặc không đọc tín hiệu nối tiếp và đặt biến được kết nối = TRUE, nó sẽ lặp lại cho đến khi nhận được kết nối nối tiếp
  • Sau khi kết nối, hãy đọc nối tiếp trong một vòng lặp trong khi và đặt đầu vào này vào một biến mới "var"
  • đóng cổng bằng ser.close ()

Đề xuất: