RPi¶
The rpi subpackage is a collection of drivers for controlling peripherals attached to a RPi (Raspberry Pi) interface.
The RPi connector can be used to connect to Raspberry Pi compatible peripherals to PL pins. Remember that appropriate controllers must be implemented in an overlay and connected to the corresponding pins before a shield can be used. The RPi pins can also be used as general purpose pins to connect to custom hardware using wires.
Block Diagram¶
The RPi PYNQ MicroBlaze is available to control the RPi interface.
As indicated in the diagram, the RPi PYNQ MicroBlaze has a PYNQ MicroBlaze Subsystem, a configurable switch, and the following AXI controllers:
- 2x AXI I2C
- Frequency: 100KHz
- Address mode: 7 bit
- 2x AXI SPI
- Master mode
- Transaction Width: 8
- SCK Frequency: 6.25 MHz
- FIFO Depth: 16
Note
One SPI controller is connected to the Arduino interface dedicated SPI pins.
1x AXI GPIO
- 28 Input/Output pins total
2x AXI Timer
- 32 bits
- 1 Generate Output
- 1 PWM Output
1x AXI UART
- 115200 Baud
AXI Interrupt controller
Manages the interrupts of peripherals in the MicroBlaze subsystem.
Interrupt GPIO
An additional AXI GPIO is used to signal interrupt requests to the PS
Configurable Switch
Allows routing of signals from dedicated peripherals to the external interface.
More information about the RPi subpackage, its components, and its API can be found in the pynq.lib.rpi Package section.
For more examples, see the notebooks in the following directory on the PYNQ-Z2 board:
<Jupyter Dashboard>/base/rpi/