Module rp2040_pac::pio0::sm::sm_execctrl
source · Expand description
Execution/behavioural settings for state machine 0
Structs§
- Execution/behavioural settings for state machine 0
Enums§
- Comparison used for the MOV x, STATUS instruction.
Type Aliases§
- Field
EXEC_STALLED
reader - If 1, an instruction written to SMx_INSTR is stalled, and latched by the state machine. Will clear to 0 once this instruction completes. - Field
INLINE_OUT_EN
reader - If 1, use a bit of OUT data as an auxiliary write enable
When used in conjunction with OUT_STICKY, writes with an enable of 0 will
deassert the latest pin write. This can create useful masking/override behaviour
due to the priority ordering of state machine pin writes (SM0 < SM1 < …) - Field
INLINE_OUT_EN
writer - If 1, use a bit of OUT data as an auxiliary write enable
When used in conjunction with OUT_STICKY, writes with an enable of 0 will
deassert the latest pin write. This can create useful masking/override behaviour
due to the priority ordering of state machine pin writes (SM0 < SM1 < …) - Field
JMP_PIN
reader - The GPIO number to use as condition for JMP PIN. Unaffected by input mapping. - Field
JMP_PIN
writer - The GPIO number to use as condition for JMP PIN. Unaffected by input mapping. - Field
OUT_EN_SEL
reader - Which data bit to use for inline OUT enable - Field
OUT_EN_SEL
writer - Which data bit to use for inline OUT enable - Field
OUT_STICKY
reader - Continuously assert the most recent OUT/SET to the pins - Field
OUT_STICKY
writer - Continuously assert the most recent OUT/SET to the pins - Register
SM_EXECCTRL
reader - Field
SIDE_EN
reader - If 1, the MSB of the Delay/Side-set instruction field is used as side-set enable, rather than a side-set data bit. This allows instructions to perform side-set optionally, rather than on every instruction, but the maximum possible side-set width is reduced from 5 to 4. Note that the value of PINCTRL_SIDESET_COUNT is inclusive of this enable bit. - Field
SIDE_EN
writer - If 1, the MSB of the Delay/Side-set instruction field is used as side-set enable, rather than a side-set data bit. This allows instructions to perform side-set optionally, rather than on every instruction, but the maximum possible side-set width is reduced from 5 to 4. Note that the value of PINCTRL_SIDESET_COUNT is inclusive of this enable bit. - Field
SIDE_PINDIR
reader - If 1, side-set data is asserted to pin directions, instead of pin values - Field
SIDE_PINDIR
writer - If 1, side-set data is asserted to pin directions, instead of pin values - Field
STATUS_N
reader - Comparison level for the MOV x, STATUS instruction - Field
STATUS_N
writer - Comparison level for the MOV x, STATUS instruction - Field
STATUS_SEL
reader - Comparison used for the MOV x, STATUS instruction. - Field
STATUS_SEL
writer - Comparison used for the MOV x, STATUS instruction. - Register
SM_EXECCTRL
writer - Field
WRAP_BOTTOM
reader - After reaching wrap_top, execution is wrapped to this address. - Field
WRAP_BOTTOM
writer - After reaching wrap_top, execution is wrapped to this address. - Field
WRAP_TOP
reader - After reaching this address, execution is wrapped to wrap_bottom.
If the instruction is a jump, and the jump condition is true, the jump takes priority. - Field
WRAP_TOP
writer - After reaching this address, execution is wrapped to wrap_bottom.
If the instruction is a jump, and the jump condition is true, the jump takes priority.