Microchip® Advanced Software Framework

sam4e_xplained_pro.h File Reference

SAM4E-XPRO Board Definition.

Copyright (c) 2014-2018 Microchip Technology Inc. and its subsidiaries.

#include "compiler.h"
#include "system_sam4e.h"
#include "exceptions.h"

Macros

#define BOARD_FREQ_MAINCK_BYPASS   (12000000U)
 
#define BOARD_FREQ_MAINCK_XTAL   (12000000U)
 
#define BOARD_FREQ_SLCK_BYPASS   (32768U)
 
#define BOARD_FREQ_SLCK_XTAL   (32768U)
 Board oscillator settings. More...
 
#define BOARD_GMAC_PHY_ADDR   0
 
#define BOARD_MCK   CHIP_FREQ_CPU_MAX
 Master clock frequency. More...
 
#define BOARD_NAME   "SAM4E-XPRO"
 Name of the board. More...
 
#define BOARD_NAND_CS   0
 
#define BOARD_NF_ADDRESS_ADDR   0x60200000
 Address for transferring address bytes to the nandflash. More...
 
#define BOARD_NF_COMMAND_ADDR   0x60400000
 Address for transferring command bytes to the nandflash. More...
 
#define BOARD_NF_DATA_ADDR   0x60000000
 Address for transferring data bytes to the nandflash. More...
 
#define BOARD_NORFLASH_ADDR   0x63000000
 Address for transferring command bytes to the norflash. More...
 
#define BOARD_NORFLASH_DFT_BUS_SIZE   8
 Default NOR bus size after power up reset. More...
 
#define BOARD_NUM_OF_LED   1
 Number of on-board LEDs. More...
 
#define BOARD_OSC_STARTUP_US   15625
 board main clock xtal statup time More...
 
#define BOARD_SD_PINS   PINS_HSMCI
 HSMCI pins that shall be configured to access the SD card. More...
 
#define BOARD_USB_BMATTRIBUTES   USBConfigurationDescriptor_SELFPOWERED_RWAKEUP
 USB attributes configuration descriptor (bus or self powered, remote wakeup) More...
 
#define BUTTON_0_ACTIVE   SW0_ACTIVE
 
#define BUTTON_0_INACTIVE   SW0_INACTIVE
 
#define BUTTON_0_NAME   "SW0"
 Push button #0 definition. More...
 
#define BUTTON_0_PIN   SW0_PIN
 
#define BUTTON_0_SUPC_INPUT   SW0_SUPC_INPUT
 
#define CHIP_USB_ENDPOINTS_BANKS(i)
 Endpoints Number of Bank. More...
 
#define CHIP_USB_ENDPOINTS_MAXPACKETSIZE(i)
 Endpoints max packet size. More...
 
#define CHIP_USB_NUMENDPOINTS   8
 Number of USB endpoints. More...
 
#define CHIP_USB_PULLUP_INTERNAL
 Indicates chip has an internal pull-up. More...
 
#define CHIP_USB_UDP
 Indicates chip has an UDP Full Speed. More...
 
#define CONF_NF_BUSWIDTH   8
 
#define CONF_NF_CYCLE_TIMING
 
#define CONF_NF_PULSE_TIMING
 
#define CONF_NF_SETUP_TIMING
 
#define CONSOLE_UART   UART0
 
#define CONSOLE_UART_ID   ID_UART0
 
#define cortexm4
 Core definition. More...
 
#define EDBG_I2C_MODULE   TWI0
 EDBG related define. More...
 
#define EDBG_I2C_MODULE_ID   ID_TWI0
 
#define GPIO_PUSH_BUTTON_0   BUTTON_0_PIN
 
#define GPIO_PUSH_BUTTON_1   (PIO_PA2_IDX)
 
#define GPIO_PUSH_BUTTON_1_FLAGS   (IOPORT_MODE_PULLUP | IOPORT_MODE_DEBOUNCE)
 
#define GPIO_PUSH_BUTTON_1_SENSE   (IOPORT_SENSE_RISING)
 
#define PIN_CAN0_RX_FLAGS   IOPORT_MODE_MUX_A
 
#define PIN_CAN0_RX_IDX   PIO_PB3_IDX
 CAN0 PIN RX. More...
 
#define PIN_CAN0_TR_EN_FLAGS   IOPORT_DIR_OUTPUT
 
#define PIN_CAN0_TR_EN_IDX   PIO_PE1_IDX
 CAN0 transceiver PIN EN. More...
 
#define PIN_CAN0_TR_RS_FLAGS   IOPORT_DIR_OUTPUT
 
#define PIN_CAN0_TR_RS_IDX   PIO_PE0_IDX
 CAN0 transceiver PIN RS. More...
 
#define PIN_CAN0_TX_FLAGS   IOPORT_MODE_MUX_A
 
#define PIN_CAN0_TX_IDX   PIO_PB2_IDX
 CAN0 PIN TX. More...
 
#define PIN_CAN1_RX_FLAGS   IOPORT_MODE_MUX_C
 
#define PIN_CAN1_RX_IDX   PIO_PC12_IDX
 CAN1 PIN RX. More...
 
#define PIN_CAN1_TR_EN_FLAGS   IOPORT_DIR_OUTPUT
 
#define PIN_CAN1_TR_EN_IDX   PIO_PE3_IDX
 CAN1 transceiver PIN EN. More...
 
#define PIN_CAN1_TR_RS_FLAGS   IOPORT_DIR_OUTPUT
 
#define PIN_CAN1_TR_RS_IDX   PIO_PE2_IDX
 CAN1 transceiver PIN RS. More...
 
#define PIN_CAN1_TX_FLAGS   IOPORT_MODE_MUX_C
 
#define PIN_CAN1_TX_IDX   PIO_PC15_IDX
 CAN1 PIN TX. More...
 
#define PIN_EBI_ADDR_BUS_A0   PIO_PC18_IDX
 
#define PIN_EBI_ADDR_BUS_A1   PIO_PC19_IDX
 
#define PIN_EBI_ADDR_BUS_A10   PIO_PC28_IDX
 
#define PIN_EBI_ADDR_BUS_A11   PIO_PC29_IDX
 
#define PIN_EBI_ADDR_BUS_A12   PIO_PC30_IDX
 
#define PIN_EBI_ADDR_BUS_A13   PIO_PC31_IDX
 
#define PIN_EBI_ADDR_BUS_A14   PIO_PA18_IDX
 
#define PIN_EBI_ADDR_BUS_A15   PIO_PA19_IDX
 
#define PIN_EBI_ADDR_BUS_A16   PIO_PA20_IDX
 
#define PIN_EBI_ADDR_BUS_A17   PIO_PA0_IDX
 
#define PIN_EBI_ADDR_BUS_A18   PIO_PA1_IDX
 
#define PIN_EBI_ADDR_BUS_A2   PIO_PC20_IDX
 
#define PIN_EBI_ADDR_BUS_A3   PIO_PC21_IDX
 
#define PIN_EBI_ADDR_BUS_A4   PIO_PC22_IDX
 
#define PIN_EBI_ADDR_BUS_A5   PIO_PC23_IDX
 
#define PIN_EBI_ADDR_BUS_A6   PIO_PC24_IDX
 
#define PIN_EBI_ADDR_BUS_A7   PIO_PC25_IDX
 
#define PIN_EBI_ADDR_BUS_A8   PIO_PC26_IDX
 
#define PIN_EBI_ADDR_BUS_A9   PIO_PC27_IDX
 
#define PIN_EBI_ADDR_BUS_FLAG1   IOPORT_MODE_MUX_A
 
#define PIN_EBI_ADDR_BUS_FLAG2   IOPORT_MODE_MUX_C
 
#define PIN_EBI_DATA_BUS_D0   PIO_PC0_IDX
 EBI Bus pins. More...
 
#define PIN_EBI_DATA_BUS_D1   PIO_PC1_IDX
 
#define PIN_EBI_DATA_BUS_D2   PIO_PC2_IDX
 
