SAM4SD32 (SAM4S-EK2)
Loading...
Searching...
No Matches
ioport.h File Reference

Common IOPORT service main header file for AVR, UC3 and ARM architectures. More...

#include <parts.h>
#include <compiler.h>
#include "sam/ioport_pio.h"

Go to the source code of this file.

Enumerations

enum  ioport_direction {
  IOPORT_DIR_INPUT ,
  IOPORT_DIR_OUTPUT
}
 IOPORT pin directions. More...
enum  ioport_sense {
  IOPORT_SENSE_BOTHEDGES ,
  IOPORT_SENSE_FALLING ,
  IOPORT_SENSE_RISING ,
  IOPORT_SENSE_LEVEL_LOW ,
  IOPORT_SENSE_LEVEL_HIGH
}
 IOPORT edge sense modes. More...
enum  ioport_value {
  IOPORT_PIN_LEVEL_LOW ,
  IOPORT_PIN_LEVEL_HIGH
}
 IOPORT levels. More...

Functions

static void ioport_disable_pin (ioport_pin_t pin)
 Disable IOPORT pin, based on a pin created with IOPORT_CREATE_PIN().
static void ioport_disable_port (ioport_port_t port, ioport_port_mask_t mask)
 Disable multiple pins in a single IOPORT port.
static void ioport_enable_pin (ioport_pin_t pin)
 Enable an IOPORT pin, based on a pin created with IOPORT_CREATE_PIN().
static void ioport_enable_port (ioport_port_t port, ioport_port_mask_t mask)
 Enable multiple pins in a single IOPORT port.
static bool ioport_get_pin_level (ioport_pin_t pin)
 Get current value of an IOPORT pin, which has been configured as an input.
static ioport_port_mask_t ioport_get_port_level (ioport_pin_t port, ioport_port_mask_t mask)
 Get current value of several IOPORT pins in a single port, which have been configured as an inputs.
static void ioport_init (void)
 Initializes the IOPORT service, ready for use.
static ioport_port_mask_t ioport_pin_to_mask (ioport_pin_t pin)
 Convert a pin ID into a bitmask mask for the given pin on its port.
static ioport_port_t ioport_pin_to_port_id (ioport_pin_t pin)
 Convert a pin ID into a its port ID.
static void ioport_reset_pin_mode (ioport_pin_t pin)
 Reset pin mode configuration for a single IOPORT pin.
static void ioport_reset_port_mode (ioport_port_t port, ioport_port_mask_t mask)
 Reset multiple pin modes in a specified IOPORT port to defaults.
static void ioport_set_pin_dir (ioport_pin_t pin, enum ioport_direction dir)
 Set direction for a single IOPORT pin.
static void ioport_set_pin_level (ioport_pin_t pin, bool level)
 Set an IOPORT pin to a specified logical value.
static void ioport_set_pin_mode (ioport_pin_t pin, ioport_mode_t mode)
 Set pin mode for one single IOPORT pin.
static void ioport_set_pin_sense_mode (ioport_pin_t pin, enum ioport_sense pin_sense)
 Set the pin sense mode of a single IOPORT pin.
static void ioport_set_port_dir (ioport_port_t port, ioport_port_mask_t mask, enum ioport_direction dir)
 Set I/O direction for a group of pins in a single IOPORT.
static void ioport_set_port_level (ioport_port_t port, ioport_port_mask_t mask, enum ioport_value level)
 Set a group of IOPORT pins in a single port to a specified logical value.
static void ioport_set_port_mode (ioport_port_t port, ioport_port_mask_t mask, ioport_mode_t mode)
 Set multiple pin modes in a single IOPORT port, such as pull-up, pull-down, etc.
static void ioport_set_port_sense_mode (ioport_port_t port, ioport_port_mask_t mask, enum ioport_sense pin_sense)
 Set the pin sense mode of a multiple IOPORT pins on a single port.
static void ioport_toggle_pin_level (ioport_pin_t pin)
 Toggle the value of an IOPORT pin, which has previously configured as an output.
static void ioport_toggle_port_level (ioport_port_t port, ioport_port_mask_t mask)
 Toggle the values of several IOPORT pins located in a single port.

Detailed Description

Common IOPORT service main header file for AVR, UC3 and ARM architectures.

Copyright (c) 2012-2020 Microchip Technology Inc. and its subsidiaries.

\cond ASF_LICENSE

Definition in file ioport.h.