mbed library sources. Supersedes mbed-src.

Fork of mbed-dev by mbed official

Committer:
mbed_official
Date:
Wed Nov 04 16:30:11 2015 +0000
Revision:
15:a81a8d6c1dfe
Synchronized with git revision 46af745ef4405614c3fa49abbd9a706a362ea514

Full URL: https://github.com/mbedmicro/mbed/commit/46af745ef4405614c3fa49abbd9a706a362ea514/

Renamed TARGET_SAM_CortexM0+ to TARGET_SAM_CortexM0P for compatiblity with online compiler

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 15:a81a8d6c1dfe 1 #ifndef SAMD21_XPLAINED_PRO_H_INCLUDED
mbed_official 15:a81a8d6c1dfe 2 #define SAMD21_XPLAINED_PRO_H_INCLUDED
mbed_official 15:a81a8d6c1dfe 3
mbed_official 15:a81a8d6c1dfe 4 #include <conf_board.h>
mbed_official 15:a81a8d6c1dfe 5 #include <compiler.h>
mbed_official 15:a81a8d6c1dfe 6
mbed_official 15:a81a8d6c1dfe 7 #ifdef __cplusplus
mbed_official 15:a81a8d6c1dfe 8 extern "C" {
mbed_official 15:a81a8d6c1dfe 9 #endif
mbed_official 15:a81a8d6c1dfe 10
mbed_official 15:a81a8d6c1dfe 11 /**
mbed_official 15:a81a8d6c1dfe 12 * \ingroup group_common_boards
mbed_official 15:a81a8d6c1dfe 13 * \defgroup samd21_xplained_pro_group SAM D21 Xplained Pro board
mbed_official 15:a81a8d6c1dfe 14 *
mbed_official 15:a81a8d6c1dfe 15 * @{
mbed_official 15:a81a8d6c1dfe 16 */
mbed_official 15:a81a8d6c1dfe 17
mbed_official 15:a81a8d6c1dfe 18 void system_board_init(void);
mbed_official 15:a81a8d6c1dfe 19
mbed_official 15:a81a8d6c1dfe 20 /**
mbed_official 15:a81a8d6c1dfe 21 * \defgroup samd21_xplained_pro_features_group Features
mbed_official 15:a81a8d6c1dfe 22 *
mbed_official 15:a81a8d6c1dfe 23 * Symbols that describe features and capabilities of the board.
mbed_official 15:a81a8d6c1dfe 24 *
mbed_official 15:a81a8d6c1dfe 25 * @{
mbed_official 15:a81a8d6c1dfe 26 */
mbed_official 15:a81a8d6c1dfe 27
mbed_official 15:a81a8d6c1dfe 28 /** Name string macro */
mbed_official 15:a81a8d6c1dfe 29 #define BOARD_NAME "SAMD21_XPLAINED_PRO"
mbed_official 15:a81a8d6c1dfe 30
mbed_official 15:a81a8d6c1dfe 31 /** \name Resonator definitions
mbed_official 15:a81a8d6c1dfe 32 * @{ */
mbed_official 15:a81a8d6c1dfe 33 #define BOARD_FREQ_SLCK_XTAL (32768U)
mbed_official 15:a81a8d6c1dfe 34 #define BOARD_FREQ_SLCK_BYPASS (32768U)
mbed_official 15:a81a8d6c1dfe 35 #define BOARD_FREQ_MAINCK_XTAL 0 /* Not Mounted */
mbed_official 15:a81a8d6c1dfe 36 #define BOARD_FREQ_MAINCK_BYPASS 0 /* Not Mounted */
mbed_official 15:a81a8d6c1dfe 37 #define BOARD_MCK CHIP_FREQ_CPU_MAX
mbed_official 15:a81a8d6c1dfe 38 #define BOARD_OSC_STARTUP_US 15625
mbed_official 15:a81a8d6c1dfe 39 /** @} */
mbed_official 15:a81a8d6c1dfe 40
mbed_official 15:a81a8d6c1dfe 41 /** \name LED0 definitions
mbed_official 15:a81a8d6c1dfe 42 * @{ */
mbed_official 15:a81a8d6c1dfe 43 #define LED0_PIN PIN_PB30
mbed_official 15:a81a8d6c1dfe 44 #define LED0_ACTIVE false
mbed_official 15:a81a8d6c1dfe 45 #define LED0_INACTIVE !LED0_ACTIVE
mbed_official 15:a81a8d6c1dfe 46 /** @} */
mbed_official 15:a81a8d6c1dfe 47
mbed_official 15:a81a8d6c1dfe 48 /** \name SW0 definitions
mbed_official 15:a81a8d6c1dfe 49 * @{ */
mbed_official 15:a81a8d6c1dfe 50 #define SW0_PIN PIN_PA15
mbed_official 15:a81a8d6c1dfe 51 #define SW0_ACTIVE false
mbed_official 15:a81a8d6c1dfe 52 #define SW0_INACTIVE !SW0_ACTIVE
mbed_official 15:a81a8d6c1dfe 53 #define SW0_EIC_PIN PIN_PA15A_EIC_EXTINT15
mbed_official 15:a81a8d6c1dfe 54 #define SW0_EIC_MUX MUX_PA15A_EIC_EXTINT15
mbed_official 15:a81a8d6c1dfe 55 #define SW0_EIC_PINMUX PINMUX_PA15A_EIC_EXTINT15
mbed_official 15:a81a8d6c1dfe 56 #define SW0_EIC_LINE 15
mbed_official 15:a81a8d6c1dfe 57 /** @} */
mbed_official 15:a81a8d6c1dfe 58
mbed_official 15:a81a8d6c1dfe 59 /**
mbed_official 15:a81a8d6c1dfe 60 * \name LED #0 definitions
mbed_official 15:a81a8d6c1dfe 61 *
mbed_official 15:a81a8d6c1dfe 62 * Wrapper macros for LED0, to ensure common naming across all Xplained Pro
mbed_official 15:a81a8d6c1dfe 63 * boards.
mbed_official 15:a81a8d6c1dfe 64 *
mbed_official 15:a81a8d6c1dfe 65 * @{ */
mbed_official 15:a81a8d6c1dfe 66 #define LED_0_NAME "LED0 (yellow)"
mbed_official 15:a81a8d6c1dfe 67 #define LED_0_PIN LED0_PIN
mbed_official 15:a81a8d6c1dfe 68 #define LED_0_ACTIVE LED0_ACTIVE
mbed_official 15:a81a8d6c1dfe 69 #define LED_0_INACTIVE LED0_INACTIVE
mbed_official 15:a81a8d6c1dfe 70 #define LED0_GPIO LED0_PIN
mbed_official 15:a81a8d6c1dfe 71 #define LED0 LED0_PIN
mbed_official 15:a81a8d6c1dfe 72
mbed_official 15:a81a8d6c1dfe 73 #define LED_0_PWM4CTRL_MODULE TCC0
mbed_official 15:a81a8d6c1dfe 74 #define LED_0_PWM4CTRL_CHANNEL 0
mbed_official 15:a81a8d6c1dfe 75 #define LED_0_PWM4CTRL_OUTPUT 0
mbed_official 15:a81a8d6c1dfe 76 #define LED_0_PWM4CTRL_PIN PIN_PB30E_TCC0_WO0
mbed_official 15:a81a8d6c1dfe 77 #define LED_0_PWM4CTRL_MUX MUX_PB30E_TCC0_WO0
mbed_official 15:a81a8d6c1dfe 78 #define LED_0_PWM4CTRL_PINMUX PINMUX_PB30E_TCC0_WO0
mbed_official 15:a81a8d6c1dfe 79 /** @} */
mbed_official 15:a81a8d6c1dfe 80
mbed_official 15:a81a8d6c1dfe 81 /** Number of on-board LEDs */
mbed_official 15:a81a8d6c1dfe 82 #define LED_COUNT 1
mbed_official 15:a81a8d6c1dfe 83
mbed_official 15:a81a8d6c1dfe 84 /**
mbed_official 15:a81a8d6c1dfe 85 * \name Serialflash definitions
mbed_official 15:a81a8d6c1dfe 86 *
mbed_official 15:a81a8d6c1dfe 87 * On board Serialflash definitions.
mbed_official 15:a81a8d6c1dfe 88 *
mbed_official 15:a81a8d6c1dfe 89 * @{ */
mbed_official 15:a81a8d6c1dfe 90 #define SERIALFLASH_SPI_MODULE SERCOM5
mbed_official 15:a81a8d6c1dfe 91 #define SERIALFLASH_SPI_MUX_SETTING SPI_SIGNAL_MUX_SETTING_E
mbed_official 15:a81a8d6c1dfe 92 #define SERIALFLASH_SPI_PINMUX_PAD0 PINMUX_PB16C_SERCOM5_PAD0
mbed_official 15:a81a8d6c1dfe 93 #define SERIALFLASH_SPI_PINMUX_PAD1 PINMUX_UNUSED
mbed_official 15:a81a8d6c1dfe 94 #define SERIALFLASH_SPI_PINMUX_PAD2 PINMUX_PB22D_SERCOM5_PAD2
mbed_official 15:a81a8d6c1dfe 95 #define SERIALFLASH_SPI_PINMUX_PAD3 PINMUX_PB23D_SERCOM5_PAD3
mbed_official 15:a81a8d6c1dfe 96 #define SERIALFLASH_SPI_CS PIN_PA13
mbed_official 15:a81a8d6c1dfe 97 /** @} */
mbed_official 15:a81a8d6c1dfe 98
mbed_official 15:a81a8d6c1dfe 99 /**
mbed_official 15:a81a8d6c1dfe 100 * \name Button #0 definitions
mbed_official 15:a81a8d6c1dfe 101 *
mbed_official 15:a81a8d6c1dfe 102 * Wrapper macros for SW0, to ensure common naming across all Xplained Pro
mbed_official 15:a81a8d6c1dfe 103 * boards.
mbed_official 15:a81a8d6c1dfe 104 *
mbed_official 15:a81a8d6c1dfe 105 * @{ */
mbed_official 15:a81a8d6c1dfe 106 #define BUTTON_0_NAME "SW0"
mbed_official 15:a81a8d6c1dfe 107 #define BUTTON_0_PIN SW0_PIN
mbed_official 15:a81a8d6c1dfe 108 #define BUTTON_0_ACTIVE SW0_ACTIVE
mbed_official 15:a81a8d6c1dfe 109 #define BUTTON_0_INACTIVE SW0_INACTIVE
mbed_official 15:a81a8d6c1dfe 110 #define BUTTON_0_EIC_PIN SW0_EIC_PIN
mbed_official 15:a81a8d6c1dfe 111 #define BUTTON_0_EIC_MUX SW0_EIC_MUX
mbed_official 15:a81a8d6c1dfe 112 #define BUTTON_0_EIC_PINMUX SW0_EIC_PINMUX
mbed_official 15:a81a8d6c1dfe 113 #define BUTTON_0_EIC_LINE SW0_EIC_LINE
mbed_official 15:a81a8d6c1dfe 114 /** @} */
mbed_official 15:a81a8d6c1dfe 115
mbed_official 15:a81a8d6c1dfe 116 /** Number of on-board buttons */
mbed_official 15:a81a8d6c1dfe 117 #define BUTTON_COUNT 1
mbed_official 15:a81a8d6c1dfe 118
mbed_official 15:a81a8d6c1dfe 119 /** \name Extension header #1 pin definitions
mbed_official 15:a81a8d6c1dfe 120 * @{
mbed_official 15:a81a8d6c1dfe 121 */
mbed_official 15:a81a8d6c1dfe 122 #define EXT1_PIN_3 PIN_PB00
mbed_official 15:a81a8d6c1dfe 123 #define EXT1_PIN_4 PIN_PB01
mbed_official 15:a81a8d6c1dfe 124 #define EXT1_PIN_5 PIN_PB06
mbed_official 15:a81a8d6c1dfe 125 #define EXT1_PIN_6 PIN_PB07
mbed_official 15:a81a8d6c1dfe 126 #define EXT1_PIN_7 PIN_PB02
mbed_official 15:a81a8d6c1dfe 127 #define EXT1_PIN_8 PIN_PB03
mbed_official 15:a81a8d6c1dfe 128 #define EXT1_PIN_9 PIN_PB04
mbed_official 15:a81a8d6c1dfe 129 #define EXT1_PIN_10 PIN_PB05
mbed_official 15:a81a8d6c1dfe 130 #define EXT1_PIN_11 PIN_PA08
mbed_official 15:a81a8d6c1dfe 131 #define EXT1_PIN_12 PIN_PA09
mbed_official 15:a81a8d6c1dfe 132 #define EXT1_PIN_13 PIN_PB09
mbed_official 15:a81a8d6c1dfe 133 #define EXT1_PIN_14 PIN_PB08
mbed_official 15:a81a8d6c1dfe 134 #define EXT1_PIN_15 PIN_PA05
mbed_official 15:a81a8d6c1dfe 135 #define EXT1_PIN_16 PIN_PA06
mbed_official 15:a81a8d6c1dfe 136 #define EXT1_PIN_17 PIN_PA04
mbed_official 15:a81a8d6c1dfe 137 #define EXT1_PIN_18 PIN_PA07
mbed_official 15:a81a8d6c1dfe 138 /** @} */
mbed_official 15:a81a8d6c1dfe 139
mbed_official 15:a81a8d6c1dfe 140 /** \name Extension header #1 pin definitions by function
mbed_official 15:a81a8d6c1dfe 141 * @{
mbed_official 15:a81a8d6c1dfe 142 */
mbed_official 15:a81a8d6c1dfe 143 #define EXT1_PIN_ADC_0 EXT1_PIN_3
mbed_official 15:a81a8d6c1dfe 144 #define EXT1_PIN_ADC_1 EXT1_PIN_4
mbed_official 15:a81a8d6c1dfe 145 #define EXT1_PIN_GPIO_0 EXT1_PIN_5
mbed_official 15:a81a8d6c1dfe 146 #define EXT1_PIN_GPIO_1 EXT1_PIN_6
mbed_official 15:a81a8d6c1dfe 147 #define EXT1_PIN_PWM_0 EXT1_PIN_7
mbed_official 15:a81a8d6c1dfe 148 #define EXT1_PIN_PWM_1 EXT1_PIN_8
mbed_official 15:a81a8d6c1dfe 149 #define EXT1_PIN_IRQ EXT1_PIN_9
mbed_official 15:a81a8d6c1dfe 150 #define EXT1_PIN_I2C_SDA EXT1_PIN_11
mbed_official 15:a81a8d6c1dfe 151 #define EXT1_PIN_I2C_SCL EXT1_PIN_12
mbed_official 15:a81a8d6c1dfe 152 #define EXT1_PIN_UART_RX EXT1_PIN_13
mbed_official 15:a81a8d6c1dfe 153 #define EXT1_PIN_UART_TX EXT1_PIN_14
mbed_official 15:a81a8d6c1dfe 154 #define EXT1_PIN_SPI_SS_1 EXT1_PIN_10
mbed_official 15:a81a8d6c1dfe 155 #define EXT1_PIN_SPI_SS_0 EXT1_PIN_15
mbed_official 15:a81a8d6c1dfe 156 #define EXT1_PIN_SPI_MOSI EXT1_PIN_16
mbed_official 15:a81a8d6c1dfe 157 #define EXT1_PIN_SPI_MISO EXT1_PIN_17
mbed_official 15:a81a8d6c1dfe 158 #define EXT1_PIN_SPI_SCK EXT1_PIN_18
mbed_official 15:a81a8d6c1dfe 159 /** @} */
mbed_official 15:a81a8d6c1dfe 160
mbed_official 15:a81a8d6c1dfe 161 /** \name Extension header #1 ADC definitions
mbed_official 15:a81a8d6c1dfe 162 * @{
mbed_official 15:a81a8d6c1dfe 163 */
mbed_official 15:a81a8d6c1dfe 164 #define EXT1_ADC_MODULE ADC
mbed_official 15:a81a8d6c1dfe 165 #define EXT1_ADC_0_CHANNEL 8
mbed_official 15:a81a8d6c1dfe 166 #define EXT1_ADC_0_PIN PIN_PB00B_ADC_AIN8
mbed_official 15:a81a8d6c1dfe 167 #define EXT1_ADC_0_MUX MUX_PB00B_ADC_AIN8
mbed_official 15:a81a8d6c1dfe 168 #define EXT1_ADC_0_PINMUX PINMUX_PB00B_ADC_AIN8
mbed_official 15:a81a8d6c1dfe 169 #define EXT1_ADC_1_CHANNEL 9
mbed_official 15:a81a8d6c1dfe 170 #define EXT1_ADC_1_PIN PIN_PB01B_ADC_AIN9
mbed_official 15:a81a8d6c1dfe 171 #define EXT1_ADC_1_MUX MUX_PB01B_ADC_AIN9
mbed_official 15:a81a8d6c1dfe 172 #define EXT1_ADC_1_PINMUX PINMUX_PB01B_ADC_AIN9
mbed_official 15:a81a8d6c1dfe 173 /** @} */
mbed_official 15:a81a8d6c1dfe 174
mbed_official 15:a81a8d6c1dfe 175 /** \name Extension header #1 PWM definitions
mbed_official 15:a81a8d6c1dfe 176 * @{
mbed_official 15:a81a8d6c1dfe 177 */
mbed_official 15:a81a8d6c1dfe 178 #define EXT1_PWM_MODULE TC6
mbed_official 15:a81a8d6c1dfe 179 #define EXT1_PWM_0_CHANNEL 0
mbed_official 15:a81a8d6c1dfe 180 #define EXT1_PWM_0_PIN PIN_PB02E_TC6_WO0
mbed_official 15:a81a8d6c1dfe 181 #define EXT1_PWM_0_MUX MUX_PB02E_TC6_WO0
mbed_official 15:a81a8d6c1dfe 182 #define EXT1_PWM_0_PINMUX PINMUX_PB02E_TC6_WO0
mbed_official 15:a81a8d6c1dfe 183 #define EXT1_PWM_1_CHANNEL 1
mbed_official 15:a81a8d6c1dfe 184 #define EXT1_PWM_1_PIN PIN_PB03E_TC6_WO1
mbed_official 15:a81a8d6c1dfe 185 #define EXT1_PWM_1_MUX MUX_PB03E_TC6_WO1
mbed_official 15:a81a8d6c1dfe 186 #define EXT1_PWM_1_PINMUX PINMUX_PB03E_TC6_WO1
mbed_official 15:a81a8d6c1dfe 187 /** @} */
mbed_official 15:a81a8d6c1dfe 188
mbed_official 15:a81a8d6c1dfe 189 /** \name Extension header #1 IRQ/External interrupt definitions
mbed_official 15:a81a8d6c1dfe 190 * @{
mbed_official 15:a81a8d6c1dfe 191 */
mbed_official 15:a81a8d6c1dfe 192 #define EXT1_IRQ_MODULE EIC
mbed_official 15:a81a8d6c1dfe 193 #define EXT1_IRQ_INPUT 4
mbed_official 15:a81a8d6c1dfe 194 #define EXT1_IRQ_PIN PIN_PB04A_EIC_EXTINT4
mbed_official 15:a81a8d6c1dfe 195 #define EXT1_IRQ_MUX MUX_PB04A_EIC_EXTINT4
mbed_official 15:a81a8d6c1dfe 196 #define EXT1_IRQ_PINMUX PINMUX_PB04A_EIC_EXTINT4
mbed_official 15:a81a8d6c1dfe 197 /** @} */
mbed_official 15:a81a8d6c1dfe 198
mbed_official 15:a81a8d6c1dfe 199 /** \name Extension header #1 I2C definitions
mbed_official 15:a81a8d6c1dfe 200 * @{
mbed_official 15:a81a8d6c1dfe 201 */
mbed_official 15:a81a8d6c1dfe 202 #define EXT1_I2C_MODULE SERCOM2
mbed_official 15:a81a8d6c1dfe 203 #define EXT1_I2C_SERCOM_PINMUX_PAD0 PINMUX_PA08D_SERCOM2_PAD0
mbed_official 15:a81a8d6c1dfe 204 #define EXT1_I2C_SERCOM_PINMUX_PAD1 PINMUX_PA09D_SERCOM2_PAD1
mbed_official 15:a81a8d6c1dfe 205 #define EXT1_I2C_SERCOM_DMAC_ID_TX SERCOM2_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 206 #define EXT1_I2C_SERCOM_DMAC_ID_RX SERCOM2_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 207 /** @} */
mbed_official 15:a81a8d6c1dfe 208
mbed_official 15:a81a8d6c1dfe 209 /** \name Extension header #1 UART definitions
mbed_official 15:a81a8d6c1dfe 210 * @{
mbed_official 15:a81a8d6c1dfe 211 */
mbed_official 15:a81a8d6c1dfe 212 #define EXT1_UART_MODULE SERCOM4
mbed_official 15:a81a8d6c1dfe 213 #define EXT1_UART_SERCOM_MUX_SETTING USART_RX_1_TX_0_XCK_1
mbed_official 15:a81a8d6c1dfe 214 #define EXT1_UART_SERCOM_PINMUX_PAD0 PINMUX_PB08D_SERCOM4_PAD0
mbed_official 15:a81a8d6c1dfe 215 #define EXT1_UART_SERCOM_PINMUX_PAD1 PINMUX_PB09D_SERCOM4_PAD1
mbed_official 15:a81a8d6c1dfe 216 #define EXT1_UART_SERCOM_PINMUX_PAD2 PINMUX_UNUSED
mbed_official 15:a81a8d6c1dfe 217 #define EXT1_UART_SERCOM_PINMUX_PAD3 PINMUX_UNUSED
mbed_official 15:a81a8d6c1dfe 218 #define EXT1_UART_SERCOM_DMAC_ID_TX SERCOM4_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 219 #define EXT1_UART_SERCOM_DMAC_ID_RX SERCOM4_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 220 /** @} */
mbed_official 15:a81a8d6c1dfe 221
mbed_official 15:a81a8d6c1dfe 222 /** \name Extension header #1 SPI definitions
mbed_official 15:a81a8d6c1dfe 223 * @{
mbed_official 15:a81a8d6c1dfe 224 */
mbed_official 15:a81a8d6c1dfe 225 #define EXT1_SPI_MODULE SERCOM0
mbed_official 15:a81a8d6c1dfe 226 #define EXT1_SPI_SERCOM_MUX_SETTING SPI_SIGNAL_MUX_SETTING_E
mbed_official 15:a81a8d6c1dfe 227 #define EXT1_SPI_SERCOM_PINMUX_PAD0 PINMUX_PA04D_SERCOM0_PAD0
mbed_official 15:a81a8d6c1dfe 228 #define EXT1_SPI_SERCOM_PINMUX_PAD1 PINMUX_PA05D_SERCOM0_PAD1
mbed_official 15:a81a8d6c1dfe 229 #define EXT1_SPI_SERCOM_PINMUX_PAD2 PINMUX_PA06D_SERCOM0_PAD2
mbed_official 15:a81a8d6c1dfe 230 #define EXT1_SPI_SERCOM_PINMUX_PAD3 PINMUX_PA07D_SERCOM0_PAD3
mbed_official 15:a81a8d6c1dfe 231 #define EXT1_SPI_SERCOM_DMAC_ID_TX SERCOM0_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 232 #define EXT1_SPI_SERCOM_DMAC_ID_RX SERCOM0_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 233 /** @} */
mbed_official 15:a81a8d6c1dfe 234
mbed_official 15:a81a8d6c1dfe 235 /** \name Extension header #2 pin definitions
mbed_official 15:a81a8d6c1dfe 236 * @{
mbed_official 15:a81a8d6c1dfe 237 */
mbed_official 15:a81a8d6c1dfe 238 #define EXT2_PIN_3 PIN_PA10
mbed_official 15:a81a8d6c1dfe 239 #define EXT2_PIN_4 PIN_PA11
mbed_official 15:a81a8d6c1dfe 240 #define EXT2_PIN_5 PIN_PA20
mbed_official 15:a81a8d6c1dfe 241 #define EXT2_PIN_6 PIN_PA21
mbed_official 15:a81a8d6c1dfe 242 #define EXT2_PIN_7 PIN_PB12
mbed_official 15:a81a8d6c1dfe 243 #define EXT2_PIN_8 PIN_PB13
mbed_official 15:a81a8d6c1dfe 244 #define EXT2_PIN_9 PIN_PB14
mbed_official 15:a81a8d6c1dfe 245 #define EXT2_PIN_10 PIN_PB15
mbed_official 15:a81a8d6c1dfe 246 #define EXT2_PIN_11 PIN_PA08
mbed_official 15:a81a8d6c1dfe 247 #define EXT2_PIN_12 PIN_PA09
mbed_official 15:a81a8d6c1dfe 248 #define EXT2_PIN_13 PIN_PB11
mbed_official 15:a81a8d6c1dfe 249 #define EXT2_PIN_14 PIN_PB10
mbed_official 15:a81a8d6c1dfe 250 #define EXT2_PIN_15 PIN_PA17
mbed_official 15:a81a8d6c1dfe 251 #define EXT2_PIN_16 PIN_PA18
mbed_official 15:a81a8d6c1dfe 252 #define EXT2_PIN_17 PIN_PA16
mbed_official 15:a81a8d6c1dfe 253 #define EXT2_PIN_18 PIN_PA19
mbed_official 15:a81a8d6c1dfe 254 /** @} */
mbed_official 15:a81a8d6c1dfe 255
mbed_official 15:a81a8d6c1dfe 256 /** \name Extension header #2 pin definitions by function
mbed_official 15:a81a8d6c1dfe 257 * @{
mbed_official 15:a81a8d6c1dfe 258 */
mbed_official 15:a81a8d6c1dfe 259 #define EXT2_PIN_ADC_0 EXT2_PIN_3
mbed_official 15:a81a8d6c1dfe 260 #define EXT2_PIN_ADC_1 EXT2_PIN_4
mbed_official 15:a81a8d6c1dfe 261 #define EXT2_PIN_GPIO_0 EXT2_PIN_5
mbed_official 15:a81a8d6c1dfe 262 #define EXT2_PIN_GPIO_1 EXT2_PIN_6
mbed_official 15:a81a8d6c1dfe 263 #define EXT2_PIN_PWM_0 EXT2_PIN_7
mbed_official 15:a81a8d6c1dfe 264 #define EXT2_PIN_PWM_1 EXT2_PIN_8
mbed_official 15:a81a8d6c1dfe 265 #define EXT2_PIN_IRQ EXT2_PIN_9
mbed_official 15:a81a8d6c1dfe 266 #define EXT2_PIN_I2C_SDA EXT2_PIN_11
mbed_official 15:a81a8d6c1dfe 267 #define EXT2_PIN_I2C_SCL EXT2_PIN_12
mbed_official 15:a81a8d6c1dfe 268 #define EXT2_PIN_UART_RX EXT2_PIN_13
mbed_official 15:a81a8d6c1dfe 269 #define EXT2_PIN_UART_TX EXT2_PIN_14
mbed_official 15:a81a8d6c1dfe 270 #define EXT2_PIN_SPI_SS_1 EXT2_PIN_10
mbed_official 15:a81a8d6c1dfe 271 #define EXT2_PIN_SPI_SS_0 EXT2_PIN_15
mbed_official 15:a81a8d6c1dfe 272 #define EXT2_PIN_SPI_MOSI EXT2_PIN_16
mbed_official 15:a81a8d6c1dfe 273 #define EXT2_PIN_SPI_MISO EXT2_PIN_17
mbed_official 15:a81a8d6c1dfe 274 #define EXT2_PIN_SPI_SCK EXT2_PIN_18
mbed_official 15:a81a8d6c1dfe 275 /** @} */
mbed_official 15:a81a8d6c1dfe 276
mbed_official 15:a81a8d6c1dfe 277 /** \name Extension header #2 ADC definitions
mbed_official 15:a81a8d6c1dfe 278 * @{
mbed_official 15:a81a8d6c1dfe 279 */
mbed_official 15:a81a8d6c1dfe 280 #define EXT2_ADC_MODULE ADC
mbed_official 15:a81a8d6c1dfe 281 #define EXT2_ADC_0_CHANNEL 18
mbed_official 15:a81a8d6c1dfe 282 #define EXT2_ADC_0_PIN PIN_PA10B_ADC_AIN18
mbed_official 15:a81a8d6c1dfe 283 #define EXT2_ADC_0_MUX MUX_PA10B_ADC_AIN18
mbed_official 15:a81a8d6c1dfe 284 #define EXT2_ADC_0_PINMUX PINMUX_PA10B_ADC_AIN18
mbed_official 15:a81a8d6c1dfe 285 #define EXT2_ADC_1_CHANNEL 19
mbed_official 15:a81a8d6c1dfe 286 #define EXT2_ADC_1_PIN PIN_PA11B_ADC_AIN19
mbed_official 15:a81a8d6c1dfe 287 #define EXT2_ADC_1_MUX MUX_PA11B_ADC_AIN19
mbed_official 15:a81a8d6c1dfe 288 #define EXT2_ADC_1_PINMUX PINMUX_PA11B_ADC_AIN19
mbed_official 15:a81a8d6c1dfe 289 /** @} */
mbed_official 15:a81a8d6c1dfe 290
mbed_official 15:a81a8d6c1dfe 291 /** \name Extension header #2 PWM definitions
mbed_official 15:a81a8d6c1dfe 292 * @{
mbed_official 15:a81a8d6c1dfe 293 */
mbed_official 15:a81a8d6c1dfe 294 #define EXT2_PWM_MODULE TC4
mbed_official 15:a81a8d6c1dfe 295 #define EXT2_PWM_0_CHANNEL 0
mbed_official 15:a81a8d6c1dfe 296 #define EXT2_PWM_0_PIN PIN_PB12E_TC4_WO0
mbed_official 15:a81a8d6c1dfe 297 #define EXT2_PWM_0_MUX MUX_PB12E_TC4_WO0
mbed_official 15:a81a8d6c1dfe 298 #define EXT2_PWM_0_PINMUX PINMUX_PB12E_TC4_WO0
mbed_official 15:a81a8d6c1dfe 299 #define EXT2_PWM_1_CHANNEL 1
mbed_official 15:a81a8d6c1dfe 300 #define EXT2_PWM_1_PIN PIN_PB13E_TC4_WO1
mbed_official 15:a81a8d6c1dfe 301 #define EXT2_PWM_1_MUX MUX_PB13E_TC4_WO1
mbed_official 15:a81a8d6c1dfe 302 #define EXT2_PWM_1_PINMUX PINMUX_PB13E_TC4_WO1
mbed_official 15:a81a8d6c1dfe 303 /** @} */
mbed_official 15:a81a8d6c1dfe 304
mbed_official 15:a81a8d6c1dfe 305 /** \name Extension header #2 PWM for Control definitions
mbed_official 15:a81a8d6c1dfe 306 * @{
mbed_official 15:a81a8d6c1dfe 307 */
mbed_official 15:a81a8d6c1dfe 308 #define EXT2_PWM4CTRL_MODULE TCC0
mbed_official 15:a81a8d6c1dfe 309 #define EXT2_PWM4CTRL_0_CHANNEL 2
mbed_official 15:a81a8d6c1dfe 310 #define EXT2_PWM4CTRL_0_OUTPUT 6
mbed_official 15:a81a8d6c1dfe 311 #define EXT2_PWM4CTRL_0_PIN PIN_PB12F_TCC0_WO6
mbed_official 15:a81a8d6c1dfe 312 #define EXT2_PWM4CTRL_0_MUX MUX_PB12F_TCC0_WO6
mbed_official 15:a81a8d6c1dfe 313 #define EXT2_PWM4CTRL_0_PINMUX PINMUX_PB12F_TCC0_WO6
mbed_official 15:a81a8d6c1dfe 314 #define EXT2_PWM4CTRL_1_CHANNEL 3
mbed_official 15:a81a8d6c1dfe 315 #define EXT2_PWM4CTRL_1_OUTPUT 7
mbed_official 15:a81a8d6c1dfe 316 #define EXT2_PWM4CTRL_1_PIN PIN_PB13F_TCC0_WO7
mbed_official 15:a81a8d6c1dfe 317 #define EXT2_PWM4CTRL_1_MUX MUX_PB13F_TCC0_WO7
mbed_official 15:a81a8d6c1dfe 318 #define EXT2_PWM4CTRL_1_PINMUX PINMUX_PB13F_TCC0_WO7
mbed_official 15:a81a8d6c1dfe 319 /** @} */
mbed_official 15:a81a8d6c1dfe 320
mbed_official 15:a81a8d6c1dfe 321 /** \name Extension header #2 IRQ/External interrupt definitions
mbed_official 15:a81a8d6c1dfe 322 * @{
mbed_official 15:a81a8d6c1dfe 323 */
mbed_official 15:a81a8d6c1dfe 324 #define EXT2_IRQ_MODULE EIC
mbed_official 15:a81a8d6c1dfe 325 #define EXT2_IRQ_INPUT 14
mbed_official 15:a81a8d6c1dfe 326 #define EXT2_IRQ_PIN PIN_PB14A_EIC_EXTINT14
mbed_official 15:a81a8d6c1dfe 327 #define EXT2_IRQ_MUX MUX_PB14A_EIC_EXTINT14
mbed_official 15:a81a8d6c1dfe 328 #define EXT2_IRQ_PINMUX PINMUX_PB14A_EIC_EXTINT14
mbed_official 15:a81a8d6c1dfe 329 /** @} */
mbed_official 15:a81a8d6c1dfe 330
mbed_official 15:a81a8d6c1dfe 331 /** \name Extension header #2 I2C definitions
mbed_official 15:a81a8d6c1dfe 332 * @{
mbed_official 15:a81a8d6c1dfe 333 */
mbed_official 15:a81a8d6c1dfe 334 #define EXT2_I2C_MODULE SERCOM2
mbed_official 15:a81a8d6c1dfe 335 #define EXT2_I2C_SERCOM_PINMUX_PAD0 PINMUX_PA08D_SERCOM2_PAD0
mbed_official 15:a81a8d6c1dfe 336 #define EXT2_I2C_SERCOM_PINMUX_PAD1 PINMUX_PA09D_SERCOM2_PAD1
mbed_official 15:a81a8d6c1dfe 337 #define EXT2_I2C_SERCOM_DMAC_ID_TX SERCOM2_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 338 #define EXT2_I2C_SERCOM_DMAC_ID_RX SERCOM2_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 339 /** @} */
mbed_official 15:a81a8d6c1dfe 340
mbed_official 15:a81a8d6c1dfe 341 /** \name Extension header #2 UART definitions
mbed_official 15:a81a8d6c1dfe 342 * @{
mbed_official 15:a81a8d6c1dfe 343 */
mbed_official 15:a81a8d6c1dfe 344 #define EXT2_UART_MODULE SERCOM4
mbed_official 15:a81a8d6c1dfe 345 #define EXT2_UART_SERCOM_MUX_SETTING USART_RX_1_TX_0_XCK_1
mbed_official 15:a81a8d6c1dfe 346 #define EXT2_UART_SERCOM_PINMUX_PAD0 PINMUX_PB12C_SERCOM4_PAD0
mbed_official 15:a81a8d6c1dfe 347 #define EXT2_UART_SERCOM_PINMUX_PAD1 PINMUX_PB13C_SERCOM4_PAD1
mbed_official 15:a81a8d6c1dfe 348 #define EXT2_UART_SERCOM_PINMUX_PAD2 PINMUX_UNUSED
mbed_official 15:a81a8d6c1dfe 349 #define EXT2_UART_SERCOM_PINMUX_PAD3 PINMUX_UNUSED
mbed_official 15:a81a8d6c1dfe 350 #define EXT2_UART_SERCOM_DMAC_ID_TX SERCOM4_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 351 #define EXT2_UART_SERCOM_DMAC_ID_RX SERCOM4_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 352 /** @} */
mbed_official 15:a81a8d6c1dfe 353
mbed_official 15:a81a8d6c1dfe 354 /** \name Extension header #2 SPI definitions
mbed_official 15:a81a8d6c1dfe 355 * @{
mbed_official 15:a81a8d6c1dfe 356 */
mbed_official 15:a81a8d6c1dfe 357 #define EXT2_SPI_MODULE SERCOM1
mbed_official 15:a81a8d6c1dfe 358 #define EXT2_SPI_SERCOM_MUX_SETTING SPI_SIGNAL_MUX_SETTING_E
mbed_official 15:a81a8d6c1dfe 359 #define EXT2_SPI_SERCOM_PINMUX_PAD0 PINMUX_PA16C_SERCOM1_PAD0
mbed_official 15:a81a8d6c1dfe 360 #define EXT2_SPI_SERCOM_PINMUX_PAD1 PINMUX_PA17C_SERCOM1_PAD1
mbed_official 15:a81a8d6c1dfe 361 #define EXT2_SPI_SERCOM_PINMUX_PAD2 PINMUX_PA18C_SERCOM1_PAD2
mbed_official 15:a81a8d6c1dfe 362 #define EXT2_SPI_SERCOM_PINMUX_PAD3 PINMUX_PA19C_SERCOM1_PAD3
mbed_official 15:a81a8d6c1dfe 363 #define EXT2_SPI_SERCOM_DMAC_ID_TX SERCOM1_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 364 #define EXT2_SPI_SERCOM_DMAC_ID_RX SERCOM1_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 365 /** @} */
mbed_official 15:a81a8d6c1dfe 366
mbed_official 15:a81a8d6c1dfe 367 /** \name Extension header #3 pin definitions
mbed_official 15:a81a8d6c1dfe 368 * @{
mbed_official 15:a81a8d6c1dfe 369 */
mbed_official 15:a81a8d6c1dfe 370 #define EXT3_PIN_3 PIN_PA02
mbed_official 15:a81a8d6c1dfe 371 #define EXT3_PIN_4 PIN_PA03
mbed_official 15:a81a8d6c1dfe 372 #define EXT3_PIN_5 PIN_PB30
mbed_official 15:a81a8d6c1dfe 373 #define EXT3_PIN_6 PIN_PA15
mbed_official 15:a81a8d6c1dfe 374 #define EXT3_PIN_7 PIN_PA12
mbed_official 15:a81a8d6c1dfe 375 #define EXT3_PIN_8 PIN_PA13
mbed_official 15:a81a8d6c1dfe 376 #define EXT3_PIN_9 PIN_PA28
mbed_official 15:a81a8d6c1dfe 377 #define EXT3_PIN_10 PIN_PA27
mbed_official 15:a81a8d6c1dfe 378 #define EXT3_PIN_11 PIN_PA08
mbed_official 15:a81a8d6c1dfe 379 #define EXT3_PIN_12 PIN_PA09
mbed_official 15:a81a8d6c1dfe 380 #define EXT3_PIN_13 PIN_PB11
mbed_official 15:a81a8d6c1dfe 381 #define EXT3_PIN_14 PIN_PB10
mbed_official 15:a81a8d6c1dfe 382 #define EXT3_PIN_15 PIN_PB17
mbed_official 15:a81a8d6c1dfe 383 #define EXT3_PIN_16 PIN_PB22
mbed_official 15:a81a8d6c1dfe 384 #define EXT3_PIN_17 PIN_PB16
mbed_official 15:a81a8d6c1dfe 385 #define EXT3_PIN_18 PIN_PB23
mbed_official 15:a81a8d6c1dfe 386 /** @} */
mbed_official 15:a81a8d6c1dfe 387
mbed_official 15:a81a8d6c1dfe 388 /** \name Extension header #3 pin definitions by function
mbed_official 15:a81a8d6c1dfe 389 * @{
mbed_official 15:a81a8d6c1dfe 390 */
mbed_official 15:a81a8d6c1dfe 391 #define EXT3_PIN_ADC_0 EXT3_PIN_3
mbed_official 15:a81a8d6c1dfe 392 #define EXT3_PIN_ADC_1 EXT3_PIN_4
mbed_official 15:a81a8d6c1dfe 393 #define EXT3_PIN_GPIO_0 EXT3_PIN_5
mbed_official 15:a81a8d6c1dfe 394 #define EXT3_PIN_GPIO_1 EXT3_PIN_6
mbed_official 15:a81a8d6c1dfe 395 #define EXT3_PIN_PWM_0 EXT3_PIN_7
mbed_official 15:a81a8d6c1dfe 396 #define EXT3_PIN_PWM_1 EXT3_PIN_8
mbed_official 15:a81a8d6c1dfe 397 #define EXT3_PIN_IRQ EXT3_PIN_9
mbed_official 15:a81a8d6c1dfe 398 #define EXT3_PIN_I2C_SDA EXT3_PIN_11
mbed_official 15:a81a8d6c1dfe 399 #define EXT3_PIN_I2C_SCL EXT3_PIN_12
mbed_official 15:a81a8d6c1dfe 400 #define EXT3_PIN_UART_RX EXT3_PIN_13
mbed_official 15:a81a8d6c1dfe 401 #define EXT3_PIN_UART_TX EXT3_PIN_14
mbed_official 15:a81a8d6c1dfe 402 #define EXT3_PIN_SPI_SS_1 EXT3_PIN_10
mbed_official 15:a81a8d6c1dfe 403 #define EXT3_PIN_SPI_SS_0 EXT3_PIN_15
mbed_official 15:a81a8d6c1dfe 404 #define EXT3_PIN_SPI_MOSI EXT3_PIN_16
mbed_official 15:a81a8d6c1dfe 405 #define EXT3_PIN_SPI_MISO EXT3_PIN_17
mbed_official 15:a81a8d6c1dfe 406 #define EXT3_PIN_SPI_SCK EXT3_PIN_18
mbed_official 15:a81a8d6c1dfe 407 /** @} */
mbed_official 15:a81a8d6c1dfe 408
mbed_official 15:a81a8d6c1dfe 409 /** \name Extension header #3 ADC definitions
mbed_official 15:a81a8d6c1dfe 410 * @{
mbed_official 15:a81a8d6c1dfe 411 */
mbed_official 15:a81a8d6c1dfe 412 #define EXT3_ADC_MODULE ADC
mbed_official 15:a81a8d6c1dfe 413 #define EXT3_ADC_0_CHANNEL 0
mbed_official 15:a81a8d6c1dfe 414 #define EXT3_ADC_0_PIN PIN_PA02B_ADC_AIN0
mbed_official 15:a81a8d6c1dfe 415 #define EXT3_ADC_0_MUX MUX_PA02B_ADC_AIN0
mbed_official 15:a81a8d6c1dfe 416 #define EXT3_ADC_0_PINMUX PINMUX_PA02B_ADC_AIN0
mbed_official 15:a81a8d6c1dfe 417 #define EXT3_ADC_1_CHANNEL 1
mbed_official 15:a81a8d6c1dfe 418 #define EXT3_ADC_1_PIN PIN_PA03B_ADC_AIN1
mbed_official 15:a81a8d6c1dfe 419 #define EXT3_ADC_1_MUX MUX_PA03B_ADC_AIN1
mbed_official 15:a81a8d6c1dfe 420 #define EXT3_ADC_1_PINMUX PINMUX_PA03B_ADC_AIN1
mbed_official 15:a81a8d6c1dfe 421 /** @} */
mbed_official 15:a81a8d6c1dfe 422
mbed_official 15:a81a8d6c1dfe 423 /** \name Extension header #3 PWM for Control definitions
mbed_official 15:a81a8d6c1dfe 424 * @{
mbed_official 15:a81a8d6c1dfe 425 */
mbed_official 15:a81a8d6c1dfe 426 #define EXT3_PWM4CTRL_MODULE TCC2
mbed_official 15:a81a8d6c1dfe 427 #define EXT3_PWM4CTRL_0_CHANNEL 0
mbed_official 15:a81a8d6c1dfe 428 #define EXT3_PWM4CTRL_0_OUTPUT 0
mbed_official 15:a81a8d6c1dfe 429 #define EXT3_PWM4CTRL_0_PIN PIN_PA12E_TCC2_WO0
mbed_official 15:a81a8d6c1dfe 430 #define EXT3_PWM4CTRL_0_MUX MUX_PA12E_TCC2_WO0
mbed_official 15:a81a8d6c1dfe 431 #define EXT3_PWM4CTRL_0_PINMUX PINMUX_PA12E_TCC2_WO0
mbed_official 15:a81a8d6c1dfe 432 #define EXT3_PWM4CTRL_1_CHANNEL 1
mbed_official 15:a81a8d6c1dfe 433 #define EXT3_PWM4CTRL_1_OUTPUT 1
mbed_official 15:a81a8d6c1dfe 434 #define EXT3_PWM4CTRL_1_PIN PIN_PA13E_TCC2_WO1
mbed_official 15:a81a8d6c1dfe 435 #define EXT3_PWM4CTRL_1_MUX MUX_PA13E_TCC2_WO1
mbed_official 15:a81a8d6c1dfe 436 #define EXT3_PWM4CTRL_1_PINMUX PINMUX_PA13E_TCC2_WO1
mbed_official 15:a81a8d6c1dfe 437 /** @} */
mbed_official 15:a81a8d6c1dfe 438
mbed_official 15:a81a8d6c1dfe 439 /** \name Extension header #3 IRQ/External interrupt definitions
mbed_official 15:a81a8d6c1dfe 440 * @{
mbed_official 15:a81a8d6c1dfe 441 */
mbed_official 15:a81a8d6c1dfe 442 #define EXT3_IRQ_MODULE EIC
mbed_official 15:a81a8d6c1dfe 443 #define EXT3_IRQ_INPUT 8
mbed_official 15:a81a8d6c1dfe 444 #define EXT3_IRQ_PIN PIN_PA28A_EIC_EXTINT8
mbed_official 15:a81a8d6c1dfe 445 #define EXT3_IRQ_MUX MUX_PA28A_EIC_EXTINT8
mbed_official 15:a81a8d6c1dfe 446 #define EXT3_IRQ_PINMUX PINMUX_PA28A_EIC_EXTINT8
mbed_official 15:a81a8d6c1dfe 447 /** @} */
mbed_official 15:a81a8d6c1dfe 448
mbed_official 15:a81a8d6c1dfe 449 /** \name Extension header #3 I2C definitions
mbed_official 15:a81a8d6c1dfe 450 * @{
mbed_official 15:a81a8d6c1dfe 451 */
mbed_official 15:a81a8d6c1dfe 452 #define EXT3_I2C_MODULE SERCOM2
mbed_official 15:a81a8d6c1dfe 453 #define EXT3_I2C_SERCOM_PINMUX_PAD0 PINMUX_PA08D_SERCOM2_PAD0
mbed_official 15:a81a8d6c1dfe 454 #define EXT3_I2C_SERCOM_PINMUX_PAD1 PINMUX_PA09D_SERCOM2_PAD1
mbed_official 15:a81a8d6c1dfe 455 #define EXT3_I2C_SERCOM_DMAC_ID_TX SERCOM2_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 456 #define EXT3_I2C_SERCOM_DMAC_ID_RX SERCOM2_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 457 /** @} */
mbed_official 15:a81a8d6c1dfe 458
mbed_official 15:a81a8d6c1dfe 459 /** \name Extension header #3 UART definitions
mbed_official 15:a81a8d6c1dfe 460 * @{
mbed_official 15:a81a8d6c1dfe 461 */
mbed_official 15:a81a8d6c1dfe 462 #define EXT3_UART_MODULE SERCOM4
mbed_official 15:a81a8d6c1dfe 463 #define EXT3_UART_SERCOM_MUX_SETTING USART_RX_3_TX_2_XCK_3
mbed_official 15:a81a8d6c1dfe 464 #define EXT3_UART_SERCOM_PINMUX_PAD0 PINMUX_UNUSED
mbed_official 15:a81a8d6c1dfe 465 #define EXT3_UART_SERCOM_PINMUX_PAD1 PINMUX_UNUSED
mbed_official 15:a81a8d6c1dfe 466 #define EXT3_UART_SERCOM_PINMUX_PAD2 PINMUX_PB10D_SERCOM4_PAD2
mbed_official 15:a81a8d6c1dfe 467 #define EXT3_UART_SERCOM_PINMUX_PAD3 PINMUX_PB11D_SERCOM4_PAD3
mbed_official 15:a81a8d6c1dfe 468 #define EXT3_UART_SERCOM_DMAC_ID_TX SERCOM4_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 469 #define EXT3_UART_SERCOM_DMAC_ID_RX SERCOM4_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 470 /** @} */
mbed_official 15:a81a8d6c1dfe 471
mbed_official 15:a81a8d6c1dfe 472 /** \name Extension header #3 SPI definitions
mbed_official 15:a81a8d6c1dfe 473 * @{
mbed_official 15:a81a8d6c1dfe 474 */
mbed_official 15:a81a8d6c1dfe 475 #define EXT3_SPI_MODULE SERCOM5
mbed_official 15:a81a8d6c1dfe 476 #define EXT3_SPI_SERCOM_MUX_SETTING SPI_SIGNAL_MUX_SETTING_E
mbed_official 15:a81a8d6c1dfe 477 #define EXT3_SPI_SERCOM_PINMUX_PAD0 PINMUX_PB16C_SERCOM5_PAD0
mbed_official 15:a81a8d6c1dfe 478 #define EXT3_SPI_SERCOM_PINMUX_PAD1 PINMUX_PB17C_SERCOM5_PAD1
mbed_official 15:a81a8d6c1dfe 479 #define EXT3_SPI_SERCOM_PINMUX_PAD2 PINMUX_PB22D_SERCOM5_PAD2
mbed_official 15:a81a8d6c1dfe 480 #define EXT3_SPI_SERCOM_PINMUX_PAD3 PINMUX_PB23D_SERCOM5_PAD3
mbed_official 15:a81a8d6c1dfe 481 #define EXT3_SPI_SERCOM_DMAC_ID_TX SERCOM5_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 482 #define EXT3_SPI_SERCOM_DMAC_ID_RX SERCOM5_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 483 /** @} */
mbed_official 15:a81a8d6c1dfe 484
mbed_official 15:a81a8d6c1dfe 485 /** \name Extension header #3 Dataflash
mbed_official 15:a81a8d6c1dfe 486 * @{
mbed_official 15:a81a8d6c1dfe 487 */
mbed_official 15:a81a8d6c1dfe 488 #define EXT3_DATAFLASH_SPI_MODULE EXT3_SPI_MODULE
mbed_official 15:a81a8d6c1dfe 489 #define EXT3_DATAFLASH_SPI_MUX_SETTING EXT3_SPI_SERCOM_MUX_SETTING
mbed_official 15:a81a8d6c1dfe 490 #define EXT3_DATAFLASH_SPI_PINMUX_PAD0 EXT3_SPI_SERCOM_PINMUX_PAD0
mbed_official 15:a81a8d6c1dfe 491 #define EXT3_DATAFLASH_SPI_PINMUX_PAD1 EXT3_SPI_SERCOM_PINMUX_PAD1
mbed_official 15:a81a8d6c1dfe 492 #define EXT3_DATAFLASH_SPI_PINMUX_PAD2 EXT3_SPI_SERCOM_PINMUX_PAD2
mbed_official 15:a81a8d6c1dfe 493 #define EXT3_DATAFLASH_SPI_PINMUX_PAD3 EXT3_SPI_SERCOM_PINMUX_PAD3
mbed_official 15:a81a8d6c1dfe 494 /** @} */
mbed_official 15:a81a8d6c1dfe 495
mbed_official 15:a81a8d6c1dfe 496 /** \name USB definitions
mbed_official 15:a81a8d6c1dfe 497 * @{
mbed_official 15:a81a8d6c1dfe 498 */
mbed_official 15:a81a8d6c1dfe 499 #define USB_ID
mbed_official 15:a81a8d6c1dfe 500 #define USB_TARGET_DP_PIN PIN_PA25G_USB_DP
mbed_official 15:a81a8d6c1dfe 501 #define USB_TARGET_DP_MUX MUX_PA25G_USB_DP
mbed_official 15:a81a8d6c1dfe 502 #define USB_TARGET_DP_PINMUX PINMUX_PA25G_USB_DP
mbed_official 15:a81a8d6c1dfe 503 #define USB_TARGET_DM_PIN PIN_PA24G_USB_DM
mbed_official 15:a81a8d6c1dfe 504 #define USB_TARGET_DM_MUX MUX_PA24G_USB_DM
mbed_official 15:a81a8d6c1dfe 505 #define USB_TARGET_DM_PINMUX PINMUX_PA24G_USB_DM
mbed_official 15:a81a8d6c1dfe 506 #define USB_VBUS_PIN PIN_PA14
mbed_official 15:a81a8d6c1dfe 507 #define USB_VBUS_EIC_LINE 14
mbed_official 15:a81a8d6c1dfe 508 #define USB_VBUS_EIC_MUX MUX_PA14A_EIC_EXTINT14
mbed_official 15:a81a8d6c1dfe 509 #define USB_VBUS_EIC_PINMUX PINMUX_PA14A_EIC_EXTINT14
mbed_official 15:a81a8d6c1dfe 510 #define USB_ID_PIN PIN_PA03
mbed_official 15:a81a8d6c1dfe 511 #define USB_ID_EIC_LINE 3
mbed_official 15:a81a8d6c1dfe 512 #define USB_ID_EIC_MUX MUX_PA03A_EIC_EXTINT3
mbed_official 15:a81a8d6c1dfe 513 #define USB_ID_EIC_PINMUX PINMUX_PA03A_EIC_EXTINT3
mbed_official 15:a81a8d6c1dfe 514 /** @} */
mbed_official 15:a81a8d6c1dfe 515
mbed_official 15:a81a8d6c1dfe 516 /** \name Embedded debugger GPIO interface definitions
mbed_official 15:a81a8d6c1dfe 517 * @{
mbed_official 15:a81a8d6c1dfe 518 */
mbed_official 15:a81a8d6c1dfe 519 #define EDBG_GPIO0_PIN PIN_PA27
mbed_official 15:a81a8d6c1dfe 520 #define EDBG_GPIO1_PIN PIN_PA28
mbed_official 15:a81a8d6c1dfe 521 #define EDBG_GPIO2_PIN PIN_PA20
mbed_official 15:a81a8d6c1dfe 522 #define EDBG_GPIO3_PIN PIN_PA21
mbed_official 15:a81a8d6c1dfe 523 /** @} */
mbed_official 15:a81a8d6c1dfe 524
mbed_official 15:a81a8d6c1dfe 525 /** \name Embedded debugger USART interface definitions
mbed_official 15:a81a8d6c1dfe 526 * @{
mbed_official 15:a81a8d6c1dfe 527 */
mbed_official 15:a81a8d6c1dfe 528 #define EDBG_UART_MODULE -1 /* Not available on this board */
mbed_official 15:a81a8d6c1dfe 529 #define EDBG_UART_RX_PIN -1 /* Not available on this board */
mbed_official 15:a81a8d6c1dfe 530 #define EDBG_UART_RX_MUX -1 /* Not available on this board */
mbed_official 15:a81a8d6c1dfe 531 #define EDBG_UART_RX_PINMUX -1 /* Not available on this board */
mbed_official 15:a81a8d6c1dfe 532 #define EDBG_UART_RX_SERCOM_PAD -1 /* Not available on this board */
mbed_official 15:a81a8d6c1dfe 533 #define EDBG_UART_TX_PIN -1 /* Not available on this board */
mbed_official 15:a81a8d6c1dfe 534 #define EDBG_UART_TX_MUX -1 /* Not available on this board */
mbed_official 15:a81a8d6c1dfe 535 #define EDBG_UART_TX_PINMUX -1 /* Not available on this board */
mbed_official 15:a81a8d6c1dfe 536 #define EDBG_UART_TX_SERCOM_PAD -1 /* Not available on this board */
mbed_official 15:a81a8d6c1dfe 537 /** @} */
mbed_official 15:a81a8d6c1dfe 538
mbed_official 15:a81a8d6c1dfe 539 /** \name Embedded debugger I2C interface definitions
mbed_official 15:a81a8d6c1dfe 540 * @{
mbed_official 15:a81a8d6c1dfe 541 */
mbed_official 15:a81a8d6c1dfe 542 #define EDBG_I2C_MODULE SERCOM2
mbed_official 15:a81a8d6c1dfe 543 #define EDBG_I2C_SERCOM_PINMUX_PAD0 PINMUX_PA08D_SERCOM2_PAD0
mbed_official 15:a81a8d6c1dfe 544 #define EDBG_I2C_SERCOM_PINMUX_PAD1 PINMUX_PA09D_SERCOM2_PAD1
mbed_official 15:a81a8d6c1dfe 545 #define EDBG_I2C_SERCOM_DMAC_ID_TX SERCOM2_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 546 #define EDBG_I2C_SERCOM_DMAC_ID_RX SERCOM2_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 547 /** @} */
mbed_official 15:a81a8d6c1dfe 548
mbed_official 15:a81a8d6c1dfe 549 /** \name Embedded debugger SPI interface definitions
mbed_official 15:a81a8d6c1dfe 550 * @{
mbed_official 15:a81a8d6c1dfe 551 */
mbed_official 15:a81a8d6c1dfe 552 #define EDBG_SPI_MODULE SERCOM5
mbed_official 15:a81a8d6c1dfe 553 #define EDBG_SPI_SERCOM_MUX_SETTING SPI_SIGNAL_MUX_SETTING_E
mbed_official 15:a81a8d6c1dfe 554 #define EDBG_SPI_SERCOM_PINMUX_PAD0 PINMUX_PB16C_SERCOM5_PAD0
mbed_official 15:a81a8d6c1dfe 555 #define EDBG_SPI_SERCOM_PINMUX_PAD1 PINMUX_PB31D_SERCOM5_PAD1
mbed_official 15:a81a8d6c1dfe 556 #define EDBG_SPI_SERCOM_PINMUX_PAD2 PINMUX_PB22D_SERCOM5_PAD2
mbed_official 15:a81a8d6c1dfe 557 #define EDBG_SPI_SERCOM_PINMUX_PAD3 PINMUX_PB23D_SERCOM5_PAD3
mbed_official 15:a81a8d6c1dfe 558 #define EDBG_SPI_SERCOM_DMAC_ID_TX SERCOM5_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 559 #define EDBG_SPI_SERCOM_DMAC_ID_RX SERCOM5_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 560 /** @} */
mbed_official 15:a81a8d6c1dfe 561
mbed_official 15:a81a8d6c1dfe 562 /** \name Embedded debugger CDC Gateway USART interface definitions
mbed_official 15:a81a8d6c1dfe 563 * @{
mbed_official 15:a81a8d6c1dfe 564 */
mbed_official 15:a81a8d6c1dfe 565 #define EDBG_CDC_MODULE SERCOM3
mbed_official 15:a81a8d6c1dfe 566 #define EDBG_CDC_SERCOM_MUX_SETTING USART_RX_1_TX_0_XCK_1
mbed_official 15:a81a8d6c1dfe 567 #define EDBG_CDC_SERCOM_PINMUX_PAD0 PINMUX_PA22C_SERCOM3_PAD0
mbed_official 15:a81a8d6c1dfe 568 #define EDBG_CDC_SERCOM_PINMUX_PAD1 PINMUX_PA23C_SERCOM3_PAD1
mbed_official 15:a81a8d6c1dfe 569 #define EDBG_CDC_SERCOM_PINMUX_PAD2 PINMUX_UNUSED
mbed_official 15:a81a8d6c1dfe 570 #define EDBG_CDC_SERCOM_PINMUX_PAD3 PINMUX_UNUSED
mbed_official 15:a81a8d6c1dfe 571 #define EDBG_CDC_SERCOM_DMAC_ID_TX SERCOM3_DMAC_ID_TX
mbed_official 15:a81a8d6c1dfe 572 #define EDBG_CDC_SERCOM_DMAC_ID_RX SERCOM3_DMAC_ID_RX
mbed_official 15:a81a8d6c1dfe 573 /** @} */
mbed_official 15:a81a8d6c1dfe 574
mbed_official 15:a81a8d6c1dfe 575 /** @} */
mbed_official 15:a81a8d6c1dfe 576
mbed_official 15:a81a8d6c1dfe 577 /** \name 802.15.4 TRX Interface definitions
mbed_official 15:a81a8d6c1dfe 578 * @{
mbed_official 15:a81a8d6c1dfe 579 */
mbed_official 15:a81a8d6c1dfe 580
mbed_official 15:a81a8d6c1dfe 581 #define AT86RFX_SPI EXT1_SPI_MODULE
mbed_official 15:a81a8d6c1dfe 582 #define AT86RFX_RST_PIN EXT1_PIN_7
mbed_official 15:a81a8d6c1dfe 583 #define AT86RFX_MISC_PIN EXT1_PIN_12
mbed_official 15:a81a8d6c1dfe 584 #define AT86RFX_IRQ_PIN EXT1_PIN_9
mbed_official 15:a81a8d6c1dfe 585 #define AT86RFX_SLP_PIN EXT1_PIN_10
mbed_official 15:a81a8d6c1dfe 586 #define AT86RFX_SPI_CS EXT1_PIN_15
mbed_official 15:a81a8d6c1dfe 587 #define AT86RFX_SPI_MOSI EXT1_PIN_16
mbed_official 15:a81a8d6c1dfe 588 #define AT86RFX_SPI_MISO EXT1_PIN_17
mbed_official 15:a81a8d6c1dfe 589 #define AT86RFX_SPI_SCK EXT1_PIN_18
mbed_official 15:a81a8d6c1dfe 590 #define AT86RFX_CSD EXT1_PIN_5
mbed_official 15:a81a8d6c1dfe 591 #define AT86RFX_CPS EXT1_PIN_8
mbed_official 15:a81a8d6c1dfe 592
mbed_official 15:a81a8d6c1dfe 593 #define AT86RFX_SPI_SERCOM_MUX_SETTING EXT1_SPI_SERCOM_MUX_SETTING
mbed_official 15:a81a8d6c1dfe 594 #define AT86RFX_SPI_SERCOM_PINMUX_PAD0 EXT1_SPI_SERCOM_PINMUX_PAD0
mbed_official 15:a81a8d6c1dfe 595 #define AT86RFX_SPI_SERCOM_PINMUX_PAD1 PINMUX_UNUSED
mbed_official 15:a81a8d6c1dfe 596 #define AT86RFX_SPI_SERCOM_PINMUX_PAD2 EXT1_SPI_SERCOM_PINMUX_PAD2
mbed_official 15:a81a8d6c1dfe 597 #define AT86RFX_SPI_SERCOM_PINMUX_PAD3 EXT1_SPI_SERCOM_PINMUX_PAD3
mbed_official 15:a81a8d6c1dfe 598
mbed_official 15:a81a8d6c1dfe 599 #define AT86RFX_IRQ_CHAN EXT1_IRQ_INPUT
mbed_official 15:a81a8d6c1dfe 600 #define AT86RFX_IRQ_PINMUX EXT1_IRQ_PINMUX
mbed_official 15:a81a8d6c1dfe 601
mbed_official 15:a81a8d6c1dfe 602
mbed_official 15:a81a8d6c1dfe 603 /** Enables the transceiver main interrupt. */
mbed_official 15:a81a8d6c1dfe 604 #define ENABLE_TRX_IRQ() \
mbed_official 15:a81a8d6c1dfe 605 extint_chan_enable_callback(AT86RFX_IRQ_CHAN, EXTINT_CALLBACK_TYPE_DETECT)
mbed_official 15:a81a8d6c1dfe 606
mbed_official 15:a81a8d6c1dfe 607 /** Disables the transceiver main interrupt. */
mbed_official 15:a81a8d6c1dfe 608 #define DISABLE_TRX_IRQ() \
mbed_official 15:a81a8d6c1dfe 609 extint_chan_disable_callback(AT86RFX_IRQ_CHAN, EXTINT_CALLBACK_TYPE_DETECT)
mbed_official 15:a81a8d6c1dfe 610
mbed_official 15:a81a8d6c1dfe 611 /** Clears the transceiver main interrupt. */
mbed_official 15:a81a8d6c1dfe 612 #define CLEAR_TRX_IRQ() \
mbed_official 15:a81a8d6c1dfe 613 extint_chan_clear_detected(AT86RFX_IRQ_CHAN);
mbed_official 15:a81a8d6c1dfe 614
mbed_official 15:a81a8d6c1dfe 615 /*
mbed_official 15:a81a8d6c1dfe 616 * This macro saves the trx interrupt status and disables the trx interrupt.
mbed_official 15:a81a8d6c1dfe 617 */
mbed_official 15:a81a8d6c1dfe 618 #define ENTER_TRX_REGION() \
mbed_official 15:a81a8d6c1dfe 619 { extint_chan_disable_callback(AT86RFX_IRQ_CHAN, EXTINT_CALLBACK_TYPE_DETECT)
mbed_official 15:a81a8d6c1dfe 620
mbed_official 15:a81a8d6c1dfe 621 /*
mbed_official 15:a81a8d6c1dfe 622 * This macro restores the transceiver interrupt status
mbed_official 15:a81a8d6c1dfe 623 */
mbed_official 15:a81a8d6c1dfe 624 #define LEAVE_TRX_REGION() \
mbed_official 15:a81a8d6c1dfe 625 extint_chan_enable_callback(AT86RFX_IRQ_CHAN, EXTINT_CALLBACK_TYPE_DETECT); }
mbed_official 15:a81a8d6c1dfe 626
mbed_official 15:a81a8d6c1dfe 627 /** @} */
mbed_official 15:a81a8d6c1dfe 628
mbed_official 15:a81a8d6c1dfe 629 /**
mbed_official 15:a81a8d6c1dfe 630 * \brief Turns off the specified LEDs.
mbed_official 15:a81a8d6c1dfe 631 *
mbed_official 15:a81a8d6c1dfe 632 * \param led_gpio LED to turn off (LEDx_GPIO).
mbed_official 15:a81a8d6c1dfe 633 *
mbed_official 15:a81a8d6c1dfe 634 * \note The pins of the specified LEDs are set to GPIO output mode.
mbed_official 15:a81a8d6c1dfe 635 */
mbed_official 15:a81a8d6c1dfe 636 #define LED_Off(led_gpio) port_pin_set_output_level(led_gpio,true)
mbed_official 15:a81a8d6c1dfe 637
mbed_official 15:a81a8d6c1dfe 638 /**
mbed_official 15:a81a8d6c1dfe 639 * \brief Turns on the specified LEDs.
mbed_official 15:a81a8d6c1dfe 640 *
mbed_official 15:a81a8d6c1dfe 641 * \param led_gpio LED to turn on (LEDx_GPIO).
mbed_official 15:a81a8d6c1dfe 642 *
mbed_official 15:a81a8d6c1dfe 643 * \note The pins of the specified LEDs are set to GPIO output mode.
mbed_official 15:a81a8d6c1dfe 644 */
mbed_official 15:a81a8d6c1dfe 645 #define LED_On(led_gpio) port_pin_set_output_level(led_gpio,false)
mbed_official 15:a81a8d6c1dfe 646
mbed_official 15:a81a8d6c1dfe 647 /**
mbed_official 15:a81a8d6c1dfe 648 * \brief Toggles the specified LEDs.
mbed_official 15:a81a8d6c1dfe 649 *
mbed_official 15:a81a8d6c1dfe 650 * \param led_gpio LED to toggle (LEDx_GPIO).
mbed_official 15:a81a8d6c1dfe 651 *
mbed_official 15:a81a8d6c1dfe 652 * \note The pins of the specified LEDs are set to GPIO output mode.
mbed_official 15:a81a8d6c1dfe 653 */
mbed_official 15:a81a8d6c1dfe 654 #define LED_Toggle(led_gpio) port_pin_toggle_output_level(led_gpio)
mbed_official 15:a81a8d6c1dfe 655
mbed_official 15:a81a8d6c1dfe 656 /** @} */
mbed_official 15:a81a8d6c1dfe 657
mbed_official 15:a81a8d6c1dfe 658 #ifdef __cplusplus
mbed_official 15:a81a8d6c1dfe 659 }
mbed_official 15:a81a8d6c1dfe 660 #endif
mbed_official 15:a81a8d6c1dfe 661
mbed_official 15:a81a8d6c1dfe 662 #endif /* SAMD21_XPLAINED_PRO_H_INCLUDED */