#define PIN_EBI_DATA_BUS_D3   PIO_PC3_IDX
 
#define PIN_EBI_DATA_BUS_D4   PIO_PC4_IDX
 
#define PIN_EBI_DATA_BUS_D5   PIO_PC5_IDX
 
#define PIN_EBI_DATA_BUS_D6   PIO_PC6_IDX
 
#define PIN_EBI_DATA_BUS_D7   PIO_PC7_IDX
 
#define PIN_EBI_DATA_BUS_FLAGS   IOPORT_MODE_MUX_A
 
#define PIN_EBI_NANDALE   (PIO_PC16_IDX)
 NandFlash pins definition: ALE. More...
 
#define PIN_EBI_NANDALE_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NANDCLE   (PIO_PC17_IDX)
 NandFlash pins definition: CLE. More...
 
#define PIN_EBI_NANDCLE_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NANDIO_0   (PIO_PC0_IDX)
 NandFlash pins definition: DATA. More...
 
#define PIN_EBI_NANDIO_0_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NANDIO_1   (PIO_PC1_IDX)
 
#define PIN_EBI_NANDIO_1_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NANDIO_2   (PIO_PC2_IDX)
 
#define PIN_EBI_NANDIO_2_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NANDIO_3   (PIO_PC3_IDX)
 
#define PIN_EBI_NANDIO_3_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NANDIO_4   (PIO_PC4_IDX)
 
#define PIN_EBI_NANDIO_4_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NANDIO_5   (PIO_PC5_IDX)
 
#define PIN_EBI_NANDIO_5_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NANDIO_6   (PIO_PC6_IDX)
 
#define PIN_EBI_NANDIO_6_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NANDIO_7   (PIO_PC7_IDX)
 
#define PIN_EBI_NANDIO_7_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NANDOE   (PIO_PC9_IDX)
 NandFlash pins definition: OE. More...
 
#define PIN_EBI_NANDOE_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NANDWE   (PIO_PC10_IDX)
 NandFlash pins definition: WE. More...
 
#define PIN_EBI_NANDWE_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_EBI_NCS1   PIO_PD18_IDX
 
#define PIN_EBI_NCS1_FLAGS   IOPORT_MODE_MUX_A
 
#define PIN_EBI_NCS3   PIO_PD19_IDX
 
#define PIN_EBI_NCS3_FLAGS   IOPORT_MODE_MUX_A
 
#define PIN_EBI_NRD   PIO_PC11_IDX
 
#define PIN_EBI_NRD_FLAGS   IOPORT_MODE_MUX_A
 
#define PIN_EBI_NWE   PIO_PC8_IDX
 
#define PIN_EBI_NWE_FLAGS   IOPORT_MODE_MUX_A
 
#define PIN_HSMCI_MCCDA_FLAGS   (IOPORT_MODE_MUX_C)
 
#define PIN_HSMCI_MCCDA_GPIO   (PIO_PA28_IDX)
 HSMCI MCCDA pin definition. More...
 
#define PIN_HSMCI_MCCK_FLAGS   (IOPORT_MODE_MUX_C)
 
#define PIN_HSMCI_MCCK_GPIO   (PIO_PA29_IDX)
 HSMCI MCCK pin definition. More...
 
#define PIN_HSMCI_MCDA0_FLAGS   (IOPORT_MODE_MUX_C)
 
#define PIN_HSMCI_MCDA0_GPIO   (PIO_PA30_IDX)
 HSMCI MCDA0 pin definition. More...
 
#define PIN_HSMCI_MCDA1_FLAGS   (IOPORT_MODE_MUX_C)
 
#define PIN_HSMCI_MCDA1_GPIO   (PIO_PA31_IDX)
 HSMCI MCDA1 pin definition. More...
 
#define PIN_HSMCI_MCDA2_FLAGS   (IOPORT_MODE_MUX_C)
 
#define PIN_HSMCI_MCDA2_GPIO   (PIO_PA26_IDX)
 HSMCI MCDA2 pin definition. More...
 
#define PIN_HSMCI_MCDA3_FLAGS   (IOPORT_MODE_MUX_C)
 
#define PIN_HSMCI_MCDA3_GPIO   (PIO_PA27_IDX)
 HSMCI MCDA3 pin definition. More...
 
#define PIN_KSZ8051MNL_COL_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_COL_IDX   PIO_PD13_IDX
 
#define PIN_KSZ8051MNL_CRS_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_CRS_IDX   PIO_PD10_IDX
 
#define PIN_KSZ8051MNL_INTRP_IDX   PIO_PD28_IDX
 
#define PIN_KSZ8051MNL_MDC_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_MDC_IDX   PIO_PD8_IDX
 
#define PIN_KSZ8051MNL_MDIO_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_MDIO_IDX   PIO_PD9_IDX
 
#define PIN_KSZ8051MNL_RXC_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_RXC_IDX   PIO_PD14_IDX
 
#define PIN_KSZ8051MNL_RXD0_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_RXD0_IDX   PIO_PD5_IDX
 
#define PIN_KSZ8051MNL_RXD1_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_RXD1_IDX   PIO_PD6_IDX
 
#define PIN_KSZ8051MNL_RXD2_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_RXD2_IDX   PIO_PD11_IDX
 
#define PIN_KSZ8051MNL_RXD3_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_RXD3_IDX   PIO_PD12_IDX
 
#define PIN_KSZ8051MNL_RXDV_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_RXDV_IDX   PIO_PD4_IDX
 
#define PIN_KSZ8051MNL_RXER_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_RXER_IDX   PIO_PD7_IDX
 
#define PIN_KSZ8051MNL_TXC_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_TXC_IDX   PIO_PD0_IDX
 
#define PIN_KSZ8051MNL_TXD0_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_TXD0_IDX   PIO_PD2_IDX
 
#define PIN_KSZ8051MNL_TXD1_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_TXD1_IDX   PIO_PD3_IDX
 
#define PIN_KSZ8051MNL_TXD2_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_TXD2_IDX   PIO_PD15_IDX
 
#define PIN_KSZ8051MNL_TXD3_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_TXD3_IDX   PIO_PD16_IDX
 
#define PIN_KSZ8051MNL_TXEN_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_KSZ8051MNL_TXEN_IDX   PIO_PD1_IDX
 
#define PIN_NF_CE_IDX   (PIO_PC14_IDX)
 Nandflash chip enable pin definition. More...
 
#define PIN_NF_RB_IDX   (PIO_PB12_IDX)
 Nandflash ready/busy pin definition. More...
 
#define PIN_PCK0   (PIO_PA6_IDX)
 PCK0 pin definition (PA6) More...
 
#define PIN_PCK0_ATTR   PIO_DEFAULT
 
#define PIN_PCK0_FLAGS   (IOPORT_MODE_MUX_B)
 
#define PIN_PCK0_ID   ID_PIOA
 
#define PIN_PCK0_MASK   PIO_PA6B_PCK0
 
#define PIN_PCK0_MUX   (IOPORT_MODE_MUX_B)
 
#define PIN_PCK0_PIO   PIOA
 
#define PIN_PCK0_PORT   IOPORT_PIOA
 
#define PIN_PCK0_TYPE   PIO_PERIPH_B
 
#define PIN_PUSHBUTTON_1
 
#define PIN_PUSHBUTTON_1_ATTR   (PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_RISE_EDGE)
 
#define PIN_PUSHBUTTON_1_ID   ID_PIOA
 
#define PIN_PUSHBUTTON_1_IRQn   PIOA_IRQn
 
#define PIN_PUSHBUTTON_1_MASK   PIO_PA2
 
#define PIN_PUSHBUTTON_1_PIO   PIOA
 
#define PIN_PUSHBUTTON_1_TYPE   PIO_INPUT
 
#define PIN_PWM_LED0_CHANNEL   PWM_CHANNEL_2
 
#define PIN_PWM_LED0_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_PWM_LED0_GPIO   PIO_PD22_IDX
 PWM LED0 pin definitions. More...
 
