98#define PIO_DEFAULT (0 << 0)
100#define PIO_PULLUP (1 << 0)
102#define PIO_DEGLITCH (1 << 1)
104#define PIO_OPENDRAIN (1 << 2)
107#define PIO_DEBOUNCE (1 << 3)
110#define PIO_IT_AIME (1 << 4)
113#define PIO_IT_RE_OR_HL (1 << 5)
115#define PIO_IT_EDGE (1 << 6)
118#define PIO_IT_LOW_LEVEL (0 | 0 | PIO_IT_AIME)
120#define PIO_IT_HIGH_LEVEL (PIO_IT_RE_OR_HL | 0 | PIO_IT_AIME)
122#define PIO_IT_FALL_EDGE (0 | PIO_IT_EDGE | PIO_IT_AIME)
124#define PIO_IT_RISE_EDGE (PIO_IT_RE_OR_HL | PIO_IT_EDGE | PIO_IT_AIME)
126#define PIO_WPMR_WPEN_EN (0x01 << 0)
128#define PIO_WPMR_WPEN_DIS (0x00 << 0)
130#define PIO_WPMR_WPKEY_VALID (0x50494F << 8)
145#define PIO_LISTSIZE(pPins) (sizeof(pPins) / sizeof(Pin))
uint8_t PIO_Configure(const Pin *list, uint32_t size)
Configures a list of Pin instances, each of which can either hold a single pin or a group of pins,...
Definition: pio.c:295
uint8_t PIO_Get(const Pin *pin)
Returns 1 if one or more PIO of the given Pin instance currently have a high level; otherwise returns...
Definition: pio.c:389
void PIO_DisableWriteProtect(const Pin *pin)
Disable write protect.
Definition: pio.c:455
void PIO_Clear(const Pin *pin)
Sets a low output level on all the PIOs defined in the given Pin instance. This has no immediate effe...
Definition: pio.c:373
void PIO_EnableWriteProtect(const Pin *pin)
Enable write protect.
Definition: pio.c:442
void PIO_SetPinType(Pin *pin, uint8_t pinType)
Set pin type the pin is controlled by the corresponding peripheral (A, B, C, D,E)
Definition: pio.c:479
void PIO_SetDebounceFilter(const Pin *pin, uint32_t cuttoff)
Configures Glitch or Denouncing filter for input.
Definition: pio.c:428
uint8_t PIO_GetOutputDataStatus(const Pin *pin)
Returns 1 if one or more PIO of the given Pin are configured to output a high level (even if they are...
Definition: pio.c:414
uint32_t PIO_GetWriteProtectViolationInfo(const Pin *pin)
Get write protect violation information.
Definition: pio.c:467
void PIO_Set(const Pin *pin)
Sets a high output level on all the PIOs defined in the given Pin instance. This has no immediate eff...
Definition: pio.c:360
void PIO_SetDriveStrength(const Pin *pin, uint8_t strength)
Set the drive strength of the pin.
Definition: pio.c:490
Pio hardware registers.
Definition: component_pio.h:41