verify module#
JS3 Part 1 verification designs: show which RP2040 pin choices the provider accepts.
Each design wraps the shipping McuMuxingCircuit unchanged, places the three
parts and closes every bus line with a code Route from a chosen RP2040 GPIO
to the peripheral pin. A route between two pins the provider may join is kept;
a route between pins no offered mapping joins is dropped. These routes fix the
mapping, which is why they live here and never in main.py.
McuMuxingProof: SPI1 on GPIO 8 (RX), 9 (CSn), 10 (SCK) and 11 (TX), I2C0 on GPIO 0 (SDA) and 1 (SCL). Every pair is in Table 279 of the RP2040 datasheet, so every route is kept.McuMuxingProofIllegal: the same, with SDA and SCL swapped (SDA on GPIO 1, SCL on GPIO 0). Table 279 offers no I2C SDA on GPIO 1 and no SCL on GPIO 0, so the two I2C routes are dropped.
The parts sit on the top layer with the flash and the accelerometer to the left of the RP2040, whose GPIO 0 to 11 pins line its left edge.
- class McuMuxingProofCircuit(spi_gpio, i2c_gpio)[source]#
Bases:
CircuitMcuMuxingCircuitplaced and code-routed on the given GPIO numbers.