#define PIN_TC0_TIOA0   (PIO_PA0_IDX)
 
#define PIN_TC0_TIOA0_FLAGS   (IOPORT_MODE_MUX_B)
 
#define PIN_TC0_TIOA0_MUX   (IOPORT_MODE_MUX_B)
 
#define PIN_TC0_TIOA1   (PIO_PA15_IDX)
 
#define PIN_TC0_TIOA1_ATTR   PIO_DEFAULT
 
#define PIN_TC0_TIOA1_FLAGS   (IOPORT_MODE_MUX_B)
 
#define PIN_TC0_TIOA1_ID   ID_PIOA
 
#define PIN_TC0_TIOA1_MASK   PIO_PA15
 
#define PIN_TC0_TIOA1_MUX   (IOPORT_MODE_MUX_B)
 
#define PIN_TC0_TIOA1_PIO   PIOA
 
#define PIN_TC0_TIOA1_TYPE   PIO_PERIPH_B
 
#define PIN_TC0_TIOA2   (PIO_PA26_IDX)
 
#define PIN_TC0_TIOA2_ATTR   PIO_DEFAULT
 
#define PIN_TC0_TIOA2_FLAGS   (IOPORT_MODE_MUX_B)
 
#define PIN_TC0_TIOA2_ID   ID_PIOA
 
#define PIN_TC0_TIOA2_MASK   PIO_PA26
 
#define PIN_TC0_TIOA2_MUX   (IOPORT_MODE_MUX_B)
 
#define PIN_TC0_TIOA2_PIO   PIOA
 
#define PIN_TC0_TIOA2_TYPE   PIO_PERIPH_B
 
#define PIN_USART0_CTS
 USART0 pin CTS. More...
 
#define PIN_USART0_CTS_FLAGS   (IOPORT_MODE_MUX_C)
 
#define PIN_USART0_CTS_IDX   (PIO_PB2_IDX)
 
#define PIN_USART0_RTS
 USART0 pin RTS. More...
 
#define PIN_USART0_RTS_FLAGS   (IOPORT_MODE_MUX_C)
 
#define PIN_USART0_RTS_IDX   (PIO_PB3_IDX)
 
#define PIN_USART0_RXD
 USART0 pin RX. More...
 
#define PIN_USART0_RXD_FLAGS   (IOPORT_MODE_MUX_C)
 
#define PIN_USART0_RXD_IDX   (PIO_PB0_IDX)
 
#define PIN_USART0_SCK
 USART0 pin SCK. More...
 
#define PIN_USART0_SCK_FLAGS   (IOPORT_MODE_MUX_C)
 
#define PIN_USART0_SCK_IDX   (PIO_PB13_IDX)
 
#define PIN_USART0_TXD
 USART0 pin TX. More...
 
#define PIN_USART0_TXD_FLAGS   (IOPORT_MODE_MUX_C)
 
#define PIN_USART0_TXD_IDX   (PIO_PB1_IDX)
 
#define PIN_USART1_CTS
 USART1 pin CTS. More...
 
#define PIN_USART1_CTS_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_USART1_CTS_IDX   (PIO_PA25_IDX)
 
#define PIN_USART1_EN
 USART1 pin ENABLE. More...
 
#define PIN_USART1_EN_ACTIVE_LEVEL   IOPORT_PIN_LEVEL_LOW
 
#define PIN_USART1_EN_FLAGS   (0)
 
#define PIN_USART1_EN_IDX   (PIO_PA23_IDX)
 
#define PIN_USART1_EN_INACTIVE_LEVEL   IOPORT_PIN_LEVEL_HIGH
 
#define PIN_USART1_RTS
 USART1 pin RTS. More...
 
#define PIN_USART1_RTS_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_USART1_RTS_IDX   (PIO_PA24_IDX)
 
#define PIN_USART1_RXD
 USART1 pin RX. More...
 
#define PIN_USART1_RXD_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_USART1_RXD_IDX   (PIO_PA21_IDX)
 
#define PIN_USART1_SCK
 USART1 pin SCK. More...
 
#define PIN_USART1_SCK_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_USART1_SCK_IDX   (PIO_PA23_IDX)
 
#define PIN_USART1_TXD
 USART1 pin TX. More...
 
#define PIN_USART1_TXD_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PIN_USART1_TXD_IDX   (PIO_PA22_IDX)
 
#define PIN_USB_DM   {PIO_PB10}
 USB D- pin (System function) More...
 
#define PIN_USB_DP   {PIO_PB11}
 USB D+ pin (System function) More...
 
#define PIN_USB_VBUS   {PIO_PE2, PIOE, ID_PIOE, PIO_INPUT, PIO_PULLUP}
 USB VBus monitoring pin definition. More...
 
#define PINS_HSMCI   {0x3fUL << 26, PIOA, ID_PIOA, PIO_PERIPH_C, PIO_PULLUP}
 
#define PINS_PUSHBUTTONS   {PIN_PUSHBUTTON_1}
 List of all push button definitions. More...
 
#define PINS_UART0   (PIO_PA9A_URXD0 | PIO_PA10A_UTXD0)
 UART0 pins (UTXD0 and URXD0) definitions, PA10,9. More...
 
#define PINS_UART0_ATTR   PIO_DEFAULT
 
#define PINS_UART0_FLAGS   (IOPORT_MODE_MUX_A)
 
#define PINS_UART0_ID   ID_PIOA
 
#define PINS_UART0_MASK   (PIO_PA9A_URXD0 | PIO_PA10A_UTXD0)
 
#define PINS_UART0_PIO   PIOA
 
#define PINS_UART0_PORT   IOPORT_PIOA
 
#define PINS_UART0_TYPE   PIO_PERIPH_A
 
#define PUSHBUTTON_1_NAME   "SW0"
 
#define PUSHBUTTON_1_WKUP_FSTT   (PMC_FSMR_FSTT2)
 
#define PUSHBUTTON_1_WKUP_LINE   (2)
 
#define sam4e
 Family definition (already defined) More...
 
#define sam4expro
 Board definition. More...
 
#define SD_MMC_HSMCI_MEM_CNT   1
 HSMCI pins definition. More...
 
#define SD_MMC_HSMCI_SLOT_0_SIZE   4
 
#define SPI_MISO_FLAGS   (IOPORT_MODE_MUX_A)
 
#define SPI_MISO_GPIO   (PIO_PA12_IDX)
 SPI MISO pin definition. More...
 
#define SPI_MOSI_FLAGS   (IOPORT_MODE_MUX_A)
 
#define SPI_MOSI_GPIO   (PIO_PA13_IDX)
 SPI MOSI pin definition. More...
 
#define SPI_NPCS0_FLAGS   (IOPORT_MODE_MUX_A)
 
#define SPI_NPCS0_GPIO   (PIO_PA11_IDX)
 SPI chip select 0 pin definition. More...
 
#define SPI_NPCS1_PA31_FLAGS   (IOPORT_MODE_MUX_A)
 
#define SPI_NPCS1_PA31_GPIO   (PIO_PA31_IDX)
 
#define SPI_NPCS1_PA9_FLAGS   (IOPORT_MODE_MUX_B)
 
#define SPI_NPCS1_PA9_GPIO   (PIO_PA9_IDX)
 SPI chip select 1 pin definition. More...
 
#define SPI_NPCS1_PB14_FLAGS   (IOPORT_MODE_MUX_A)
 
#define SPI_NPCS1_PB14_GPIO   (PIO_PB14_IDX)
 
#define SPI_NPCS1_PC4_FLAGS   (IOPORT_MODE_MUX_B)
 
#define SPI_NPCS1_PC4_GPIO   (PIO_PC4_IDX)
 
#define SPI_NPCS2_PA10_FLAGS   (IOPORT_MODE_MUX_B)
 
#define SPI_NPCS2_PA10_GPIO   (PIO_PA10_IDX)
 SPI chip select 2 pin definition. More...
 
#define SPI_NPCS2_PA30_FLAGS   (IOPORT_MODE_MUX_B)
 
