Files
MicroH7Board.Firmware/Dependencies/LibPad
2025-05-13 02:03:18 +03:00
..
*
2025-05-13 02:03:18 +03:00
*
2025-05-13 02:03:18 +03:00
*
2025-05-13 02:03:18 +03:00
*
2025-05-13 02:03:18 +03:00
*
2025-05-13 02:03:18 +03:00
*
2025-05-13 02:03:18 +03:00

LibPad

Low-level PS1/PS2 gamepad communication library (mostly for embedded usage)

Data interface

It is just SPI: LSB first, CPOL=1, CPHA=1

Pad pinout

Pin number Pin name Meaning
1 DATA [Open-drain!] Data from joypad/memory card (SPI_MISO on MCU). Open drain (requires pull-up)
2 CMD Data to joypad/memory card (SPI_MOSI on MCU)
3 +7.6V Power supply for vibration motors
4 GND Ground
5 VCC 3.6V (should work fine with 3.3V)
6 ATT Attention (SPI_CS on MCU)
7 CLK Clock (SPI_CLK on MCU) PS1: 250KHz for controller and memory card, 500KHz or 1MHz for multitap. PS2: 250KHz for controller, 25MHz for memory card
8 N/C [IRQ10] Joy only (Konami Justifier). Typically not connected
9 Ack [IRQ7] [Open-drain!] Goes low for at least 1 clock after each 8 bits transmitted with 60us timeout . Open drain (requires pull-up)