2024年2月17日 星期六

ZYNQ add SPI interface and petalinux device tree

 ZYNQ add SPI interface

  1. Open “Open Block Diagram”
  2. Add “AXI QUAD SPI” block
  3. Run “Run Conection Automation”
  4. Generate Bitstream
  5. Open “Open Implementation Design”
  6. Switch to “I/O Planning” and select “I/O Ports”

  1. Pin assign for SPI interface


  1. Generate Bitstream and export hardware

Customize SPI device tree for petalinux

After update HDF and execute command: petalinux-config –get-hw-description=<HDF Directory>

In components/plnx_workspace/device-tree/device-tree/pl.dtsi, will produce SPI device node automatically as below:

Modify project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi as below

Enable SPI device driver

$ petalinux-config -c kernel

Go to Device Drivers -> SPI Support -> User mode SPI device driver support and enable it.

Use spidev_test.c to verify the SPI interface.

$ ls /dev/spi*

$ gcc spidev_test.c -o spidev_test

$ ./spidev_test -D /dev/spidev1.0

沒有留言:

張貼留言

FPGA/STM32 SPI 實驗

本實驗中,Nucleo H753ZI 當作 SPI Master,PYNQ-Z2 當作 SPI Slave。 使用SPI通訊協定傳送及接收8 Bytes。 腳位設定如下: Nucleo H753ZI 功能 PYNZ-Z2 PD14 CS W9 PA5 SCLK...