#define SPI_NPCS2_PA30_GPIO   (PIO_PA30_IDX)
 
#define SPI_NPCS2_PB2_FLAGS   (IOPORT_MODE_MUX_B)
 
#define SPI_NPCS2_PB2_GPIO   (PIO_PB2_IDX)
 
#define SPI_NPCS3_PA22_FLAGS   (IOPORT_MODE_MUX_B)
 
#define SPI_NPCS3_PA22_GPIO   (PIO_PA22_IDX)
 
#define SPI_NPCS3_PA3_FLAGS   (IOPORT_MODE_MUX_B)
 
#define SPI_NPCS3_PA3_GPIO   (PIO_PA3_IDX)
 SPI chip select 3 pin definition. More...
 
#define SPI_NPCS3_PA5_FLAGS   (IOPORT_MODE_MUX_B)
 
#define SPI_NPCS3_PA5_GPIO   (PIO_PA5_IDX)
 
#define SPI_SPCK_FLAGS   (IOPORT_MODE_MUX_A)
 
#define SPI_SPCK_GPIO   (PIO_PA14_IDX)
 SPI SPCK pin definition. More...
 
#define SRAM_BASE_ADDRESS   EBI_CS1_ADDR
 
#define SRAM_BASE_ADDRESS_2ND   EBI_CS3_ADDR
 
#define SRAM_CHIP_SELECT   1
 
#define SRAM_CHIP_SELECT_2ND   3
 
#define TWI0_CLK_FLAGS   (IOPORT_MODE_MUX_A)
 
#define TWI0_CLK_GPIO   PIO_PA4_IDX
 
#define TWI0_DATA_FLAGS   (IOPORT_MODE_MUX_A)
 
#define TWI0_DATA_GPIO   PIO_PA3_IDX
 TWI0 pins definition. More...
 
#define USB_VBUS_FLAGS   (PIO_INPUT | PIO_DEBOUNCE | PIO_IT_EDGE)
 
#define USB_VBUS_PIN   (PIO_PE2_IDX)
 
#define USB_VBUS_PIN_IRQn   (PIOE_IRQn)
 
#define USB_VBUS_PIO_ID   (ID_PIOE)
 
#define USB_VBUS_PIO_MASK   (PIO_PE2)
 
LED0 definitions
#define LED0_GPIO   (PIO_PD22_IDX)
 
#define LED0_FLAGS   (0)
 
#define LED0_ACTIVE_LEVEL   (IOPORT_PIN_LEVEL_LOW)
 
#define LED0_INACTIVE_LEVEL   (IOPORT_PIN_LEVEL_HIGH)
 
#define LED_COUNT   (1)
 
SW0 definitions
#define SW0_PIN   (PIO_PA2_IDX)
 
#define SW0_ACTIVE   (IOPORT_PIN_LEVEL_LOW)
 
#define SW0_INACTIVE   (!SW0_ACTIVE)
 
#define SW0_SUPC_INPUT   2
 
#define PIN_SW0   {PIO_PA2, PIOA, ID_PIOA, PIO_INPUT, PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_RISE_EDGE}
 Wrapper macros for SW0, to ensure common naming across all Xplained Pro boards. More...
 
#define PIN_SW0_MASK   PIO_PA2
 
#define PIN_SW0_PIO   PIOA
 
#define PIN_SW0_ID   ID_PIOA
 
#define PIN_SW0_TYPE   PIO_INPUT
 
#define PIN_SW0_ATTR   (PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_RISE_EDGE)
 
LED #0 definitions

Wrapper macros for LED0, to ensure common naming across all Xplained Pro boards.

#define LED_0_NAME   "LED0 (yellow)"
 
#define LED_0_PIN   LED0_GPIO
 
#define LED_0_ACTIVE   LED0_ACTIVE_LEVEL
 
#define LED_0_INACTIVE   LED0_INACTIVE_LEVEL
 
#define PIN_LED_0   {PIO_PD22, PIOD, ID_PIOD, PIO_OUTPUT_1, PIO_DEFAULT}
 
#define PIN_LED_0_MASK   PIO_PD22
 
#define PIN_LED_0_PIO   PIOD
 
#define PIN_LED_0_ID   ID_PIOD
 
#define PIN_LED_0_TYPE   PIO_OUTPUT_1
 
#define PIN_LED_0_ATTR   PIO_DEFAULT
 

Connections of the AT86RFX transceiver

#define AT86RFX_SPI   SPI
 
#define AT86RFX_RST_PIN   IOPORT_CREATE_PIN(PIOA, 15)
 
#define AT86RFX_IRQ_PIN   IOPORT_CREATE_PIN(PIOA, 11)
 
#define AT86RFX_SLP_PIN   IOPORT_CREATE_PIN(PIOD, 25)
 
#define AT86RFX_SPI_CS   1
 
#define AT86RFX_SPI_CS_PIN   SPI_NPCS1_PB14_GPIO
 
#define AT86RFX_SPI_CS_FLAGS   SPI_NPCS1_PB14_FLAGS
 
#define AT86RFX_SPI_MOSI   IOPORT_CREATE_PIN(PIOA, 13)
 
#define AT86RFX_SPI_MISO   IOPORT_CREATE_PIN(PIOA, 12)
 
#define AT86RFX_SPI_SCK   IOPORT_CREATE_PIN(PIOA, 14)
 
#define AT86RFX_INTC_INIT()
 
#define AT86RFX_ISR()   void at86rfx_isr(uint32_t arg1, uint32_t arg2)
 
#define ENABLE_TRX_IRQ()   pio_enable_pin_interrupt(AT86RFX_IRQ_PIN)
 Enables the transceiver main interrupt. More...
 
#define DISABLE_TRX_IRQ()   pio_disable_pin_interrupt(AT86RFX_IRQ_PIN)
 Disables the transceiver main interrupt. More...
 
#define CLEAR_TRX_IRQ()   NVIC_ClearPendingIRQ(PIOA_IRQn);
 Clears the transceiver main interrupt. More...
 
#define ENTER_TRX_REGION()   pio_disable_pin_interrupt(AT86RFX_IRQ_PIN);
 
#define LEAVE_TRX_REGION()   pio_enable_pin_interrupt(AT86RFX_IRQ_PIN)
 
void at86rfx_isr (uint32_t, uint32_t)
 

#define AT86RFX_INTC_INIT ( )
Value:
pio_set_debounce_filter(PIOA, PIO_PA11, 10);\
pio_handler_set(PIOA, ID_PIOA, PIO_PA11, PIO_IT_HIGH_LEVEL, at86rfx_isr);\
NVIC_EnableIRQ((IRQn_Type) ID_PIOA);\
pio_enable_interrupt(PIOA, PIO_PA11);
void pio_set_debounce_filter(Pio *p_pio, const uint32_t ul_mask, const uint32_t ul_cut_off)
Configure Glitch or Debouncing filter for the specified input(s).
Definition: pio.c:87
Definition: ioport.h:114
uint32_t pmc_enable_periph_clk(uint32_t ul_id)
Enable the specified peripheral clock.
Definition: pmc.c:682
#define AT86RFX_IRQ_PIN
Definition: sam4e_xplained_pro.h:678
void pio_enable_interrupt(Pio *p_pio, const uint32_t ul_mask)
Enable the given interrupt source.
Definition: pio.c:578
void at86rfx_isr(uint32_t, uint32_t)
Definition: ioport.h:77
static void ioport_set_pin_dir(ioport_pin_t pin, enum ioport_direction dir)
Set direction for a single IOPORT pin.
Definition: ioport.h:263
#define PIO_IT_HIGH_LEVEL
Definition: pio.h:106
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.
Definition: ioport.h:350
uint32_t pio_handler_set(Pio *p_pio, uint32_t ul_id, uint32_t ul_mask, uint32_t ul_attr, void(*p_handler)(uint32_t, uint32_t))
Set an interrupt handler for the provided pins.
Definition: pio_handler.c:132
#define AT86RFX_IRQ_PIN   IOPORT_CREATE_PIN(PIOA, 11)
#define AT86RFX_ISR ( )    void at86rfx_isr(uint32_t arg1, uint32_t arg2)
#define AT86RFX_RST_PIN   IOPORT_CREATE_PIN(PIOA, 15)

