rp2 – Functionality specific to the RP2.
Functionality specific to the RP2.
The rp2
module contains functions and classes specific to the RP2040, as
used in the Raspberry Pi Pico.
See the RP2040 Python datasheet for more information, and pico-micropython-examples for example code.
Exceptions
This exception is raised from |
Functions
|
Assemble a PIO program. |
|
Assemble a single PIO instruction. You usually want to use |
|
Temporarily turns the QSPI_SS pin into an input and reads its value, |
Module Contents
- exception rp2.PIOASMError
Bases:
Exception
This exception is raised from
asm_pio()
orasm_pio_encode()
if there is an error assembling a PIO program.
- rp2.asm_pio(*, out_init=None, set_init=None, sideset_init=None, in_shiftdir=0, out_shiftdir=0, autopush=False, autopull=False, push_thresh=32, pull_thresh=32, fifo_join=PIO.JOIN_NONE) Incomplete
Assemble a PIO program.
The following parameters control the initial state of the GPIO pins, as one of
PIO.IN_LOW
,PIO.IN_HIGH
,PIO.OUT_LOW
orPIO.OUT_HIGH
. If the program uses more than one pin, provide a tuple, e.g.out_init=(PIO.OUT_LOW, PIO.OUT_LOW)
.out_init configures the pins used for
out()
instructions.set_init configures the pins used for
set()
instructions. There can be at most 5.sideset_init configures the pins used side-setting. There can be at most 5.
The following parameters are used by default, but can be overridden in
StateMachine.init()
:in_shiftdir is the default direction the ISR will shift, either
PIO.SHIFT_LEFT
orPIO.SHIFT_RIGHT
.out_shiftdir is the default direction the OSR will shift, either
PIO.SHIFT_LEFT
orPIO.SHIFT_RIGHT
.push_thresh is the threshold in bits before auto-push or conditional re-pushing is triggered.
pull_thresh is the threshold in bits before auto-pull or conditional re-pulling is triggered.
The remaining parameters are:
autopush configures whether auto-push is enabled.
autopull configures whether auto-pull is enabled.
fifo_join configures whether the 4-word TX and RX FIFOs should be combined into a single 8-word FIFO for one direction only. The options are
PIO.JOIN_NONE
,PIO.JOIN_RX
andPIO.JOIN_TX
.
- rp2.asm_pio_encode(instr, sideset_count, sideset_opt=False) Incomplete
Assemble a single PIO instruction. You usually want to use
asm_pio()
instead.>>> rp2.asm_pio_encode("set(0, 1)", 0) 57345
- rp2.bootsel_button() Incomplete
Temporarily turns the QSPI_SS pin into an input and reads its value, returning 1 for low and 0 for high. On a typical RP2040 board with a BOOTSEL button, a return value of 1 indicates that the button is pressed.
Since this function temporarily disables access to the external flash memory, it also temporarily disables interrupts and the other core to prevent them from trying to execute code from flash.