Hướng dẫn lập trình 4 led nháy trên board FPGA-Pynq-Z2 bằng Python3

Đầu tiên sau khi mua về bạn sẽ cài đặt Pynq vào thẻ nhớ.

Download balenEtcher v1.7.8 for Windows

Download Balena Etcher 1.7.8 for Linux

Download balenaEtcher v1.7.8 for macOS

Chọn bản phù hợp:

Downloadable PYNQ images

Chọn thẻ nhớ và Flash! – Chờ chạy xong thì lấy thẻ nhớ ra cắm vào board PYNQ Z2

Sau đó Download MobaXterm Home Edition (current version): chọn 1 trong 2 nếu installer không được thì xài tạm bản portable cũng không ảnh hưởng gì đến việc sử dụng sau này nên cứ yên tâm.

Sau khi tải về thì mở giao diện MobaXterm lên sẽ hiển thị như này:

Để kết nối với board PYNQ Z2 bạn vào Session -> Serial -> chọn cổng Com kết nối với Board và Speed chọn 115200 như ảnh

Sau khi kết nối bạn sẽ thấy giao diện như ảnh bên dưới :

Như vậy trên laptop của ban đã kết nối đến với board PYNQZ2

Giờ đến với Board các bạn làm như sau:

Lắp thẻ & thiết lập boot

  • PYNQ-Z2/Z1:
    • Gạt JP1 sang SD (BOOT mode SD).
    • Cắm thẻ microSD đã flash.
    • Cắm Ethernet vào router/switch (khuyến nghị).
    • Cắm nguồn 12 V, bật POWER.

Sau đó bạn nhấn nút RST trên board PYNQ Z2 để khởi động thì màn hình trên laptop sẽ hiển thị như sau:

Như vậy bạn đã hoàn thành việc kết nối đến với PYNQZ2

Tài khoản mặc định : xilinx

Mật khẩu mặc định: xilinx

Tiếp theo bạn đổi IP tĩnh cho board nếu không cần có thể bỏ qua bước này:

Đặt IP tĩnh bằng Netplan (chuẩn nhất trên PYNQ 2.x/3.x)

  1. Mở shell (UART/SSH) và tạo file cấu hình: sudo nano /etc/netplan/01-eth0-static.yaml

Sau đó sẽ nhập mật khẩu vào : xilinx (Mặc định nhé) sẽ hiển thị như hình bên dưới

tiếp theo Dán cấu hình mẫu (đổi IP/Gateway/DNS theo mạng của bạn):

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: false
      addresses: [192.168.1.50/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]
or 
network:
  version: 2
  renderer: NetworkManager
  ethernets:
    eth0:
      dhcp4: false
      addresses: [192.168.1.50/24]
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]
  1. Lưu & thoát nano
  • Nhấn Ctrl+OEnter để lưu
  • Nhấn Ctrl+X để thoát

    Áp dụng: sudo netplan apply

    Kiểm tra : ip a

    Để kết nối Ethenet nội bộ từ Board PYNQZ2 sang Laptop thì cần phải đổi như sau:

    Đổi IP bằng giao diện Settings

    1. Nhấn Windows + I để mở Settings.
    2. Chọn Network & Internet → chọn loại mạng bạn đang dùng:
      • Wi-Fi (nếu dùng không dây)
      • Ethernet (nếu cắm dây LAN)
    3. Nhấn vào tên mạng đang kết nối → kéo xuống phần IP assignment → nhấn Edit.
    4. Trong cửa sổ Edit IP settings, chọn Manual.
    5. Bật công tắc IPv4 → nhập các thông số:
      • IP address: ví dụ 192.168.1.50
      • Subnet mask: thường là 255.255.255.0
      • Gateway: ví dụ 192.168.1.1
      • Preferred DNS: ví dụ 8.8.8.8
      • Alternate DNS: ví dụ 8.8.4.4
    6. Nhấn Save để lưu.

    Như vậy đã hoàn tất cài đặt và kết nối với Board PYNQZ2

    Tiếp theo chạy Jupyter Notebook đặt địa chỉ ip và laptop sao cho khớp nhau là được

    ở đây mình đặt là 192.168.1.50 http://192.168.1.50:9090/tree

    Tiếp đến việc khởi tạo và nạp code vào board PYNQ Z2

    Chon New – > Python 3

    from pynq.overlays.base import BaseOverlay
    from time import sleep
    
    # Nạp overlay cơ bản
    base = BaseOverlay("base.bit")
    
    # Nháy 4 LED trên board
    for i in range(5):
        for led in base.leds:
            led.on()
        sleep(0.5)
        for led in base.leds:
            led.off()
        sleep(0.5)

    Sau khi đến đây chỉ việc Run

    Vậy là xong kết thúc chạy

    Kết quả:

    Để lại một bình luận