|
|
|
|
|
by balefrost
1440 days ago
|
|
The RP2040 has a programmable IO subsystem. This lets you define a simple state machine that manages the IO pins and can transfer data to/from memory. Here's what the project's README says: So, how the heck the pico is able to achieve this? Well, the key are the PIO units, these units are a wonder, they are coprocessors explicitly dessigned to handle IO, it uses a very restricted and deterministic assembler (only nine instructions that each take a single cycle to execuet) but extremely efficient, so efficient that with only two instructions is possible to create a loop that captures GPIO data up to 30 bits and redirects the program flow based in the status of one of these GPIOs. |
|