Resets the state machine to a consistent state, and configures it This method: - Disables the state machine (if running) - Clears the FIFOs - Applies the configuration specified by 'config' - Resets any internal state e.g. shift counters - Jumps to the initial program location given by 'initial_pc' The state machine is left disabled on return from this call.
Set the wrap addresses in a state machine configuration
Setup 'out' shifting parameters in a state machine configuration
Setup the FIFO joining in a state machine configuration
Set the state machine clock divider (from a floating point value) in a state machine configuration The clock divider slows the state machine's execution by masking the system clock on some cycles, in a repeating pattern, so that the state machine does not advance. Effectively this produces a slower clock for the state machine to run from, which can be used to generate e.g. a particular UART baud rate. See the datasheet for further detail.
Set the 'set' pins in a state machine configuration 'set' pins can overlap with the 'in', 'out' and 'sideset' pins
Set the state machine clock divider (from integer and fractional parts - 16:8) in a state machine configuration The clock divider can slow the state machine's execution to some rate below the system clock frequency, by enabling the state machine on some cycles but not on others, in a regular pattern. This can be used to generate e.g. a given UART baud rate. See the datasheet for further detail.
Apply a state machine configuration to a state machine
Setup 'in' shifting parameters in a state machine configuration
Set the 'out' pins in a state machine configuration 'out' pins can overlap with the 'in', 'set' and 'sideset' pins
Set the base of the 'set' pins in a state machine configuration 'set' pins can overlap with the 'in', 'out' and 'sideset' pins
Set the count of 'set' pins in a state machine configuration 'set' pins can overlap with the 'in', 'out' and 'sideset' pins
Set the base of the 'in' pins in a state machine configuration 'in' pins can overlap with the 'out', 'set' and 'sideset' pins
Set the base fpr the 'in' pins in a state machine configuration 'in' pins can overlap with the 'out', 'set' and 'sideset' pins
Set the base of the 'out' pins in a state machine configuration 'out' pins can overlap with the 'in', 'set' and 'sideset' pins
Set the number of 'out' pins in a state machine configuration 'out' pins can overlap with the 'in', 'set' and 'sideset' pins
Set the base of the 'sideset' pins in a state machine configuration 'sideset' pins can overlap with the 'in', 'out' and 'set' pins
Set the 'sideset' pins in a state machine configuration This method is identical to sm_config_set_sideset_pin_base, and is provided for backwards compatibility 'sideset' pins can overlap with the 'in', 'out' and 'set' pins
Set the 'sideset' options in a state machine configuration
Set special 'out' operations in a state machine configuration
Set source for 'mov status' in a state machine configuration
Set the 'jmp' pin in a state machine configuration