Referenced by board_init().

#define AT86RFX_SLP_PIN   IOPORT_CREATE_PIN(PIOD, 25)

Referenced by board_init().

#define AT86RFX_SPI   SPI
#define AT86RFX_SPI_CS   1
#define AT86RFX_SPI_CS_FLAGS   SPI_NPCS1_PB14_FLAGS

Referenced by board_init().

#define AT86RFX_SPI_CS_PIN   SPI_NPCS1_PB14_GPIO

Referenced by board_init().

#define AT86RFX_SPI_MISO   IOPORT_CREATE_PIN(PIOA, 12)

Referenced by board_init().

#define AT86RFX_SPI_MOSI   IOPORT_CREATE_PIN(PIOA, 13)

Referenced by board_init().

#define AT86RFX_SPI_SCK   IOPORT_CREATE_PIN(PIOA, 14)

Referenced by board_init().

#define BOARD_FREQ_MAINCK_BYPASS   (12000000U)

Referenced by osc_get_rate().

#define BOARD_FREQ_MAINCK_XTAL   (12000000U)

Referenced by osc_get_rate().

#define BOARD_FREQ_SLCK_BYPASS   (32768U)

Referenced by osc_get_rate().

#define BOARD_FREQ_SLCK_XTAL   (32768U)

Board oscillator settings.

Referenced by osc_get_rate().

#define BOARD_GMAC_PHY_ADDR   0
#define BOARD_MCK   CHIP_FREQ_CPU_MAX

Master clock frequency.

#define BOARD_NAME   "SAM4E-XPRO"

Name of the board.

Referenced by main().

#define BOARD_NAND_CS   0
#define BOARD_NF_ADDRESS_ADDR   0x60200000

Address for transferring address bytes to the nandflash.

#define BOARD_NF_COMMAND_ADDR   0x60400000

Address for transferring command bytes to the nandflash.

#define BOARD_NF_DATA_ADDR   0x60000000

Address for transferring data bytes to the nandflash.

#define BOARD_NORFLASH_ADDR   0x63000000

Address for transferring command bytes to the norflash.

#define BOARD_NORFLASH_DFT_BUS_SIZE   8

Default NOR bus size after power up reset.

#define BOARD_NUM_OF_LED   1

Number of on-board LEDs.

#define BOARD_OSC_STARTUP_US   15625

board main clock xtal statup time

Referenced by osc_enable().

#define BOARD_SD_PINS   PINS_HSMCI

HSMCI pins that shall be configured to access the SD card.

#define BOARD_USB_BMATTRIBUTES   USBConfigurationDescriptor_SELFPOWERED_RWAKEUP

USB attributes configuration descriptor (bus or self powered, remote wakeup)

#define BUTTON_0_ACTIVE   SW0_ACTIVE
#define BUTTON_0_INACTIVE   SW0_INACTIVE
#define BUTTON_0_NAME   "SW0"

Push button #0 definition.

Attributes = pull-up + debounce + interrupt on rising edge.

#define BUTTON_0_PIN   SW0_PIN
#define BUTTON_0_SUPC_INPUT   SW0_SUPC_INPUT
#define CHIP_USB_ENDPOINTS_BANKS (   i)
Value:
((i == 0) ? 1 : \
((i == 1) ? 2 : \
((i == 2) ? 2 : \
((i == 3) ? 1 : \
((i == 4) ? 2 : \
((i == 5) ? 2 : \
((i == 6) ? 2 : \
((i == 7) ? 2 : 0 ))))))))

Endpoints Number of Bank.

#define CHIP_USB_ENDPOINTS_MAXPACKETSIZE (   i)
Value:
((i == 0) ? 64 : \
((i == 1) ? 64 : \
((i == 2) ? 64 : \
((i == 3) ? 64 : \
((i == 4) ? 512 : \
((i == 5) ? 512 : \
((i == 6) ? 64 : \
((i == 7) ? 64 : 0 ))))))))

Endpoints max packet size.

#define CHIP_USB_NUMENDPOINTS   8

Number of USB endpoints.

#define CHIP_USB_PULLUP_INTERNAL

Indicates chip has an internal pull-up.

#define CHIP_USB_UDP

Indicates chip has an UDP Full Speed.

#define CLEAR_TRX_IRQ ( )    NVIC_ClearPendingIRQ(PIOA_IRQn);

Clears the transceiver main interrupt.

#define CONF_NF_BUSWIDTH   8
#define CONF_NF_CYCLE_TIMING
Value:
(SMC_CYCLE_NWE_CYCLE(4) \
| SMC_CYCLE_NRD_CYCLE(7))

Referenced by nand_flash_raw_initialize().

#define CONF_NF_PULSE_TIMING
Value:
(SMC_PULSE_NWE_PULSE(2) \
| SMC_PULSE_NCS_WR_PULSE(3) \
| SMC_PULSE_NRD_PULSE(4) \
| SMC_PULSE_NCS_RD_PULSE(4))

Referenced by nand_flash_raw_initialize().

#define CONF_NF_SETUP_TIMING
Value:
(SMC_SETUP_NWE_SETUP(0) \
| SMC_SETUP_NCS_WR_SETUP(1) \
| SMC_SETUP_NRD_SETUP(0) \
| SMC_SETUP_NCS_RD_SETUP(1))

Referenced by nand_flash_raw_initialize().

#define CONSOLE_UART   UART0
#define CONSOLE_UART_ID   ID_UART0
#define cortexm4

Core definition.

#define DISABLE_TRX_IRQ ( )    pio_disable_pin_interrupt(AT86RFX_IRQ_PIN)

Disables the transceiver main interrupt.

#define EDBG_I2C_MODULE   TWI0

EDBG related define.

#define EDBG_I2C_MODULE_ID   ID_TWI0
#define ENABLE_TRX_IRQ ( )    pio_enable_pin_interrupt(AT86RFX_IRQ_PIN)

Enables the transceiver main interrupt.

#define ENTER_TRX_REGION ( )    pio_disable_pin_interrupt(AT86RFX_IRQ_PIN);
#define GPIO_PUSH_BUTTON_0   BUTTON_0_PIN
#define GPIO_PUSH_BUTTON_1   (PIO_PA2_IDX)

Referenced by board_init().

#define GPIO_PUSH_BUTTON_1_FLAGS   (IOPORT_MODE_PULLUP | IOPORT_MODE_DEBOUNCE)

Referenced by board_init().

#define GPIO_PUSH_BUTTON_1_SENSE   (IOPORT_SENSE_RISING)

Referenced by board_init().

#define LEAVE_TRX_REGION ( )    pio_enable_pin_interrupt(AT86RFX_IRQ_PIN)
#define LED0_ACTIVE_LEVEL   (IOPORT_PIN_LEVEL_LOW)
#define LED0_FLAGS   (0)
#define LED0_GPIO   (PIO_PD22_IDX)

Referenced by board_init().

#define LED0_INACTIVE_LEVEL   (IOPORT_PIN_LEVEL_HIGH)

Referenced by board_init().

#define LED_0_ACTIVE   LED0_ACTIVE_LEVEL
#define LED_0_INACTIVE   LED0_INACTIVE_LEVEL
#define LED_0_NAME   "LED0 (yellow)"
#define LED_0_PIN   LED0_GPIO
#define LED_COUNT   (1)
#define PIN_CAN0_RX_FLAGS   IOPORT_MODE_MUX_A
#define PIN_CAN0_RX_IDX   PIO_PB3_IDX

CAN0 PIN RX.

#define PIN_CAN0_TR_EN_FLAGS   IOPORT_DIR_OUTPUT
#define PIN_CAN0_TR_EN_IDX   PIO_PE1_IDX

CAN0 transceiver PIN EN.

