epio
A cycle-accurate RP2350 PIO emulator
Loading...
Searching...
No Matches
Functions
IRQ API

Functions for controlling IRQs. More...

Functions

EPIO_EXPORT void epio_set_block_irq (epio_t *epio, uint8_t block, uint8_t irq_num)
 Set an IRQ flag for a PIO block.
 
EPIO_EXPORT void epio_clear_block_irq (epio_t *epio, uint8_t block, uint8_t irq_num)
 Clear an IRQ flag for a PIO block.
 

Detailed Description

Functions for controlling IRQs.

Function Documentation

◆ epio_clear_block_irq()

EPIO_EXPORT void epio_clear_block_irq ( epio_t epio,
uint8_t  block,
uint8_t  irq_num 
)

Clear an IRQ flag for a PIO block.

Clears the specified IRQ flag (0-7) for the given PIO block. State machines waiting on that IRQ will continue waiting until it is set again.

Parameters
epioThe epio instance.
blockPIO block index (0 to NUM_PIO_BLOCKS-1
irq_numIRQ number to clear (0 to NUM_IRQS_PER_BLOCK-1).

◆ epio_set_block_irq()

EPIO_EXPORT void epio_set_block_irq ( epio_t epio,
uint8_t  block,
uint8_t  irq_num 
)

Set an IRQ flag for a PIO block.

Sets the specified IRQ flag (0-7) for the given PIO block. This can be used to trigger state machines waiting on that IRQ.

Parameters
epioThe epio instance.
blockPIO block index (0 to NUM_PIO_BLOCKS-1
irq_numIRQ number to set (0 to NUM_IRQS_PER_BLOCK-1).