Watching a Z80 from an RP2350
a day ago
- #RP2350 GPIO
- #Z80 Interfacing
- #Embedded Systems
- Experimenting with connecting Raspberry Pi Pico RP2350 to a Z80 CPU's address and data bus using a Pimoroni PGA2350 breakout PCB.
- Z80 bus features include 16-bit address bus (A0-A15), 8-bit data bus (D0-D7), and control lines like /RD, /WR, /M1, etc.
- Z80 clock speed can be very low, with minimum frequency around 5kHz, and reset requires 3 clock cycles.
- RP2350 GPIO initialization for bus monitoring uses SDK functions, but handling 48 GPIO pins requires managing bases (0 for 0-31, 1 for 32-63).
- Initial test code reads Z80 data bus and outputs to LEDs, but not real-time synchronized.
- Enhanced code detects IO writes to address 0 by monitoring /IORQ and /WR signals, then updates LEDs with data bus value.
- Potential future directions include supporting read/write IO, using RP2350 dual cores, memory-mapped devices, clock control, and PIO automation.