#define PIN_CAN0_TR_RS_FLAGS   IOPORT_DIR_OUTPUT
#define PIN_CAN0_TR_RS_IDX   PIO_PE0_IDX

CAN0 transceiver PIN RS.

#define PIN_CAN0_TX_FLAGS   IOPORT_MODE_MUX_A
#define PIN_CAN0_TX_IDX   PIO_PB2_IDX

CAN0 PIN TX.

#define PIN_CAN1_RX_FLAGS   IOPORT_MODE_MUX_C

Referenced by board_init().

#define PIN_CAN1_RX_IDX   PIO_PC12_IDX

CAN1 PIN RX.

Referenced by board_init().

#define PIN_CAN1_TR_EN_FLAGS   IOPORT_DIR_OUTPUT
#define PIN_CAN1_TR_EN_IDX   PIO_PE3_IDX

CAN1 transceiver PIN EN.

Referenced by board_init().

#define PIN_CAN1_TR_RS_FLAGS   IOPORT_DIR_OUTPUT
#define PIN_CAN1_TR_RS_IDX   PIO_PE2_IDX

CAN1 transceiver PIN RS.

Referenced by board_init().

#define PIN_CAN1_TX_FLAGS   IOPORT_MODE_MUX_C

Referenced by board_init().

#define PIN_CAN1_TX_IDX   PIO_PC15_IDX

CAN1 PIN TX.

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A0   PIO_PC18_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A1   PIO_PC19_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A10   PIO_PC28_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A11   PIO_PC29_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A12   PIO_PC30_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A13   PIO_PC31_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A14   PIO_PA18_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A15   PIO_PA19_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A16   PIO_PA20_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A17   PIO_PA0_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A18   PIO_PA1_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A2   PIO_PC20_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A3   PIO_PC21_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A4   PIO_PC22_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A5   PIO_PC23_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A6   PIO_PC24_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A7   PIO_PC25_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A8   PIO_PC26_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_A9   PIO_PC27_IDX

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_FLAG1   IOPORT_MODE_MUX_A

Referenced by board_init().

#define PIN_EBI_ADDR_BUS_FLAG2   IOPORT_MODE_MUX_C

Referenced by board_init().

#define PIN_EBI_DATA_BUS_D0   PIO_PC0_IDX

EBI Bus pins.

Referenced by board_init().

#define PIN_EBI_DATA_BUS_D1   PIO_PC1_IDX

Referenced by board_init().

#define PIN_EBI_DATA_BUS_D2   PIO_PC2_IDX

Referenced by board_init().

#define PIN_EBI_DATA_BUS_D3   PIO_PC3_IDX

Referenced by board_init().

#define PIN_EBI_DATA_BUS_D4   PIO_PC4_IDX

Referenced by board_init().

#define PIN_EBI_DATA_BUS_D5   PIO_PC5_IDX

Referenced by board_init().

#define PIN_EBI_DATA_BUS_D6   PIO_PC6_IDX

Referenced by board_init().

#define PIN_EBI_DATA_BUS_D7   PIO_PC7_IDX

Referenced by board_init().

#define PIN_EBI_DATA_BUS_FLAGS   IOPORT_MODE_MUX_A

Referenced by board_init().

#define PIN_EBI_NANDALE   (PIO_PC16_IDX)

NandFlash pins definition: ALE.

Referenced by board_init().

#define PIN_EBI_NANDALE_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NANDCLE   (PIO_PC17_IDX)

NandFlash pins definition: CLE.

Referenced by board_init().

#define PIN_EBI_NANDCLE_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NANDIO_0   (PIO_PC0_IDX)

NandFlash pins definition: DATA.

Referenced by board_init().

#define PIN_EBI_NANDIO_0_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NANDIO_1   (PIO_PC1_IDX)

Referenced by board_init().

#define PIN_EBI_NANDIO_1_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NANDIO_2   (PIO_PC2_IDX)

Referenced by board_init().

#define PIN_EBI_NANDIO_2_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NANDIO_3   (PIO_PC3_IDX)

Referenced by board_init().

#define PIN_EBI_NANDIO_3_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NANDIO_4   (PIO_PC4_IDX)

Referenced by board_init().

#define PIN_EBI_NANDIO_4_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NANDIO_5   (PIO_PC5_IDX)

Referenced by board_init().

#define PIN_EBI_NANDIO_5_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NANDIO_6   (PIO_PC6_IDX)

Referenced by board_init().

#define PIN_EBI_NANDIO_6_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NANDIO_7   (PIO_PC7_IDX)

Referenced by board_init().

#define PIN_EBI_NANDIO_7_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NANDOE   (PIO_PC9_IDX)

NandFlash pins definition: OE.

Referenced by board_init().

#define PIN_EBI_NANDOE_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NANDWE   (PIO_PC10_IDX)

NandFlash pins definition: WE.

Referenced by board_init().

#define PIN_EBI_NANDWE_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_EBI_NCS1   PIO_PD18_IDX

Referenced by board_init().

#define PIN_EBI_NCS1_FLAGS   IOPORT_MODE_MUX_A

Referenced by board_init().

#define PIN_EBI_NCS3   PIO_PD19_IDX

Referenced by board_init().

#define PIN_EBI_NCS3_FLAGS   IOPORT_MODE_MUX_A

Referenced by board_init().

#define PIN_EBI_NRD   PIO_PC11_IDX

Referenced by board_init().

#define PIN_EBI_NRD_FLAGS   IOPORT_MODE_MUX_A

Referenced by board_init().

#define PIN_EBI_NWE   PIO_PC8_IDX

Referenced by board_init().

#define PIN_EBI_NWE_FLAGS   IOPORT_MODE_MUX_A

Referenced by board_init().

#define PIN_HSMCI_MCCDA_FLAGS   (IOPORT_MODE_MUX_C)

Referenced by board_init().

#define PIN_HSMCI_MCCDA_GPIO   (PIO_PA28_IDX)

HSMCI MCCDA pin definition.

Referenced by board_init().

#define PIN_HSMCI_MCCK_FLAGS   (IOPORT_MODE_MUX_C)

Referenced by board_init().

#define PIN_HSMCI_MCCK_GPIO   (PIO_PA29_IDX)

HSMCI MCCK pin definition.

Referenced by board_init().

#define PIN_HSMCI_MCDA0_FLAGS   (IOPORT_MODE_MUX_C)

Referenced by board_init().

#define PIN_HSMCI_MCDA0_GPIO   (PIO_PA30_IDX)

HSMCI MCDA0 pin definition.

Referenced by board_init().

#define PIN_HSMCI_MCDA1_FLAGS   (IOPORT_MODE_MUX_C)

Referenced by board_init().

#define PIN_HSMCI_MCDA1_GPIO   (PIO_PA31_IDX)

HSMCI MCDA1 pin definition.

Referenced by board_init().

#define PIN_HSMCI_MCDA2_FLAGS   (IOPORT_MODE_MUX_C)

Referenced by board_init().

#define PIN_HSMCI_MCDA2_GPIO   (PIO_PA26_IDX)

HSMCI MCDA2 pin definition.

Referenced by board_init().

#define PIN_HSMCI_MCDA3_FLAGS   (IOPORT_MODE_MUX_C)

Referenced by board_init().

#define PIN_HSMCI_MCDA3_GPIO   (PIO_PA27_IDX)

HSMCI MCDA3 pin definition.

Referenced by board_init().

#define PIN_KSZ8051MNL_COL_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_COL_IDX   PIO_PD13_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_CRS_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_CRS_IDX   PIO_PD10_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_INTRP_IDX   PIO_PD28_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_MDC_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_MDC_IDX   PIO_PD8_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_MDIO_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_MDIO_IDX   PIO_PD9_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_RXC_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_RXC_IDX   PIO_PD14_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_RXD0_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_RXD0_IDX   PIO_PD5_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_RXD1_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_RXD1_IDX   PIO_PD6_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_RXD2_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_RXD2_IDX   PIO_PD11_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_RXD3_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_RXD3_IDX   PIO_PD12_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_RXDV_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_RXDV_IDX   PIO_PD4_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_RXER_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_RXER_IDX   PIO_PD7_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_TXC_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_TXC_IDX   PIO_PD0_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_TXD0_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_TXD0_IDX   PIO_PD2_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_TXD1_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_TXD1_IDX   PIO_PD3_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_TXD2_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_TXD2_IDX   PIO_PD15_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_TXD3_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_TXD3_IDX   PIO_PD16_IDX

