samd21e16b.h 43 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641
  1. /**
  2. * \file
  3. *
  4. * \brief Peripheral I/O description for SAMD21E16B
  5. *
  6. * Copyright (c) 2014-2015 Atmel Corporation. All rights reserved.
  7. *
  8. * \asf_license_start
  9. *
  10. * \page License
  11. *
  12. * Redistribution and use in source and binary forms, with or without
  13. * modification, are permitted provided that the following conditions are met:
  14. *
  15. * 1. Redistributions of source code must retain the above copyright notice,
  16. * this list of conditions and the following disclaimer.
  17. *
  18. * 2. Redistributions in binary form must reproduce the above copyright notice,
  19. * this list of conditions and the following disclaimer in the documentation
  20. * and/or other materials provided with the distribution.
  21. *
  22. * 3. The name of Atmel may not be used to endorse or promote products derived
  23. * from this software without specific prior written permission.
  24. *
  25. * 4. This software may only be redistributed and used in connection with an
  26. * Atmel microcontroller product.
  27. *
  28. * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
  29. * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  30. * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
  31. * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
  32. * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  33. * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  34. * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  35. * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
  36. * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
  37. * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  38. * POSSIBILITY OF SUCH DAMAGE.
  39. *
  40. * \asf_license_stop
  41. *
  42. */
  43. #ifndef _SAMD21E16B_PIO_
  44. #define _SAMD21E16B_PIO_
  45. #define PIN_PA00 0 /**< \brief Pin Number for PA00 */
  46. #define PORT_PA00 (1ul << 0) /**< \brief PORT Mask for PA00 */
  47. #define PIN_PA01 1 /**< \brief Pin Number for PA01 */
  48. #define PORT_PA01 (1ul << 1) /**< \brief PORT Mask for PA01 */
  49. #define PIN_PA02 2 /**< \brief Pin Number for PA02 */
  50. #define PORT_PA02 (1ul << 2) /**< \brief PORT Mask for PA02 */
  51. #define PIN_PA03 3 /**< \brief Pin Number for PA03 */
  52. #define PORT_PA03 (1ul << 3) /**< \brief PORT Mask for PA03 */
  53. #define PIN_PA04 4 /**< \brief Pin Number for PA04 */
  54. #define PORT_PA04 (1ul << 4) /**< \brief PORT Mask for PA04 */
  55. #define PIN_PA05 5 /**< \brief Pin Number for PA05 */
  56. #define PORT_PA05 (1ul << 5) /**< \brief PORT Mask for PA05 */
  57. #define PIN_PA06 6 /**< \brief Pin Number for PA06 */
  58. #define PORT_PA06 (1ul << 6) /**< \brief PORT Mask for PA06 */
  59. #define PIN_PA07 7 /**< \brief Pin Number for PA07 */
  60. #define PORT_PA07 (1ul << 7) /**< \brief PORT Mask for PA07 */
  61. #define PIN_PA08 8 /**< \brief Pin Number for PA08 */
  62. #define PORT_PA08 (1ul << 8) /**< \brief PORT Mask for PA08 */
  63. #define PIN_PA09 9 /**< \brief Pin Number for PA09 */
  64. #define PORT_PA09 (1ul << 9) /**< \brief PORT Mask for PA09 */
  65. #define PIN_PA10 10 /**< \brief Pin Number for PA10 */
  66. #define PORT_PA10 (1ul << 10) /**< \brief PORT Mask for PA10 */
  67. #define PIN_PA11 11 /**< \brief Pin Number for PA11 */
  68. #define PORT_PA11 (1ul << 11) /**< \brief PORT Mask for PA11 */
  69. #define PIN_PA14 14 /**< \brief Pin Number for PA14 */
  70. #define PORT_PA14 (1ul << 14) /**< \brief PORT Mask for PA14 */
  71. #define PIN_PA15 15 /**< \brief Pin Number for PA15 */
  72. #define PORT_PA15 (1ul << 15) /**< \brief PORT Mask for PA15 */
  73. #define PIN_PA16 16 /**< \brief Pin Number for PA16 */
  74. #define PORT_PA16 (1ul << 16) /**< \brief PORT Mask for PA16 */
  75. #define PIN_PA17 17 /**< \brief Pin Number for PA17 */
  76. #define PORT_PA17 (1ul << 17) /**< \brief PORT Mask for PA17 */
  77. #define PIN_PA18 18 /**< \brief Pin Number for PA18 */
  78. #define PORT_PA18 (1ul << 18) /**< \brief PORT Mask for PA18 */
  79. #define PIN_PA19 19 /**< \brief Pin Number for PA19 */
  80. #define PORT_PA19 (1ul << 19) /**< \brief PORT Mask for PA19 */
  81. #define PIN_PA22 22 /**< \brief Pin Number for PA22 */
  82. #define PORT_PA22 (1ul << 22) /**< \brief PORT Mask for PA22 */
  83. #define PIN_PA23 23 /**< \brief Pin Number for PA23 */
  84. #define PORT_PA23 (1ul << 23) /**< \brief PORT Mask for PA23 */
  85. #define PIN_PA24 24 /**< \brief Pin Number for PA24 */
  86. #define PORT_PA24 (1ul << 24) /**< \brief PORT Mask for PA24 */
  87. #define PIN_PA25 25 /**< \brief Pin Number for PA25 */
  88. #define PORT_PA25 (1ul << 25) /**< \brief PORT Mask for PA25 */
  89. #define PIN_PA27 27 /**< \brief Pin Number for PA27 */
  90. #define PORT_PA27 (1ul << 27) /**< \brief PORT Mask for PA27 */
  91. #define PIN_PA28 28 /**< \brief Pin Number for PA28 */
  92. #define PORT_PA28 (1ul << 28) /**< \brief PORT Mask for PA28 */
  93. #define PIN_PA30 30 /**< \brief Pin Number for PA30 */
  94. #define PORT_PA30 (1ul << 30) /**< \brief PORT Mask for PA30 */
  95. #define PIN_PA31 31 /**< \brief Pin Number for PA31 */
  96. #define PORT_PA31 (1ul << 31) /**< \brief PORT Mask for PA31 */
  97. /* ========== PORT definition for GCLK peripheral ========== */
  98. #define PIN_PA14H_GCLK_IO0 14L /**< \brief GCLK signal: IO0 on PA14 mux H */
  99. #define MUX_PA14H_GCLK_IO0 7L
  100. #define PINMUX_PA14H_GCLK_IO0 ((PIN_PA14H_GCLK_IO0 << 16) | MUX_PA14H_GCLK_IO0)
  101. #define PORT_PA14H_GCLK_IO0 (1ul << 14)
  102. #define PIN_PA27H_GCLK_IO0 27L /**< \brief GCLK signal: IO0 on PA27 mux H */
  103. #define MUX_PA27H_GCLK_IO0 7L
  104. #define PINMUX_PA27H_GCLK_IO0 ((PIN_PA27H_GCLK_IO0 << 16) | MUX_PA27H_GCLK_IO0)
  105. #define PORT_PA27H_GCLK_IO0 (1ul << 27)
  106. #define PIN_PA28H_GCLK_IO0 28L /**< \brief GCLK signal: IO0 on PA28 mux H */
  107. #define MUX_PA28H_GCLK_IO0 7L
  108. #define PINMUX_PA28H_GCLK_IO0 ((PIN_PA28H_GCLK_IO0 << 16) | MUX_PA28H_GCLK_IO0)
  109. #define PORT_PA28H_GCLK_IO0 (1ul << 28)
  110. #define PIN_PA30H_GCLK_IO0 30L /**< \brief GCLK signal: IO0 on PA30 mux H */
  111. #define MUX_PA30H_GCLK_IO0 7L
  112. #define PINMUX_PA30H_GCLK_IO0 ((PIN_PA30H_GCLK_IO0 << 16) | MUX_PA30H_GCLK_IO0)
  113. #define PORT_PA30H_GCLK_IO0 (1ul << 30)
  114. #define PIN_PA15H_GCLK_IO1 15L /**< \brief GCLK signal: IO1 on PA15 mux H */
  115. #define MUX_PA15H_GCLK_IO1 7L
  116. #define PINMUX_PA15H_GCLK_IO1 ((PIN_PA15H_GCLK_IO1 << 16) | MUX_PA15H_GCLK_IO1)
  117. #define PORT_PA15H_GCLK_IO1 (1ul << 15)
  118. #define PIN_PA16H_GCLK_IO2 16L /**< \brief GCLK signal: IO2 on PA16 mux H */
  119. #define MUX_PA16H_GCLK_IO2 7L
  120. #define PINMUX_PA16H_GCLK_IO2 ((PIN_PA16H_GCLK_IO2 << 16) | MUX_PA16H_GCLK_IO2)
  121. #define PORT_PA16H_GCLK_IO2 (1ul << 16)
  122. #define PIN_PA17H_GCLK_IO3 17L /**< \brief GCLK signal: IO3 on PA17 mux H */
  123. #define MUX_PA17H_GCLK_IO3 7L
  124. #define PINMUX_PA17H_GCLK_IO3 ((PIN_PA17H_GCLK_IO3 << 16) | MUX_PA17H_GCLK_IO3)
  125. #define PORT_PA17H_GCLK_IO3 (1ul << 17)
  126. #define PIN_PA10H_GCLK_IO4 10L /**< \brief GCLK signal: IO4 on PA10 mux H */
  127. #define MUX_PA10H_GCLK_IO4 7L
  128. #define PINMUX_PA10H_GCLK_IO4 ((PIN_PA10H_GCLK_IO4 << 16) | MUX_PA10H_GCLK_IO4)
  129. #define PORT_PA10H_GCLK_IO4 (1ul << 10)
  130. #define PIN_PA11H_GCLK_IO5 11L /**< \brief GCLK signal: IO5 on PA11 mux H */
  131. #define MUX_PA11H_GCLK_IO5 7L
  132. #define PINMUX_PA11H_GCLK_IO5 ((PIN_PA11H_GCLK_IO5 << 16) | MUX_PA11H_GCLK_IO5)
  133. #define PORT_PA11H_GCLK_IO5 (1ul << 11)
  134. #define PIN_PA22H_GCLK_IO6 22L /**< \brief GCLK signal: IO6 on PA22 mux H */
  135. #define MUX_PA22H_GCLK_IO6 7L
  136. #define PINMUX_PA22H_GCLK_IO6 ((PIN_PA22H_GCLK_IO6 << 16) | MUX_PA22H_GCLK_IO6)
  137. #define PORT_PA22H_GCLK_IO6 (1ul << 22)
  138. #define PIN_PA23H_GCLK_IO7 23L /**< \brief GCLK signal: IO7 on PA23 mux H */
  139. #define MUX_PA23H_GCLK_IO7 7L
  140. #define PINMUX_PA23H_GCLK_IO7 ((PIN_PA23H_GCLK_IO7 << 16) | MUX_PA23H_GCLK_IO7)
  141. #define PORT_PA23H_GCLK_IO7 (1ul << 23)
  142. /* ========== PORT definition for EIC peripheral ========== */
  143. #define PIN_PA16A_EIC_EXTINT0 16L /**< \brief EIC signal: EXTINT0 on PA16 mux A */
  144. #define MUX_PA16A_EIC_EXTINT0 0L
  145. #define PINMUX_PA16A_EIC_EXTINT0 ((PIN_PA16A_EIC_EXTINT0 << 16) | MUX_PA16A_EIC_EXTINT0)
  146. #define PORT_PA16A_EIC_EXTINT0 (1ul << 16)
  147. #define PIN_PA00A_EIC_EXTINT0 0L /**< \brief EIC signal: EXTINT0 on PA00 mux A */
  148. #define MUX_PA00A_EIC_EXTINT0 0L
  149. #define PINMUX_PA00A_EIC_EXTINT0 ((PIN_PA00A_EIC_EXTINT0 << 16) | MUX_PA00A_EIC_EXTINT0)
  150. #define PORT_PA00A_EIC_EXTINT0 (1ul << 0)
  151. #define PIN_PA17A_EIC_EXTINT1 17L /**< \brief EIC signal: EXTINT1 on PA17 mux A */
  152. #define MUX_PA17A_EIC_EXTINT1 0L
  153. #define PINMUX_PA17A_EIC_EXTINT1 ((PIN_PA17A_EIC_EXTINT1 << 16) | MUX_PA17A_EIC_EXTINT1)
  154. #define PORT_PA17A_EIC_EXTINT1 (1ul << 17)
  155. #define PIN_PA01A_EIC_EXTINT1 1L /**< \brief EIC signal: EXTINT1 on PA01 mux A */
  156. #define MUX_PA01A_EIC_EXTINT1 0L
  157. #define PINMUX_PA01A_EIC_EXTINT1 ((PIN_PA01A_EIC_EXTINT1 << 16) | MUX_PA01A_EIC_EXTINT1)
  158. #define PORT_PA01A_EIC_EXTINT1 (1ul << 1)
  159. #define PIN_PA02A_EIC_EXTINT2 2L /**< \brief EIC signal: EXTINT2 on PA02 mux A */
  160. #define MUX_PA02A_EIC_EXTINT2 0L
  161. #define PINMUX_PA02A_EIC_EXTINT2 ((PIN_PA02A_EIC_EXTINT2 << 16) | MUX_PA02A_EIC_EXTINT2)
  162. #define PORT_PA02A_EIC_EXTINT2 (1ul << 2)
  163. #define PIN_PA18A_EIC_EXTINT2 18L /**< \brief EIC signal: EXTINT2 on PA18 mux A */
  164. #define MUX_PA18A_EIC_EXTINT2 0L
  165. #define PINMUX_PA18A_EIC_EXTINT2 ((PIN_PA18A_EIC_EXTINT2 << 16) | MUX_PA18A_EIC_EXTINT2)
  166. #define PORT_PA18A_EIC_EXTINT2 (1ul << 18)
  167. #define PIN_PA03A_EIC_EXTINT3 3L /**< \brief EIC signal: EXTINT3 on PA03 mux A */
  168. #define MUX_PA03A_EIC_EXTINT3 0L
  169. #define PINMUX_PA03A_EIC_EXTINT3 ((PIN_PA03A_EIC_EXTINT3 << 16) | MUX_PA03A_EIC_EXTINT3)
  170. #define PORT_PA03A_EIC_EXTINT3 (1ul << 3)
  171. #define PIN_PA19A_EIC_EXTINT3 19L /**< \brief EIC signal: EXTINT3 on PA19 mux A */
  172. #define MUX_PA19A_EIC_EXTINT3 0L
  173. #define PINMUX_PA19A_EIC_EXTINT3 ((PIN_PA19A_EIC_EXTINT3 << 16) | MUX_PA19A_EIC_EXTINT3)
  174. #define PORT_PA19A_EIC_EXTINT3 (1ul << 19)
  175. #define PIN_PA04A_EIC_EXTINT4 4L /**< \brief EIC signal: EXTINT4 on PA04 mux A */
  176. #define MUX_PA04A_EIC_EXTINT4 0L
  177. #define PINMUX_PA04A_EIC_EXTINT4 ((PIN_PA04A_EIC_EXTINT4 << 16) | MUX_PA04A_EIC_EXTINT4)
  178. #define PORT_PA04A_EIC_EXTINT4 (1ul << 4)
  179. #define PIN_PA05A_EIC_EXTINT5 5L /**< \brief EIC signal: EXTINT5 on PA05 mux A */
  180. #define MUX_PA05A_EIC_EXTINT5 0L
  181. #define PINMUX_PA05A_EIC_EXTINT5 ((PIN_PA05A_EIC_EXTINT5 << 16) | MUX_PA05A_EIC_EXTINT5)
  182. #define PORT_PA05A_EIC_EXTINT5 (1ul << 5)
  183. #define PIN_PA06A_EIC_EXTINT6 6L /**< \brief EIC signal: EXTINT6 on PA06 mux A */
  184. #define MUX_PA06A_EIC_EXTINT6 0L
  185. #define PINMUX_PA06A_EIC_EXTINT6 ((PIN_PA06A_EIC_EXTINT6 << 16) | MUX_PA06A_EIC_EXTINT6)
  186. #define PORT_PA06A_EIC_EXTINT6 (1ul << 6)
  187. #define PIN_PA22A_EIC_EXTINT6 22L /**< \brief EIC signal: EXTINT6 on PA22 mux A */
  188. #define MUX_PA22A_EIC_EXTINT6 0L
  189. #define PINMUX_PA22A_EIC_EXTINT6 ((PIN_PA22A_EIC_EXTINT6 << 16) | MUX_PA22A_EIC_EXTINT6)
  190. #define PORT_PA22A_EIC_EXTINT6 (1ul << 22)
  191. #define PIN_PA07A_EIC_EXTINT7 7L /**< \brief EIC signal: EXTINT7 on PA07 mux A */
  192. #define MUX_PA07A_EIC_EXTINT7 0L
  193. #define PINMUX_PA07A_EIC_EXTINT7 ((PIN_PA07A_EIC_EXTINT7 << 16) | MUX_PA07A_EIC_EXTINT7)
  194. #define PORT_PA07A_EIC_EXTINT7 (1ul << 7)
  195. #define PIN_PA23A_EIC_EXTINT7 23L /**< \brief EIC signal: EXTINT7 on PA23 mux A */
  196. #define MUX_PA23A_EIC_EXTINT7 0L
  197. #define PINMUX_PA23A_EIC_EXTINT7 ((PIN_PA23A_EIC_EXTINT7 << 16) | MUX_PA23A_EIC_EXTINT7)
  198. #define PORT_PA23A_EIC_EXTINT7 (1ul << 23)
  199. #define PIN_PA28A_EIC_EXTINT8 28L /**< \brief EIC signal: EXTINT8 on PA28 mux A */
  200. #define MUX_PA28A_EIC_EXTINT8 0L
  201. #define PINMUX_PA28A_EIC_EXTINT8 ((PIN_PA28A_EIC_EXTINT8 << 16) | MUX_PA28A_EIC_EXTINT8)
  202. #define PORT_PA28A_EIC_EXTINT8 (1ul << 28)
  203. #define PIN_PA09A_EIC_EXTINT9 9L /**< \brief EIC signal: EXTINT9 on PA09 mux A */
  204. #define MUX_PA09A_EIC_EXTINT9 0L
  205. #define PINMUX_PA09A_EIC_EXTINT9 ((PIN_PA09A_EIC_EXTINT9 << 16) | MUX_PA09A_EIC_EXTINT9)
  206. #define PORT_PA09A_EIC_EXTINT9 (1ul << 9)
  207. #define PIN_PA10A_EIC_EXTINT10 10L /**< \brief EIC signal: EXTINT10 on PA10 mux A */
  208. #define MUX_PA10A_EIC_EXTINT10 0L
  209. #define PINMUX_PA10A_EIC_EXTINT10 ((PIN_PA10A_EIC_EXTINT10 << 16) | MUX_PA10A_EIC_EXTINT10)
  210. #define PORT_PA10A_EIC_EXTINT10 (1ul << 10)
  211. #define PIN_PA30A_EIC_EXTINT10 30L /**< \brief EIC signal: EXTINT10 on PA30 mux A */
  212. #define MUX_PA30A_EIC_EXTINT10 0L
  213. #define PINMUX_PA30A_EIC_EXTINT10 ((PIN_PA30A_EIC_EXTINT10 << 16) | MUX_PA30A_EIC_EXTINT10)
  214. #define PORT_PA30A_EIC_EXTINT10 (1ul << 30)
  215. #define PIN_PA11A_EIC_EXTINT11 11L /**< \brief EIC signal: EXTINT11 on PA11 mux A */
  216. #define MUX_PA11A_EIC_EXTINT11 0L
  217. #define PINMUX_PA11A_EIC_EXTINT11 ((PIN_PA11A_EIC_EXTINT11 << 16) | MUX_PA11A_EIC_EXTINT11)
  218. #define PORT_PA11A_EIC_EXTINT11 (1ul << 11)
  219. #define PIN_PA31A_EIC_EXTINT11 31L /**< \brief EIC signal: EXTINT11 on PA31 mux A */
  220. #define MUX_PA31A_EIC_EXTINT11 0L
  221. #define PINMUX_PA31A_EIC_EXTINT11 ((PIN_PA31A_EIC_EXTINT11 << 16) | MUX_PA31A_EIC_EXTINT11)
  222. #define PORT_PA31A_EIC_EXTINT11 (1ul << 31)
  223. #define PIN_PA24A_EIC_EXTINT12 24L /**< \brief EIC signal: EXTINT12 on PA24 mux A */
  224. #define MUX_PA24A_EIC_EXTINT12 0L
  225. #define PINMUX_PA24A_EIC_EXTINT12 ((PIN_PA24A_EIC_EXTINT12 << 16) | MUX_PA24A_EIC_EXTINT12)
  226. #define PORT_PA24A_EIC_EXTINT12 (1ul << 24)
  227. #define PIN_PA25A_EIC_EXTINT13 25L /**< \brief EIC signal: EXTINT13 on PA25 mux A */
  228. #define MUX_PA25A_EIC_EXTINT13 0L
  229. #define PINMUX_PA25A_EIC_EXTINT13 ((PIN_PA25A_EIC_EXTINT13 << 16) | MUX_PA25A_EIC_EXTINT13)
  230. #define PORT_PA25A_EIC_EXTINT13 (1ul << 25)
  231. #define PIN_PA14A_EIC_EXTINT14 14L /**< \brief EIC signal: EXTINT14 on PA14 mux A */
  232. #define MUX_PA14A_EIC_EXTINT14 0L
  233. #define PINMUX_PA14A_EIC_EXTINT14 ((PIN_PA14A_EIC_EXTINT14 << 16) | MUX_PA14A_EIC_EXTINT14)
  234. #define PORT_PA14A_EIC_EXTINT14 (1ul << 14)
  235. #define PIN_PA27A_EIC_EXTINT15 27L /**< \brief EIC signal: EXTINT15 on PA27 mux A */
  236. #define MUX_PA27A_EIC_EXTINT15 0L
  237. #define PINMUX_PA27A_EIC_EXTINT15 ((PIN_PA27A_EIC_EXTINT15 << 16) | MUX_PA27A_EIC_EXTINT15)
  238. #define PORT_PA27A_EIC_EXTINT15 (1ul << 27)
  239. #define PIN_PA15A_EIC_EXTINT15 15L /**< \brief EIC signal: EXTINT15 on PA15 mux A */
  240. #define MUX_PA15A_EIC_EXTINT15 0L
  241. #define PINMUX_PA15A_EIC_EXTINT15 ((PIN_PA15A_EIC_EXTINT15 << 16) | MUX_PA15A_EIC_EXTINT15)
  242. #define PORT_PA15A_EIC_EXTINT15 (1ul << 15)
  243. #define PIN_PA08A_EIC_NMI 8L /**< \brief EIC signal: NMI on PA08 mux A */
  244. #define MUX_PA08A_EIC_NMI 0L
  245. #define PINMUX_PA08A_EIC_NMI ((PIN_PA08A_EIC_NMI << 16) | MUX_PA08A_EIC_NMI)
  246. #define PORT_PA08A_EIC_NMI (1ul << 8)
  247. /* ========== PORT definition for USB peripheral ========== */
  248. #define PIN_PA24G_USB_DM 24L /**< \brief USB signal: DM on PA24 mux G */
  249. #define MUX_PA24G_USB_DM 6L
  250. #define PINMUX_PA24G_USB_DM ((PIN_PA24G_USB_DM << 16) | MUX_PA24G_USB_DM)
  251. #define PORT_PA24G_USB_DM (1ul << 24)
  252. #define PIN_PA25G_USB_DP 25L /**< \brief USB signal: DP on PA25 mux G */
  253. #define MUX_PA25G_USB_DP 6L
  254. #define PINMUX_PA25G_USB_DP ((PIN_PA25G_USB_DP << 16) | MUX_PA25G_USB_DP)
  255. #define PORT_PA25G_USB_DP (1ul << 25)
  256. #define PIN_PA23G_USB_SOF_1KHZ 23L /**< \brief USB signal: SOF_1KHZ on PA23 mux G */
  257. #define MUX_PA23G_USB_SOF_1KHZ 6L
  258. #define PINMUX_PA23G_USB_SOF_1KHZ ((PIN_PA23G_USB_SOF_1KHZ << 16) | MUX_PA23G_USB_SOF_1KHZ)
  259. #define PORT_PA23G_USB_SOF_1KHZ (1ul << 23)
  260. /* ========== PORT definition for SERCOM0 peripheral ========== */
  261. #define PIN_PA04D_SERCOM0_PAD0 4L /**< \brief SERCOM0 signal: PAD0 on PA04 mux D */
  262. #define MUX_PA04D_SERCOM0_PAD0 3L
  263. #define PINMUX_PA04D_SERCOM0_PAD0 ((PIN_PA04D_SERCOM0_PAD0 << 16) | MUX_PA04D_SERCOM0_PAD0)
  264. #define PORT_PA04D_SERCOM0_PAD0 (1ul << 4)
  265. #define PIN_PA08C_SERCOM0_PAD0 8L /**< \brief SERCOM0 signal: PAD0 on PA08 mux C */
  266. #define MUX_PA08C_SERCOM0_PAD0 2L
  267. #define PINMUX_PA08C_SERCOM0_PAD0 ((PIN_PA08C_SERCOM0_PAD0 << 16) | MUX_PA08C_SERCOM0_PAD0)
  268. #define PORT_PA08C_SERCOM0_PAD0 (1ul << 8)
  269. #define PIN_PA05D_SERCOM0_PAD1 5L /**< \brief SERCOM0 signal: PAD1 on PA05 mux D */
  270. #define MUX_PA05D_SERCOM0_PAD1 3L
  271. #define PINMUX_PA05D_SERCOM0_PAD1 ((PIN_PA05D_SERCOM0_PAD1 << 16) | MUX_PA05D_SERCOM0_PAD1)
  272. #define PORT_PA05D_SERCOM0_PAD1 (1ul << 5)
  273. #define PIN_PA09C_SERCOM0_PAD1 9L /**< \brief SERCOM0 signal: PAD1 on PA09 mux C */
  274. #define MUX_PA09C_SERCOM0_PAD1 2L
  275. #define PINMUX_PA09C_SERCOM0_PAD1 ((PIN_PA09C_SERCOM0_PAD1 << 16) | MUX_PA09C_SERCOM0_PAD1)
  276. #define PORT_PA09C_SERCOM0_PAD1 (1ul << 9)
  277. #define PIN_PA06D_SERCOM0_PAD2 6L /**< \brief SERCOM0 signal: PAD2 on PA06 mux D */
  278. #define MUX_PA06D_SERCOM0_PAD2 3L
  279. #define PINMUX_PA06D_SERCOM0_PAD2 ((PIN_PA06D_SERCOM0_PAD2 << 16) | MUX_PA06D_SERCOM0_PAD2)
  280. #define PORT_PA06D_SERCOM0_PAD2 (1ul << 6)
  281. #define PIN_PA10C_SERCOM0_PAD2 10L /**< \brief SERCOM0 signal: PAD2 on PA10 mux C */
  282. #define MUX_PA10C_SERCOM0_PAD2 2L
  283. #define PINMUX_PA10C_SERCOM0_PAD2 ((PIN_PA10C_SERCOM0_PAD2 << 16) | MUX_PA10C_SERCOM0_PAD2)
  284. #define PORT_PA10C_SERCOM0_PAD2 (1ul << 10)
  285. #define PIN_PA07D_SERCOM0_PAD3 7L /**< \brief SERCOM0 signal: PAD3 on PA07 mux D */
  286. #define MUX_PA07D_SERCOM0_PAD3 3L
  287. #define PINMUX_PA07D_SERCOM0_PAD3 ((PIN_PA07D_SERCOM0_PAD3 << 16) | MUX_PA07D_SERCOM0_PAD3)
  288. #define PORT_PA07D_SERCOM0_PAD3 (1ul << 7)
  289. #define PIN_PA11C_SERCOM0_PAD3 11L /**< \brief SERCOM0 signal: PAD3 on PA11 mux C */
  290. #define MUX_PA11C_SERCOM0_PAD3 2L
  291. #define PINMUX_PA11C_SERCOM0_PAD3 ((PIN_PA11C_SERCOM0_PAD3 << 16) | MUX_PA11C_SERCOM0_PAD3)
  292. #define PORT_PA11C_SERCOM0_PAD3 (1ul << 11)
  293. /* ========== PORT definition for SERCOM1 peripheral ========== */
  294. #define PIN_PA16C_SERCOM1_PAD0 16L /**< \brief SERCOM1 signal: PAD0 on PA16 mux C */
  295. #define MUX_PA16C_SERCOM1_PAD0 2L
  296. #define PINMUX_PA16C_SERCOM1_PAD0 ((PIN_PA16C_SERCOM1_PAD0 << 16) | MUX_PA16C_SERCOM1_PAD0)
  297. #define PORT_PA16C_SERCOM1_PAD0 (1ul << 16)
  298. #define PIN_PA00D_SERCOM1_PAD0 0L /**< \brief SERCOM1 signal: PAD0 on PA00 mux D */
  299. #define MUX_PA00D_SERCOM1_PAD0 3L
  300. #define PINMUX_PA00D_SERCOM1_PAD0 ((PIN_PA00D_SERCOM1_PAD0 << 16) | MUX_PA00D_SERCOM1_PAD0)
  301. #define PORT_PA00D_SERCOM1_PAD0 (1ul << 0)
  302. #define PIN_PA17C_SERCOM1_PAD1 17L /**< \brief SERCOM1 signal: PAD1 on PA17 mux C */
  303. #define MUX_PA17C_SERCOM1_PAD1 2L
  304. #define PINMUX_PA17C_SERCOM1_PAD1 ((PIN_PA17C_SERCOM1_PAD1 << 16) | MUX_PA17C_SERCOM1_PAD1)
  305. #define PORT_PA17C_SERCOM1_PAD1 (1ul << 17)
  306. #define PIN_PA01D_SERCOM1_PAD1 1L /**< \brief SERCOM1 signal: PAD1 on PA01 mux D */
  307. #define MUX_PA01D_SERCOM1_PAD1 3L
  308. #define PINMUX_PA01D_SERCOM1_PAD1 ((PIN_PA01D_SERCOM1_PAD1 << 16) | MUX_PA01D_SERCOM1_PAD1)
  309. #define PORT_PA01D_SERCOM1_PAD1 (1ul << 1)
  310. #define PIN_PA30D_SERCOM1_PAD2 30L /**< \brief SERCOM1 signal: PAD2 on PA30 mux D */
  311. #define MUX_PA30D_SERCOM1_PAD2 3L
  312. #define PINMUX_PA30D_SERCOM1_PAD2 ((PIN_PA30D_SERCOM1_PAD2 << 16) | MUX_PA30D_SERCOM1_PAD2)
  313. #define PORT_PA30D_SERCOM1_PAD2 (1ul << 30)
  314. #define PIN_PA18C_SERCOM1_PAD2 18L /**< \brief SERCOM1 signal: PAD2 on PA18 mux C */
  315. #define MUX_PA18C_SERCOM1_PAD2 2L
  316. #define PINMUX_PA18C_SERCOM1_PAD2 ((PIN_PA18C_SERCOM1_PAD2 << 16) | MUX_PA18C_SERCOM1_PAD2)
  317. #define PORT_PA18C_SERCOM1_PAD2 (1ul << 18)
  318. #define PIN_PA31D_SERCOM1_PAD3 31L /**< \brief SERCOM1 signal: PAD3 on PA31 mux D */
  319. #define MUX_PA31D_SERCOM1_PAD3 3L
  320. #define PINMUX_PA31D_SERCOM1_PAD3 ((PIN_PA31D_SERCOM1_PAD3 << 16) | MUX_PA31D_SERCOM1_PAD3)
  321. #define PORT_PA31D_SERCOM1_PAD3 (1ul << 31)
  322. #define PIN_PA19C_SERCOM1_PAD3 19L /**< \brief SERCOM1 signal: PAD3 on PA19 mux C */
  323. #define MUX_PA19C_SERCOM1_PAD3 2L
  324. #define PINMUX_PA19C_SERCOM1_PAD3 ((PIN_PA19C_SERCOM1_PAD3 << 16) | MUX_PA19C_SERCOM1_PAD3)
  325. #define PORT_PA19C_SERCOM1_PAD3 (1ul << 19)
  326. /* ========== PORT definition for SERCOM2 peripheral ========== */
  327. #define PIN_PA08D_SERCOM2_PAD0 8L /**< \brief SERCOM2 signal: PAD0 on PA08 mux D */
  328. #define MUX_PA08D_SERCOM2_PAD0 3L
  329. #define PINMUX_PA08D_SERCOM2_PAD0 ((PIN_PA08D_SERCOM2_PAD0 << 16) | MUX_PA08D_SERCOM2_PAD0)
  330. #define PORT_PA08D_SERCOM2_PAD0 (1ul << 8)
  331. #define PIN_PA09D_SERCOM2_PAD1 9L /**< \brief SERCOM2 signal: PAD1 on PA09 mux D */
  332. #define MUX_PA09D_SERCOM2_PAD1 3L
  333. #define PINMUX_PA09D_SERCOM2_PAD1 ((PIN_PA09D_SERCOM2_PAD1 << 16) | MUX_PA09D_SERCOM2_PAD1)
  334. #define PORT_PA09D_SERCOM2_PAD1 (1ul << 9)
  335. #define PIN_PA10D_SERCOM2_PAD2 10L /**< \brief SERCOM2 signal: PAD2 on PA10 mux D */
  336. #define MUX_PA10D_SERCOM2_PAD2 3L
  337. #define PINMUX_PA10D_SERCOM2_PAD2 ((PIN_PA10D_SERCOM2_PAD2 << 16) | MUX_PA10D_SERCOM2_PAD2)
  338. #define PORT_PA10D_SERCOM2_PAD2 (1ul << 10)
  339. #define PIN_PA14C_SERCOM2_PAD2 14L /**< \brief SERCOM2 signal: PAD2 on PA14 mux C */
  340. #define MUX_PA14C_SERCOM2_PAD2 2L
  341. #define PINMUX_PA14C_SERCOM2_PAD2 ((PIN_PA14C_SERCOM2_PAD2 << 16) | MUX_PA14C_SERCOM2_PAD2)
  342. #define PORT_PA14C_SERCOM2_PAD2 (1ul << 14)
  343. #define PIN_PA11D_SERCOM2_PAD3 11L /**< \brief SERCOM2 signal: PAD3 on PA11 mux D */
  344. #define MUX_PA11D_SERCOM2_PAD3 3L
  345. #define PINMUX_PA11D_SERCOM2_PAD3 ((PIN_PA11D_SERCOM2_PAD3 << 16) | MUX_PA11D_SERCOM2_PAD3)
  346. #define PORT_PA11D_SERCOM2_PAD3 (1ul << 11)
  347. #define PIN_PA15C_SERCOM2_PAD3 15L /**< \brief SERCOM2 signal: PAD3 on PA15 mux C */
  348. #define MUX_PA15C_SERCOM2_PAD3 2L
  349. #define PINMUX_PA15C_SERCOM2_PAD3 ((PIN_PA15C_SERCOM2_PAD3 << 16) | MUX_PA15C_SERCOM2_PAD3)
  350. #define PORT_PA15C_SERCOM2_PAD3 (1ul << 15)
  351. /* ========== PORT definition for SERCOM3 peripheral ========== */
  352. #define PIN_PA16D_SERCOM3_PAD0 16L /**< \brief SERCOM3 signal: PAD0 on PA16 mux D */
  353. #define MUX_PA16D_SERCOM3_PAD0 3L
  354. #define PINMUX_PA16D_SERCOM3_PAD0 ((PIN_PA16D_SERCOM3_PAD0 << 16) | MUX_PA16D_SERCOM3_PAD0)
  355. #define PORT_PA16D_SERCOM3_PAD0 (1ul << 16)
  356. #define PIN_PA22C_SERCOM3_PAD0 22L /**< \brief SERCOM3 signal: PAD0 on PA22 mux C */
  357. #define MUX_PA22C_SERCOM3_PAD0 2L
  358. #define PINMUX_PA22C_SERCOM3_PAD0 ((PIN_PA22C_SERCOM3_PAD0 << 16) | MUX_PA22C_SERCOM3_PAD0)
  359. #define PORT_PA22C_SERCOM3_PAD0 (1ul << 22)
  360. #define PIN_PA17D_SERCOM3_PAD1 17L /**< \brief SERCOM3 signal: PAD1 on PA17 mux D */
  361. #define MUX_PA17D_SERCOM3_PAD1 3L
  362. #define PINMUX_PA17D_SERCOM3_PAD1 ((PIN_PA17D_SERCOM3_PAD1 << 16) | MUX_PA17D_SERCOM3_PAD1)
  363. #define PORT_PA17D_SERCOM3_PAD1 (1ul << 17)
  364. #define PIN_PA23C_SERCOM3_PAD1 23L /**< \brief SERCOM3 signal: PAD1 on PA23 mux C */
  365. #define MUX_PA23C_SERCOM3_PAD1 2L
  366. #define PINMUX_PA23C_SERCOM3_PAD1 ((PIN_PA23C_SERCOM3_PAD1 << 16) | MUX_PA23C_SERCOM3_PAD1)
  367. #define PORT_PA23C_SERCOM3_PAD1 (1ul << 23)
  368. #define PIN_PA18D_SERCOM3_PAD2 18L /**< \brief SERCOM3 signal: PAD2 on PA18 mux D */
  369. #define MUX_PA18D_SERCOM3_PAD2 3L
  370. #define PINMUX_PA18D_SERCOM3_PAD2 ((PIN_PA18D_SERCOM3_PAD2 << 16) | MUX_PA18D_SERCOM3_PAD2)
  371. #define PORT_PA18D_SERCOM3_PAD2 (1ul << 18)
  372. #define PIN_PA24C_SERCOM3_PAD2 24L /**< \brief SERCOM3 signal: PAD2 on PA24 mux C */
  373. #define MUX_PA24C_SERCOM3_PAD2 2L
  374. #define PINMUX_PA24C_SERCOM3_PAD2 ((PIN_PA24C_SERCOM3_PAD2 << 16) | MUX_PA24C_SERCOM3_PAD2)
  375. #define PORT_PA24C_SERCOM3_PAD2 (1ul << 24)
  376. #define PIN_PA19D_SERCOM3_PAD3 19L /**< \brief SERCOM3 signal: PAD3 on PA19 mux D */
  377. #define MUX_PA19D_SERCOM3_PAD3 3L
  378. #define PINMUX_PA19D_SERCOM3_PAD3 ((PIN_PA19D_SERCOM3_PAD3 << 16) | MUX_PA19D_SERCOM3_PAD3)
  379. #define PORT_PA19D_SERCOM3_PAD3 (1ul << 19)
  380. #define PIN_PA25C_SERCOM3_PAD3 25L /**< \brief SERCOM3 signal: PAD3 on PA25 mux C */
  381. #define MUX_PA25C_SERCOM3_PAD3 2L
  382. #define PINMUX_PA25C_SERCOM3_PAD3 ((PIN_PA25C_SERCOM3_PAD3 << 16) | MUX_PA25C_SERCOM3_PAD3)
  383. #define PORT_PA25C_SERCOM3_PAD3 (1ul << 25)
  384. /* ========== PORT definition for TCC0 peripheral ========== */
  385. #define PIN_PA04E_TCC0_WO0 4L /**< \brief TCC0 signal: WO0 on PA04 mux E */
  386. #define MUX_PA04E_TCC0_WO0 4L
  387. #define PINMUX_PA04E_TCC0_WO0 ((PIN_PA04E_TCC0_WO0 << 16) | MUX_PA04E_TCC0_WO0)
  388. #define PORT_PA04E_TCC0_WO0 (1ul << 4)
  389. #define PIN_PA08E_TCC0_WO0 8L /**< \brief TCC0 signal: WO0 on PA08 mux E */
  390. #define MUX_PA08E_TCC0_WO0 4L
  391. #define PINMUX_PA08E_TCC0_WO0 ((PIN_PA08E_TCC0_WO0 << 16) | MUX_PA08E_TCC0_WO0)
  392. #define PORT_PA08E_TCC0_WO0 (1ul << 8)
  393. #define PIN_PA05E_TCC0_WO1 5L /**< \brief TCC0 signal: WO1 on PA05 mux E */
  394. #define MUX_PA05E_TCC0_WO1 4L
  395. #define PINMUX_PA05E_TCC0_WO1 ((PIN_PA05E_TCC0_WO1 << 16) | MUX_PA05E_TCC0_WO1)
  396. #define PORT_PA05E_TCC0_WO1 (1ul << 5)
  397. #define PIN_PA09E_TCC0_WO1 9L /**< \brief TCC0 signal: WO1 on PA09 mux E */
  398. #define MUX_PA09E_TCC0_WO1 4L
  399. #define PINMUX_PA09E_TCC0_WO1 ((PIN_PA09E_TCC0_WO1 << 16) | MUX_PA09E_TCC0_WO1)
  400. #define PORT_PA09E_TCC0_WO1 (1ul << 9)
  401. #define PIN_PA10F_TCC0_WO2 10L /**< \brief TCC0 signal: WO2 on PA10 mux F */
  402. #define MUX_PA10F_TCC0_WO2 5L
  403. #define PINMUX_PA10F_TCC0_WO2 ((PIN_PA10F_TCC0_WO2 << 16) | MUX_PA10F_TCC0_WO2)
  404. #define PORT_PA10F_TCC0_WO2 (1ul << 10)
  405. #define PIN_PA18F_TCC0_WO2 18L /**< \brief TCC0 signal: WO2 on PA18 mux F */
  406. #define MUX_PA18F_TCC0_WO2 5L
  407. #define PINMUX_PA18F_TCC0_WO2 ((PIN_PA18F_TCC0_WO2 << 16) | MUX_PA18F_TCC0_WO2)
  408. #define PORT_PA18F_TCC0_WO2 (1ul << 18)
  409. #define PIN_PA11F_TCC0_WO3 11L /**< \brief TCC0 signal: WO3 on PA11 mux F */
  410. #define MUX_PA11F_TCC0_WO3 5L
  411. #define PINMUX_PA11F_TCC0_WO3 ((PIN_PA11F_TCC0_WO3 << 16) | MUX_PA11F_TCC0_WO3)
  412. #define PORT_PA11F_TCC0_WO3 (1ul << 11)
  413. #define PIN_PA19F_TCC0_WO3 19L /**< \brief TCC0 signal: WO3 on PA19 mux F */
  414. #define MUX_PA19F_TCC0_WO3 5L
  415. #define PINMUX_PA19F_TCC0_WO3 ((PIN_PA19F_TCC0_WO3 << 16) | MUX_PA19F_TCC0_WO3)
  416. #define PORT_PA19F_TCC0_WO3 (1ul << 19)
  417. #define PIN_PA22F_TCC0_WO4 22L /**< \brief TCC0 signal: WO4 on PA22 mux F */
  418. #define MUX_PA22F_TCC0_WO4 5L
  419. #define PINMUX_PA22F_TCC0_WO4 ((PIN_PA22F_TCC0_WO4 << 16) | MUX_PA22F_TCC0_WO4)
  420. #define PORT_PA22F_TCC0_WO4 (1ul << 22)
  421. #define PIN_PA14F_TCC0_WO4 14L /**< \brief TCC0 signal: WO4 on PA14 mux F */
  422. #define MUX_PA14F_TCC0_WO4 5L
  423. #define PINMUX_PA14F_TCC0_WO4 ((PIN_PA14F_TCC0_WO4 << 16) | MUX_PA14F_TCC0_WO4)
  424. #define PORT_PA14F_TCC0_WO4 (1ul << 14)
  425. #define PIN_PA23F_TCC0_WO5 23L /**< \brief TCC0 signal: WO5 on PA23 mux F */
  426. #define MUX_PA23F_TCC0_WO5 5L
  427. #define PINMUX_PA23F_TCC0_WO5 ((PIN_PA23F_TCC0_WO5 << 16) | MUX_PA23F_TCC0_WO5)
  428. #define PORT_PA23F_TCC0_WO5 (1ul << 23)
  429. #define PIN_PA15F_TCC0_WO5 15L /**< \brief TCC0 signal: WO5 on PA15 mux F */
  430. #define MUX_PA15F_TCC0_WO5 5L
  431. #define PINMUX_PA15F_TCC0_WO5 ((PIN_PA15F_TCC0_WO5 << 16) | MUX_PA15F_TCC0_WO5)
  432. #define PORT_PA15F_TCC0_WO5 (1ul << 15)
  433. #define PIN_PA16F_TCC0_WO6 16L /**< \brief TCC0 signal: WO6 on PA16 mux F */
  434. #define MUX_PA16F_TCC0_WO6 5L
  435. #define PINMUX_PA16F_TCC0_WO6 ((PIN_PA16F_TCC0_WO6 << 16) | MUX_PA16F_TCC0_WO6)
  436. #define PORT_PA16F_TCC0_WO6 (1ul << 16)
  437. #define PIN_PA17F_TCC0_WO7 17L /**< \brief TCC0 signal: WO7 on PA17 mux F */
  438. #define MUX_PA17F_TCC0_WO7 5L
  439. #define PINMUX_PA17F_TCC0_WO7 ((PIN_PA17F_TCC0_WO7 << 16) | MUX_PA17F_TCC0_WO7)
  440. #define PORT_PA17F_TCC0_WO7 (1ul << 17)
  441. /* ========== PORT definition for TCC1 peripheral ========== */
  442. #define PIN_PA06E_TCC1_WO0 6L /**< \brief TCC1 signal: WO0 on PA06 mux E */
  443. #define MUX_PA06E_TCC1_WO0 4L
  444. #define PINMUX_PA06E_TCC1_WO0 ((PIN_PA06E_TCC1_WO0 << 16) | MUX_PA06E_TCC1_WO0)
  445. #define PORT_PA06E_TCC1_WO0 (1ul << 6)
  446. #define PIN_PA10E_TCC1_WO0 10L /**< \brief TCC1 signal: WO0 on PA10 mux E */
  447. #define MUX_PA10E_TCC1_WO0 4L
  448. #define PINMUX_PA10E_TCC1_WO0 ((PIN_PA10E_TCC1_WO0 << 16) | MUX_PA10E_TCC1_WO0)
  449. #define PORT_PA10E_TCC1_WO0 (1ul << 10)
  450. #define PIN_PA30E_TCC1_WO0 30L /**< \brief TCC1 signal: WO0 on PA30 mux E */
  451. #define MUX_PA30E_TCC1_WO0 4L
  452. #define PINMUX_PA30E_TCC1_WO0 ((PIN_PA30E_TCC1_WO0 << 16) | MUX_PA30E_TCC1_WO0)
  453. #define PORT_PA30E_TCC1_WO0 (1ul << 30)
  454. #define PIN_PA07E_TCC1_WO1 7L /**< \brief TCC1 signal: WO1 on PA07 mux E */
  455. #define MUX_PA07E_TCC1_WO1 4L
  456. #define PINMUX_PA07E_TCC1_WO1 ((PIN_PA07E_TCC1_WO1 << 16) | MUX_PA07E_TCC1_WO1)
  457. #define PORT_PA07E_TCC1_WO1 (1ul << 7)
  458. #define PIN_PA11E_TCC1_WO1 11L /**< \brief TCC1 signal: WO1 on PA11 mux E */
  459. #define MUX_PA11E_TCC1_WO1 4L
  460. #define PINMUX_PA11E_TCC1_WO1 ((PIN_PA11E_TCC1_WO1 << 16) | MUX_PA11E_TCC1_WO1)
  461. #define PORT_PA11E_TCC1_WO1 (1ul << 11)
  462. #define PIN_PA31E_TCC1_WO1 31L /**< \brief TCC1 signal: WO1 on PA31 mux E */
  463. #define MUX_PA31E_TCC1_WO1 4L
  464. #define PINMUX_PA31E_TCC1_WO1 ((PIN_PA31E_TCC1_WO1 << 16) | MUX_PA31E_TCC1_WO1)
  465. #define PORT_PA31E_TCC1_WO1 (1ul << 31)
  466. #define PIN_PA08F_TCC1_WO2 8L /**< \brief TCC1 signal: WO2 on PA08 mux F */
  467. #define MUX_PA08F_TCC1_WO2 5L
  468. #define PINMUX_PA08F_TCC1_WO2 ((PIN_PA08F_TCC1_WO2 << 16) | MUX_PA08F_TCC1_WO2)
  469. #define PORT_PA08F_TCC1_WO2 (1ul << 8)
  470. #define PIN_PA24F_TCC1_WO2 24L /**< \brief TCC1 signal: WO2 on PA24 mux F */
  471. #define MUX_PA24F_TCC1_WO2 5L
  472. #define PINMUX_PA24F_TCC1_WO2 ((PIN_PA24F_TCC1_WO2 << 16) | MUX_PA24F_TCC1_WO2)
  473. #define PORT_PA24F_TCC1_WO2 (1ul << 24)
  474. #define PIN_PA09F_TCC1_WO3 9L /**< \brief TCC1 signal: WO3 on PA09 mux F */
  475. #define MUX_PA09F_TCC1_WO3 5L
  476. #define PINMUX_PA09F_TCC1_WO3 ((PIN_PA09F_TCC1_WO3 << 16) | MUX_PA09F_TCC1_WO3)
  477. #define PORT_PA09F_TCC1_WO3 (1ul << 9)
  478. #define PIN_PA25F_TCC1_WO3 25L /**< \brief TCC1 signal: WO3 on PA25 mux F */
  479. #define MUX_PA25F_TCC1_WO3 5L
  480. #define PINMUX_PA25F_TCC1_WO3 ((PIN_PA25F_TCC1_WO3 << 16) | MUX_PA25F_TCC1_WO3)
  481. #define PORT_PA25F_TCC1_WO3 (1ul << 25)
  482. /* ========== PORT definition for TCC2 peripheral ========== */
  483. #define PIN_PA16E_TCC2_WO0 16L /**< \brief TCC2 signal: WO0 on PA16 mux E */
  484. #define MUX_PA16E_TCC2_WO0 4L
  485. #define PINMUX_PA16E_TCC2_WO0 ((PIN_PA16E_TCC2_WO0 << 16) | MUX_PA16E_TCC2_WO0)
  486. #define PORT_PA16E_TCC2_WO0 (1ul << 16)
  487. #define PIN_PA00E_TCC2_WO0 0L /**< \brief TCC2 signal: WO0 on PA00 mux E */
  488. #define MUX_PA00E_TCC2_WO0 4L
  489. #define PINMUX_PA00E_TCC2_WO0 ((PIN_PA00E_TCC2_WO0 << 16) | MUX_PA00E_TCC2_WO0)
  490. #define PORT_PA00E_TCC2_WO0 (1ul << 0)
  491. #define PIN_PA17E_TCC2_WO1 17L /**< \brief TCC2 signal: WO1 on PA17 mux E */
  492. #define MUX_PA17E_TCC2_WO1 4L
  493. #define PINMUX_PA17E_TCC2_WO1 ((PIN_PA17E_TCC2_WO1 << 16) | MUX_PA17E_TCC2_WO1)
  494. #define PORT_PA17E_TCC2_WO1 (1ul << 17)
  495. #define PIN_PA01E_TCC2_WO1 1L /**< \brief TCC2 signal: WO1 on PA01 mux E */
  496. #define MUX_PA01E_TCC2_WO1 4L
  497. #define PINMUX_PA01E_TCC2_WO1 ((PIN_PA01E_TCC2_WO1 << 16) | MUX_PA01E_TCC2_WO1)
  498. #define PORT_PA01E_TCC2_WO1 (1ul << 1)
  499. /* ========== PORT definition for TC3 peripheral ========== */
  500. #define PIN_PA18E_TC3_WO0 18L /**< \brief TC3 signal: WO0 on PA18 mux E */
  501. #define MUX_PA18E_TC3_WO0 4L
  502. #define PINMUX_PA18E_TC3_WO0 ((PIN_PA18E_TC3_WO0 << 16) | MUX_PA18E_TC3_WO0)
  503. #define PORT_PA18E_TC3_WO0 (1ul << 18)
  504. #define PIN_PA14E_TC3_WO0 14L /**< \brief TC3 signal: WO0 on PA14 mux E */
  505. #define MUX_PA14E_TC3_WO0 4L
  506. #define PINMUX_PA14E_TC3_WO0 ((PIN_PA14E_TC3_WO0 << 16) | MUX_PA14E_TC3_WO0)
  507. #define PORT_PA14E_TC3_WO0 (1ul << 14)
  508. #define PIN_PA19E_TC3_WO1 19L /**< \brief TC3 signal: WO1 on PA19 mux E */
  509. #define MUX_PA19E_TC3_WO1 4L
  510. #define PINMUX_PA19E_TC3_WO1 ((PIN_PA19E_TC3_WO1 << 16) | MUX_PA19E_TC3_WO1)
  511. #define PORT_PA19E_TC3_WO1 (1ul << 19)
  512. #define PIN_PA15E_TC3_WO1 15L /**< \brief TC3 signal: WO1 on PA15 mux E */
  513. #define MUX_PA15E_TC3_WO1 4L
  514. #define PINMUX_PA15E_TC3_WO1 ((PIN_PA15E_TC3_WO1 << 16) | MUX_PA15E_TC3_WO1)
  515. #define PORT_PA15E_TC3_WO1 (1ul << 15)
  516. /* ========== PORT definition for TC4 peripheral ========== */
  517. #define PIN_PA22E_TC4_WO0 22L /**< \brief TC4 signal: WO0 on PA22 mux E */
  518. #define MUX_PA22E_TC4_WO0 4L
  519. #define PINMUX_PA22E_TC4_WO0 ((PIN_PA22E_TC4_WO0 << 16) | MUX_PA22E_TC4_WO0)
  520. #define PORT_PA22E_TC4_WO0 (1ul << 22)
  521. #define PIN_PA23E_TC4_WO1 23L /**< \brief TC4 signal: WO1 on PA23 mux E */
  522. #define MUX_PA23E_TC4_WO1 4L
  523. #define PINMUX_PA23E_TC4_WO1 ((PIN_PA23E_TC4_WO1 << 16) | MUX_PA23E_TC4_WO1)
  524. #define PORT_PA23E_TC4_WO1 (1ul << 23)
  525. /* ========== PORT definition for TC5 peripheral ========== */
  526. #define PIN_PA24E_TC5_WO0 24L /**< \brief TC5 signal: WO0 on PA24 mux E */
  527. #define MUX_PA24E_TC5_WO0 4L
  528. #define PINMUX_PA24E_TC5_WO0 ((PIN_PA24E_TC5_WO0 << 16) | MUX_PA24E_TC5_WO0)
  529. #define PORT_PA24E_TC5_WO0 (1ul << 24)
  530. #define PIN_PA25E_TC5_WO1 25L /**< \brief TC5 signal: WO1 on PA25 mux E */
  531. #define MUX_PA25E_TC5_WO1 4L
  532. #define PINMUX_PA25E_TC5_WO1 ((PIN_PA25E_TC5_WO1 << 16) | MUX_PA25E_TC5_WO1)
  533. #define PORT_PA25E_TC5_WO1 (1ul << 25)
  534. /* ========== PORT definition for ADC peripheral ========== */
  535. #define PIN_PA02B_ADC_AIN0 2L /**< \brief ADC signal: AIN0 on PA02 mux B */
  536. #define MUX_PA02B_ADC_AIN0 1L
  537. #define PINMUX_PA02B_ADC_AIN0 ((PIN_PA02B_ADC_AIN0 << 16) | MUX_PA02B_ADC_AIN0)
  538. #define PORT_PA02B_ADC_AIN0 (1ul << 2)
  539. #define PIN_PA03B_ADC_AIN1 3L /**< \brief ADC signal: AIN1 on PA03 mux B */
  540. #define MUX_PA03B_ADC_AIN1 1L
  541. #define PINMUX_PA03B_ADC_AIN1 ((PIN_PA03B_ADC_AIN1 << 16) | MUX_PA03B_ADC_AIN1)
  542. #define PORT_PA03B_ADC_AIN1 (1ul << 3)
  543. #define PIN_PA04B_ADC_AIN4 4L /**< \brief ADC signal: AIN4 on PA04 mux B */
  544. #define MUX_PA04B_ADC_AIN4 1L
  545. #define PINMUX_PA04B_ADC_AIN4 ((PIN_PA04B_ADC_AIN4 << 16) | MUX_PA04B_ADC_AIN4)
  546. #define PORT_PA04B_ADC_AIN4 (1ul << 4)
  547. #define PIN_PA05B_ADC_AIN5 5L /**< \brief ADC signal: AIN5 on PA05 mux B */
  548. #define MUX_PA05B_ADC_AIN5 1L
  549. #define PINMUX_PA05B_ADC_AIN5 ((PIN_PA05B_ADC_AIN5 << 16) | MUX_PA05B_ADC_AIN5)
  550. #define PORT_PA05B_ADC_AIN5 (1ul << 5)
  551. #define PIN_PA06B_ADC_AIN6 6L /**< \brief ADC signal: AIN6 on PA06 mux B */
  552. #define MUX_PA06B_ADC_AIN6 1L
  553. #define PINMUX_PA06B_ADC_AIN6 ((PIN_PA06B_ADC_AIN6 << 16) | MUX_PA06B_ADC_AIN6)
  554. #define PORT_PA06B_ADC_AIN6 (1ul << 6)
  555. #define PIN_PA07B_ADC_AIN7 7L /**< \brief ADC signal: AIN7 on PA07 mux B */
  556. #define MUX_PA07B_ADC_AIN7 1L
  557. #define PINMUX_PA07B_ADC_AIN7 ((PIN_PA07B_ADC_AIN7 << 16) | MUX_PA07B_ADC_AIN7)
  558. #define PORT_PA07B_ADC_AIN7 (1ul << 7)
  559. #define PIN_PA08B_ADC_AIN16 8L /**< \brief ADC signal: AIN16 on PA08 mux B */
  560. #define MUX_PA08B_ADC_AIN16 1L
  561. #define PINMUX_PA08B_ADC_AIN16 ((PIN_PA08B_ADC_AIN16 << 16) | MUX_PA08B_ADC_AIN16)
  562. #define PORT_PA08B_ADC_AIN16 (1ul << 8)
  563. #define PIN_PA09B_ADC_AIN17 9L /**< \brief ADC signal: AIN17 on PA09 mux B */
  564. #define MUX_PA09B_ADC_AIN17 1L
  565. #define PINMUX_PA09B_ADC_AIN17 ((PIN_PA09B_ADC_AIN17 << 16) | MUX_PA09B_ADC_AIN17)
  566. #define PORT_PA09B_ADC_AIN17 (1ul << 9)
  567. #define PIN_PA10B_ADC_AIN18 10L /**< \brief ADC signal: AIN18 on PA10 mux B */
  568. #define MUX_PA10B_ADC_AIN18 1L
  569. #define PINMUX_PA10B_ADC_AIN18 ((PIN_PA10B_ADC_AIN18 << 16) | MUX_PA10B_ADC_AIN18)
  570. #define PORT_PA10B_ADC_AIN18 (1ul << 10)
  571. #define PIN_PA11B_ADC_AIN19 11L /**< \brief ADC signal: AIN19 on PA11 mux B */
  572. #define MUX_PA11B_ADC_AIN19 1L
  573. #define PINMUX_PA11B_ADC_AIN19 ((PIN_PA11B_ADC_AIN19 << 16) | MUX_PA11B_ADC_AIN19)
  574. #define PORT_PA11B_ADC_AIN19 (1ul << 11)
  575. #define PIN_PA04B_ADC_VREFP 4L /**< \brief ADC signal: VREFP on PA04 mux B */
  576. #define MUX_PA04B_ADC_VREFP 1L
  577. #define PINMUX_PA04B_ADC_VREFP ((PIN_PA04B_ADC_VREFP << 16) | MUX_PA04B_ADC_VREFP)
  578. #define PORT_PA04B_ADC_VREFP (1ul << 4)
  579. /* ========== PORT definition for AC peripheral ========== */
  580. #define PIN_PA04B_AC_AIN0 4L /**< \brief AC signal: AIN0 on PA04 mux B */
  581. #define MUX_PA04B_AC_AIN0 1L
  582. #define PINMUX_PA04B_AC_AIN0 ((PIN_PA04B_AC_AIN0 << 16) | MUX_PA04B_AC_AIN0)
  583. #define PORT_PA04B_AC_AIN0 (1ul << 4)
  584. #define PIN_PA05B_AC_AIN1 5L /**< \brief AC signal: AIN1 on PA05 mux B */
  585. #define MUX_PA05B_AC_AIN1 1L
  586. #define PINMUX_PA05B_AC_AIN1 ((PIN_PA05B_AC_AIN1 << 16) | MUX_PA05B_AC_AIN1)
  587. #define PORT_PA05B_AC_AIN1 (1ul << 5)
  588. #define PIN_PA06B_AC_AIN2 6L /**< \brief AC signal: AIN2 on PA06 mux B */
  589. #define MUX_PA06B_AC_AIN2 1L
  590. #define PINMUX_PA06B_AC_AIN2 ((PIN_PA06B_AC_AIN2 << 16) | MUX_PA06B_AC_AIN2)
  591. #define PORT_PA06B_AC_AIN2 (1ul << 6)
  592. #define PIN_PA07B_AC_AIN3 7L /**< \brief AC signal: AIN3 on PA07 mux B */
  593. #define MUX_PA07B_AC_AIN3 1L
  594. #define PINMUX_PA07B_AC_AIN3 ((PIN_PA07B_AC_AIN3 << 16) | MUX_PA07B_AC_AIN3)
  595. #define PORT_PA07B_AC_AIN3 (1ul << 7)
  596. #define PIN_PA18H_AC_CMP0 18L /**< \brief AC signal: CMP0 on PA18 mux H */
  597. #define MUX_PA18H_AC_CMP0 7L
  598. #define PINMUX_PA18H_AC_CMP0 ((PIN_PA18H_AC_CMP0 << 16) | MUX_PA18H_AC_CMP0)
  599. #define PORT_PA18H_AC_CMP0 (1ul << 18)
  600. #define PIN_PA19H_AC_CMP1 19L /**< \brief AC signal: CMP1 on PA19 mux H */
  601. #define MUX_PA19H_AC_CMP1 7L
  602. #define PINMUX_PA19H_AC_CMP1 ((PIN_PA19H_AC_CMP1 << 16) | MUX_PA19H_AC_CMP1)
  603. #define PORT_PA19H_AC_CMP1 (1ul << 19)
  604. /* ========== PORT definition for DAC peripheral ========== */
  605. #define PIN_PA02B_DAC_VOUT 2L /**< \brief DAC signal: VOUT on PA02 mux B */
  606. #define MUX_PA02B_DAC_VOUT 1L
  607. #define PINMUX_PA02B_DAC_VOUT ((PIN_PA02B_DAC_VOUT << 16) | MUX_PA02B_DAC_VOUT)
  608. #define PORT_PA02B_DAC_VOUT (1ul << 2)
  609. #define PIN_PA03B_DAC_VREFP 3L /**< \brief DAC signal: VREFP on PA03 mux B */
  610. #define MUX_PA03B_DAC_VREFP 1L
  611. #define PINMUX_PA03B_DAC_VREFP ((PIN_PA03B_DAC_VREFP << 16) | MUX_PA03B_DAC_VREFP)
  612. #define PORT_PA03B_DAC_VREFP (1ul << 3)
  613. /* ========== PORT definition for I2S peripheral ========== */
  614. #define PIN_PA11G_I2S_FS0 11L /**< \brief I2S signal: FS0 on PA11 mux G */
  615. #define MUX_PA11G_I2S_FS0 6L
  616. #define PINMUX_PA11G_I2S_FS0 ((PIN_PA11G_I2S_FS0 << 16) | MUX_PA11G_I2S_FS0)
  617. #define PORT_PA11G_I2S_FS0 (1ul << 11)
  618. #define PIN_PA09G_I2S_MCK0 9L /**< \brief I2S signal: MCK0 on PA09 mux G */
  619. #define MUX_PA09G_I2S_MCK0 6L
  620. #define PINMUX_PA09G_I2S_MCK0 ((PIN_PA09G_I2S_MCK0 << 16) | MUX_PA09G_I2S_MCK0)
  621. #define PORT_PA09G_I2S_MCK0 (1ul << 9)
  622. #define PIN_PA10G_I2S_SCK0 10L /**< \brief I2S signal: SCK0 on PA10 mux G */
  623. #define MUX_PA10G_I2S_SCK0 6L
  624. #define PINMUX_PA10G_I2S_SCK0 ((PIN_PA10G_I2S_SCK0 << 16) | MUX_PA10G_I2S_SCK0)
  625. #define PORT_PA10G_I2S_SCK0 (1ul << 10)
  626. #define PIN_PA07G_I2S_SD0 7L /**< \brief I2S signal: SD0 on PA07 mux G */
  627. #define MUX_PA07G_I2S_SD0 6L
  628. #define PINMUX_PA07G_I2S_SD0 ((PIN_PA07G_I2S_SD0 << 16) | MUX_PA07G_I2S_SD0)
  629. #define PORT_PA07G_I2S_SD0 (1ul << 7)
  630. #define PIN_PA19G_I2S_SD0 19L /**< \brief I2S signal: SD0 on PA19 mux G */
  631. #define MUX_PA19G_I2S_SD0 6L
  632. #define PINMUX_PA19G_I2S_SD0 ((PIN_PA19G_I2S_SD0 << 16) | MUX_PA19G_I2S_SD0)
  633. #define PORT_PA19G_I2S_SD0 (1ul << 19)
  634. #define PIN_PA08G_I2S_SD1 8L /**< \brief I2S signal: SD1 on PA08 mux G */
  635. #define MUX_PA08G_I2S_SD1 6L
  636. #define PINMUX_PA08G_I2S_SD1 ((PIN_PA08G_I2S_SD1 << 16) | MUX_PA08G_I2S_SD1)
  637. #define PORT_PA08G_I2S_SD1 (1ul << 8)
  638. #endif /* _SAMD21E16B_PIO_ */