Pico 2 / RP2350 - are PIO2 State Machines (8,9,10,11) supported? #17502
-
Just checking to see if this is a known issue before digging in further. Here's what I'm seeing: pio_1hz.py example - works when specifying 0 - 7 ids, fails with 8 - 11. Removing the irq doesn't change the behavior. Appears to be setting the PIO registers differently for 8 than it does for 0 or 4 (for example) Thanks |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 5 replies
-
Affirm! |
Beta Was this translation helpful? Give feedback.
Affirm!
Even the Pin class misses some things:
['__class__', '__name__', 'value', 'ALT', 'ALT_GPCK', 'ALT_I2C', 'ALT_PIO0', 'ALT_PIO1', 'ALT_PWM', 'ALT_SIO', 'ALT_SPI', 'ALT_UART', 'ALT_USB', 'IN', 'IRQ_FALLING', 'IRQ_RISING', 'OPEN_DRAIN', 'OUT', 'PULL_DOWN', 'PULL_UP', '__bases__', '__dict__', 'board', 'cpu', 'high', 'init', 'irq', 'low', 'off', 'on', 'toggle']
Note that there's no 'ALT_PIO2' and manually setting Pin.alt_mode to 8 (for PIO2) does not work either.
Manually forcing
mem32[IO_BANK0_BASE+GPIO25_CTRL] = 8 mem32[PADS_BANK0_BASE+pads_GPIO25] = 1<<4
won't help either.