Referenced by board_init().

#define PIN_KSZ8051MNL_TXEN_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_KSZ8051MNL_TXEN_IDX   PIO_PD1_IDX

Referenced by board_init().

#define PIN_LED_0   {PIO_PD22, PIOD, ID_PIOD, PIO_OUTPUT_1, PIO_DEFAULT}
#define PIN_LED_0_ATTR   PIO_DEFAULT
#define PIN_LED_0_ID   ID_PIOD
#define PIN_LED_0_MASK   PIO_PD22
#define PIN_LED_0_PIO   PIOD
#define PIN_LED_0_TYPE   PIO_OUTPUT_1
#define PIN_NF_CE_IDX   (PIO_PC14_IDX)

Nandflash chip enable pin definition.

Referenced by board_init(), and nand_flash_raw_initialize().

#define PIN_NF_RB_IDX   (PIO_PB12_IDX)

Nandflash ready/busy pin definition.

Referenced by board_init(), nand_flash_raw_initialize(), and wait_ready().

#define PIN_PCK0   (PIO_PA6_IDX)

PCK0 pin definition (PA6)

#define PIN_PCK0_ATTR   PIO_DEFAULT
#define PIN_PCK0_FLAGS   (IOPORT_MODE_MUX_B)
#define PIN_PCK0_ID   ID_PIOA
#define PIN_PCK0_MASK   PIO_PA6B_PCK0
#define PIN_PCK0_MUX   (IOPORT_MODE_MUX_B)
#define PIN_PCK0_PIO   PIOA
#define PIN_PCK0_PORT   IOPORT_PIOA
#define PIN_PCK0_TYPE   PIO_PERIPH_B
#define PIN_PUSHBUTTON_1
Value:
{PIO_PA2, PIOA, ID_PIOA, PIO_INPUT, \
#define PIO_PULLUP
Definition: pio.h:86
#define PIO_IT_RISE_EDGE
Definition: pio.h:110
#define PIO_DEBOUNCE
Definition: pio.h:93
Definition: pio.h:78
#define PIN_PUSHBUTTON_1_ATTR   (PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_RISE_EDGE)
#define PIN_PUSHBUTTON_1_ID   ID_PIOA
#define PIN_PUSHBUTTON_1_IRQn   PIOA_IRQn
#define PIN_PUSHBUTTON_1_MASK   PIO_PA2
#define PIN_PUSHBUTTON_1_PIO   PIOA
#define PIN_PUSHBUTTON_1_TYPE   PIO_INPUT
#define PIN_PWM_LED0_CHANNEL   PWM_CHANNEL_2
#define PIN_PWM_LED0_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PIN_PWM_LED0_GPIO   PIO_PD22_IDX

PWM LED0 pin definitions.

Referenced by board_init().

#define PIN_SW0   {PIO_PA2, PIOA, ID_PIOA, PIO_INPUT, PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_RISE_EDGE}

Wrapper macros for SW0, to ensure common naming across all Xplained Pro boards.

#define PIN_SW0_ATTR   (PIO_PULLUP | PIO_DEBOUNCE | PIO_IT_RISE_EDGE)
#define PIN_SW0_ID   ID_PIOA
#define PIN_SW0_MASK   PIO_PA2
#define PIN_SW0_PIO   PIOA
#define PIN_SW0_TYPE   PIO_INPUT
#define PIN_TC0_TIOA0   (PIO_PA0_IDX)
#define PIN_TC0_TIOA0_FLAGS   (IOPORT_MODE_MUX_B)
#define PIN_TC0_TIOA0_MUX   (IOPORT_MODE_MUX_B)
#define PIN_TC0_TIOA1   (PIO_PA15_IDX)
#define PIN_TC0_TIOA1_ATTR   PIO_DEFAULT
#define PIN_TC0_TIOA1_FLAGS   (IOPORT_MODE_MUX_B)
#define PIN_TC0_TIOA1_ID   ID_PIOA
#define PIN_TC0_TIOA1_MASK   PIO_PA15
#define PIN_TC0_TIOA1_MUX   (IOPORT_MODE_MUX_B)
#define PIN_TC0_TIOA1_PIO   PIOA
#define PIN_TC0_TIOA1_TYPE   PIO_PERIPH_B
#define PIN_TC0_TIOA2   (PIO_PA26_IDX)
#define PIN_TC0_TIOA2_ATTR   PIO_DEFAULT
#define PIN_TC0_TIOA2_FLAGS   (IOPORT_MODE_MUX_B)
#define PIN_TC0_TIOA2_ID   ID_PIOA
#define PIN_TC0_TIOA2_MASK   PIO_PA26
#define PIN_TC0_TIOA2_MUX   (IOPORT_MODE_MUX_B)
#define PIN_TC0_TIOA2_PIO   PIOA
#define PIN_TC0_TIOA2_TYPE   PIO_PERIPH_B
#define PIN_USART0_CTS
Value:
{PIO_PB2C_CTS0, PIOB, ID_PIOB, PIO_PERIPH_C, \
#define PIO_DEFAULT
Definition: pio.h:84

USART0 pin CTS.

#define PIN_USART0_CTS_FLAGS   (IOPORT_MODE_MUX_C)
#define PIN_USART0_CTS_IDX   (PIO_PB2_IDX)
#define PIN_USART0_RTS
Value:
{PIO_PB3C_RTS0, PIOB, ID_PIOB, PIO_PERIPH_C, \
#define PIO_DEFAULT
Definition: pio.h:84

USART0 pin RTS.

#define PIN_USART0_RTS_FLAGS   (IOPORT_MODE_MUX_C)
#define PIN_USART0_RTS_IDX   (PIO_PB3_IDX)
#define PIN_USART0_RXD
Value:
{PIO_PB0C_RXD0, PIOB, ID_PIOB, PIO_PERIPH_C, \
#define PIO_DEFAULT
Definition: pio.h:84

USART0 pin RX.

#define PIN_USART0_RXD_FLAGS   (IOPORT_MODE_MUX_C)
#define PIN_USART0_RXD_IDX   (PIO_PB0_IDX)
#define PIN_USART0_SCK
Value:
{PIO_PB13C_SCK0, PIOB, ID_PIOB, PIO_PERIPH_C, \
#define PIO_DEFAULT
Definition: pio.h:84

USART0 pin SCK.

#define PIN_USART0_SCK_FLAGS   (IOPORT_MODE_MUX_C)
#define PIN_USART0_SCK_IDX   (PIO_PB13_IDX)
#define PIN_USART0_TXD
Value:
{PIO_PB1C_TXD0, PIOB, ID_PIOB, PIO_PERIPH_C, \
#define PIO_DEFAULT
Definition: pio.h:84

USART0 pin TX.

#define PIN_USART0_TXD_FLAGS   (IOPORT_MODE_MUX_C)
#define PIN_USART0_TXD_IDX   (PIO_PB1_IDX)
#define PIN_USART1_CTS
Value:
{PIO_PA25A_CTS1, PIOA, ID_PIOA, PIO_PERIPH_A, \
Definition: pio.h:72
#define PIO_DEFAULT
Definition: pio.h:84

USART1 pin CTS.

#define PIN_USART1_CTS_FLAGS   (IOPORT_MODE_MUX_A)
#define PIN_USART1_CTS_IDX   (PIO_PA25_IDX)
#define PIN_USART1_EN
Value:
{PIO_PA23, PIOA, ID_PIOA, PIO_OUTPUT_0, \
#define PIO_DEFAULT
Definition: pio.h:84
Definition: pio.h:79

USART1 pin ENABLE.

#define PIN_USART1_EN_ACTIVE_LEVEL   IOPORT_PIN_LEVEL_LOW
#define PIN_USART1_EN_FLAGS   (0)
#define PIN_USART1_EN_IDX   (PIO_PA23_IDX)
#define PIN_USART1_EN_INACTIVE_LEVEL   IOPORT_PIN_LEVEL_HIGH
#define PIN_USART1_RTS
Value:
{PIO_PA24A_RTS1, PIOA, ID_PIOA, PIO_PERIPH_A, \
Definition: pio.h:72
#define PIO_DEFAULT
Definition: pio.h:84

USART1 pin RTS.

#define PIN_USART1_RTS_FLAGS   (IOPORT_MODE_MUX_A)
#define PIN_USART1_RTS_IDX   (PIO_PA24_IDX)
#define PIN_USART1_RXD
Value:
{PIO_PA21A_RXD1, PIOA, ID_PIOA, PIO_PERIPH_A, \
Definition: pio.h:72
#define PIO_DEFAULT
Definition: pio.h:84

USART1 pin RX.

#define PIN_USART1_RXD_FLAGS   (IOPORT_MODE_MUX_A)
#define PIN_USART1_RXD_IDX   (PIO_PA21_IDX)
#define PIN_USART1_SCK
Value:
{PIO_PA23A_SCK1, PIOA, ID_PIOA, PIO_PERIPH_A, \
Definition: pio.h:72
#define PIO_DEFAULT
Definition: pio.h:84

USART1 pin SCK.

#define PIN_USART1_SCK_FLAGS   (IOPORT_MODE_MUX_A)
#define PIN_USART1_SCK_IDX   (PIO_PA23_IDX)
#define PIN_USART1_TXD
Value:
{PIO_PA22A_TXD1, PIOA, ID_PIOA, PIO_PERIPH_A, \
Definition: pio.h:72
#define PIO_DEFAULT
Definition: pio.h:84

USART1 pin TX.

#define PIN_USART1_TXD_FLAGS   (IOPORT_MODE_MUX_A)
#define PIN_USART1_TXD_IDX   (PIO_PA22_IDX)
#define PIN_USB_DM   {PIO_PB10}

USB D- pin (System function)

#define PIN_USB_DP   {PIO_PB11}

USB D+ pin (System function)

#define PIN_USB_VBUS   {PIO_PE2, PIOE, ID_PIOE, PIO_INPUT, PIO_PULLUP}

USB VBus monitoring pin definition.

#define PINS_HSMCI   {0x3fUL << 26, PIOA, ID_PIOA, PIO_PERIPH_C, PIO_PULLUP}
#define PINS_PUSHBUTTONS   {PIN_PUSHBUTTON_1}

List of all push button definitions.

#define PINS_UART0   (PIO_PA9A_URXD0 | PIO_PA10A_UTXD0)

UART0 pins (UTXD0 and URXD0) definitions, PA10,9.

Referenced by board_init().

#define PINS_UART0_ATTR   PIO_DEFAULT
#define PINS_UART0_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define PINS_UART0_ID   ID_PIOA
#define PINS_UART0_MASK   (PIO_PA9A_URXD0 | PIO_PA10A_UTXD0)
#define PINS_UART0_PIO   PIOA
#define PINS_UART0_PORT   IOPORT_PIOA

Referenced by board_init().

#define PINS_UART0_TYPE   PIO_PERIPH_A
#define PUSHBUTTON_1_NAME   "SW0"
#define PUSHBUTTON_1_WKUP_FSTT   (PMC_FSMR_FSTT2)
#define PUSHBUTTON_1_WKUP_LINE   (2)
#define sam4e

Family definition (already defined)

#define sam4expro

Board definition.

#define SD_MMC_HSMCI_MEM_CNT   1

HSMCI pins definition.

Number of slot connected on HSMCI interface

#define SD_MMC_HSMCI_SLOT_0_SIZE   4
#define SPI_MISO_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define SPI_MISO_GPIO   (PIO_PA12_IDX)

SPI MISO pin definition.

#define SPI_MOSI_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define SPI_MOSI_GPIO   (PIO_PA13_IDX)

SPI MOSI pin definition.

#define SPI_NPCS0_FLAGS   (IOPORT_MODE_MUX_A)
#define SPI_NPCS0_GPIO   (PIO_PA11_IDX)

SPI chip select 0 pin definition.

(Only one configuration is possible)

#define SPI_NPCS1_PA31_FLAGS   (IOPORT_MODE_MUX_A)
#define SPI_NPCS1_PA31_GPIO   (PIO_PA31_IDX)
#define SPI_NPCS1_PA9_FLAGS   (IOPORT_MODE_MUX_B)
#define SPI_NPCS1_PA9_GPIO   (PIO_PA9_IDX)

SPI chip select 1 pin definition.

(multiple configurations are possible)

#define SPI_NPCS1_PB14_FLAGS   (IOPORT_MODE_MUX_A)
#define SPI_NPCS1_PB14_GPIO   (PIO_PB14_IDX)
#define SPI_NPCS1_PC4_FLAGS   (IOPORT_MODE_MUX_B)
#define SPI_NPCS1_PC4_GPIO   (PIO_PC4_IDX)
#define SPI_NPCS2_PA10_FLAGS   (IOPORT_MODE_MUX_B)
#define SPI_NPCS2_PA10_GPIO   (PIO_PA10_IDX)

SPI chip select 2 pin definition.

(multiple configurations are possible)

#define SPI_NPCS2_PA30_FLAGS   (IOPORT_MODE_MUX_B)
#define SPI_NPCS2_PA30_GPIO   (PIO_PA30_IDX)
#define SPI_NPCS2_PB2_FLAGS   (IOPORT_MODE_MUX_B)
#define SPI_NPCS2_PB2_GPIO   (PIO_PB2_IDX)
#define SPI_NPCS3_PA22_FLAGS   (IOPORT_MODE_MUX_B)
#define SPI_NPCS3_PA22_GPIO   (PIO_PA22_IDX)
#define SPI_NPCS3_PA3_FLAGS   (IOPORT_MODE_MUX_B)
#define SPI_NPCS3_PA3_GPIO   (PIO_PA3_IDX)

SPI chip select 3 pin definition.

(multiple configurations are possible)

#define SPI_NPCS3_PA5_FLAGS   (IOPORT_MODE_MUX_B)
#define SPI_NPCS3_PA5_GPIO   (PIO_PA5_IDX)
#define SPI_SPCK_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define SPI_SPCK_GPIO   (PIO_PA14_IDX)

SPI SPCK pin definition.

#define SRAM_BASE_ADDRESS   EBI_CS1_ADDR
#define SRAM_BASE_ADDRESS_2ND   EBI_CS3_ADDR
#define SRAM_CHIP_SELECT   1
#define SRAM_CHIP_SELECT_2ND   3
#define SW0_ACTIVE   (IOPORT_PIN_LEVEL_LOW)
#define SW0_INACTIVE   (!SW0_ACTIVE)
#define SW0_PIN   (PIO_PA2_IDX)
#define SW0_SUPC_INPUT   2
#define TWI0_CLK_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define TWI0_CLK_GPIO   PIO_PA4_IDX

Referenced by board_init().

#define TWI0_DATA_FLAGS   (IOPORT_MODE_MUX_A)

Referenced by board_init().

#define TWI0_DATA_GPIO   PIO_PA3_IDX

TWI0 pins definition.

Referenced by board_init().

#define USB_VBUS_FLAGS   (PIO_INPUT | PIO_DEBOUNCE | PIO_IT_EDGE)

Referenced by board_init().

#define USB_VBUS_PIN   (PIO_PE2_IDX)

Referenced by board_init().

#define USB_VBUS_PIN_IRQn   (PIOE_IRQn)
#define USB_VBUS_PIO_ID   (ID_PIOE)
#define USB_VBUS_PIO_MASK   (PIO_PE2)

void at86rfx_isr ( uint32_t  ,
uint32_t   
)