USB Serial application

Fork of USBSerial_HelloWorld by Samuel Mokrani

Committer:
Zaitsev
Date:
Sat Dec 16 10:26:48 2017 +0000
Revision:
11:b3f2a8bdac4d
Parent:
10:41552d038a69
A copy for D.S;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Zaitsev 10:41552d038a69 1 #ifndef ATMEL_PARTS_H
Zaitsev 10:41552d038a69 2 #define ATMEL_PARTS_H
Zaitsev 10:41552d038a69 3
Zaitsev 10:41552d038a69 4 /**
Zaitsev 10:41552d038a69 5 * \defgroup part_macros_group Atmel part identification macros
Zaitsev 10:41552d038a69 6 *
Zaitsev 10:41552d038a69 7 * This collection of macros identify which series and families that the various
Zaitsev 10:41552d038a69 8 * Atmel parts belong to. These can be used to select part-dependent sections of
Zaitsev 10:41552d038a69 9 * code at compile time.
Zaitsev 10:41552d038a69 10 *
Zaitsev 10:41552d038a69 11 * @{
Zaitsev 10:41552d038a69 12 */
Zaitsev 10:41552d038a69 13
Zaitsev 10:41552d038a69 14 /**
Zaitsev 10:41552d038a69 15 * \name Convenience macros for part checking
Zaitsev 10:41552d038a69 16 * @{
Zaitsev 10:41552d038a69 17 */
Zaitsev 10:41552d038a69 18 /* ! Check GCC and IAR part definition for 8-bit AVR */
Zaitsev 10:41552d038a69 19 #define AVR8_PART_IS_DEFINED(part) \
Zaitsev 10:41552d038a69 20 (defined(__ ## part ## __) || defined(__AVR_ ## part ## __))
Zaitsev 10:41552d038a69 21
Zaitsev 10:41552d038a69 22 /* ! Check GCC and IAR part definition for 32-bit AVR */
Zaitsev 10:41552d038a69 23 #define AVR32_PART_IS_DEFINED(part) \
Zaitsev 10:41552d038a69 24 (defined(__AT32 ## part ## __) || defined(__AVR32_ ## part ## __))
Zaitsev 10:41552d038a69 25
Zaitsev 10:41552d038a69 26 /* ! Check GCC and IAR part definition for SAM */
Zaitsev 10:41552d038a69 27 #define SAM_PART_IS_DEFINED(part) (defined(__ ## part ## __))
Zaitsev 10:41552d038a69 28 /** @} */
Zaitsev 10:41552d038a69 29
Zaitsev 10:41552d038a69 30 /**
Zaitsev 10:41552d038a69 31 * \defgroup uc3_part_macros_group AVR UC3 parts
Zaitsev 10:41552d038a69 32 * @{
Zaitsev 10:41552d038a69 33 */
Zaitsev 10:41552d038a69 34
Zaitsev 10:41552d038a69 35 /**
Zaitsev 10:41552d038a69 36 * \name AVR UC3 A series
Zaitsev 10:41552d038a69 37 * @{
Zaitsev 10:41552d038a69 38 */
Zaitsev 10:41552d038a69 39 #define UC3A0 ( \
Zaitsev 10:41552d038a69 40 AVR32_PART_IS_DEFINED(UC3A0128) || \
Zaitsev 10:41552d038a69 41 AVR32_PART_IS_DEFINED(UC3A0256) || \
Zaitsev 10:41552d038a69 42 AVR32_PART_IS_DEFINED(UC3A0512) \
Zaitsev 10:41552d038a69 43 )
Zaitsev 10:41552d038a69 44
Zaitsev 10:41552d038a69 45 #define UC3A1 ( \
Zaitsev 10:41552d038a69 46 AVR32_PART_IS_DEFINED(UC3A1128) || \
Zaitsev 10:41552d038a69 47 AVR32_PART_IS_DEFINED(UC3A1256) || \
Zaitsev 10:41552d038a69 48 AVR32_PART_IS_DEFINED(UC3A1512) \
Zaitsev 10:41552d038a69 49 )
Zaitsev 10:41552d038a69 50
Zaitsev 10:41552d038a69 51 #define UC3A3 ( \
Zaitsev 10:41552d038a69 52 AVR32_PART_IS_DEFINED(UC3A364) || \
Zaitsev 10:41552d038a69 53 AVR32_PART_IS_DEFINED(UC3A364S) || \
Zaitsev 10:41552d038a69 54 AVR32_PART_IS_DEFINED(UC3A3128) || \
Zaitsev 10:41552d038a69 55 AVR32_PART_IS_DEFINED(UC3A3128S) || \
Zaitsev 10:41552d038a69 56 AVR32_PART_IS_DEFINED(UC3A3256) || \
Zaitsev 10:41552d038a69 57 AVR32_PART_IS_DEFINED(UC3A3256S) \
Zaitsev 10:41552d038a69 58 )
Zaitsev 10:41552d038a69 59
Zaitsev 10:41552d038a69 60 #define UC3A4 ( \
Zaitsev 10:41552d038a69 61 AVR32_PART_IS_DEFINED(UC3A464) || \
Zaitsev 10:41552d038a69 62 AVR32_PART_IS_DEFINED(UC3A464S) || \
Zaitsev 10:41552d038a69 63 AVR32_PART_IS_DEFINED(UC3A4128) || \
Zaitsev 10:41552d038a69 64 AVR32_PART_IS_DEFINED(UC3A4128S) || \
Zaitsev 10:41552d038a69 65 AVR32_PART_IS_DEFINED(UC3A4256) || \
Zaitsev 10:41552d038a69 66 AVR32_PART_IS_DEFINED(UC3A4256S) \
Zaitsev 10:41552d038a69 67 )
Zaitsev 10:41552d038a69 68 /** @} */
Zaitsev 10:41552d038a69 69
Zaitsev 10:41552d038a69 70 /**
Zaitsev 10:41552d038a69 71 * \name AVR UC3 B series
Zaitsev 10:41552d038a69 72 * @{
Zaitsev 10:41552d038a69 73 */
Zaitsev 10:41552d038a69 74 #define UC3B0 ( \
Zaitsev 10:41552d038a69 75 AVR32_PART_IS_DEFINED(UC3B064) || \
Zaitsev 10:41552d038a69 76 AVR32_PART_IS_DEFINED(UC3B0128) || \
Zaitsev 10:41552d038a69 77 AVR32_PART_IS_DEFINED(UC3B0256) || \
Zaitsev 10:41552d038a69 78 AVR32_PART_IS_DEFINED(UC3B0512) \
Zaitsev 10:41552d038a69 79 )
Zaitsev 10:41552d038a69 80
Zaitsev 10:41552d038a69 81 #define UC3B1 ( \
Zaitsev 10:41552d038a69 82 AVR32_PART_IS_DEFINED(UC3B164) || \
Zaitsev 10:41552d038a69 83 AVR32_PART_IS_DEFINED(UC3B1128) || \
Zaitsev 10:41552d038a69 84 AVR32_PART_IS_DEFINED(UC3B1256) || \
Zaitsev 10:41552d038a69 85 AVR32_PART_IS_DEFINED(UC3B1512) \
Zaitsev 10:41552d038a69 86 )
Zaitsev 10:41552d038a69 87 /** @} */
Zaitsev 10:41552d038a69 88
Zaitsev 10:41552d038a69 89 /**
Zaitsev 10:41552d038a69 90 * \name AVR UC3 C series
Zaitsev 10:41552d038a69 91 * @{
Zaitsev 10:41552d038a69 92 */
Zaitsev 10:41552d038a69 93 #define UC3C0 ( \
Zaitsev 10:41552d038a69 94 AVR32_PART_IS_DEFINED(UC3C064C) || \
Zaitsev 10:41552d038a69 95 AVR32_PART_IS_DEFINED(UC3C0128C) || \
Zaitsev 10:41552d038a69 96 AVR32_PART_IS_DEFINED(UC3C0256C) || \
Zaitsev 10:41552d038a69 97 AVR32_PART_IS_DEFINED(UC3C0512C) \
Zaitsev 10:41552d038a69 98 )
Zaitsev 10:41552d038a69 99
Zaitsev 10:41552d038a69 100 #define UC3C1 ( \
Zaitsev 10:41552d038a69 101 AVR32_PART_IS_DEFINED(UC3C164C) || \
Zaitsev 10:41552d038a69 102 AVR32_PART_IS_DEFINED(UC3C1128C) || \
Zaitsev 10:41552d038a69 103 AVR32_PART_IS_DEFINED(UC3C1256C) || \
Zaitsev 10:41552d038a69 104 AVR32_PART_IS_DEFINED(UC3C1512C) \
Zaitsev 10:41552d038a69 105 )
Zaitsev 10:41552d038a69 106
Zaitsev 10:41552d038a69 107 #define UC3C2 ( \
Zaitsev 10:41552d038a69 108 AVR32_PART_IS_DEFINED(UC3C264C) || \
Zaitsev 10:41552d038a69 109 AVR32_PART_IS_DEFINED(UC3C2128C) || \
Zaitsev 10:41552d038a69 110 AVR32_PART_IS_DEFINED(UC3C2256C) || \
Zaitsev 10:41552d038a69 111 AVR32_PART_IS_DEFINED(UC3C2512C) \
Zaitsev 10:41552d038a69 112 )
Zaitsev 10:41552d038a69 113 /** @} */
Zaitsev 10:41552d038a69 114
Zaitsev 10:41552d038a69 115 /**
Zaitsev 10:41552d038a69 116 * \name AVR UC3 D series
Zaitsev 10:41552d038a69 117 * @{
Zaitsev 10:41552d038a69 118 */
Zaitsev 10:41552d038a69 119 #define UC3D3 ( \
Zaitsev 10:41552d038a69 120 AVR32_PART_IS_DEFINED(UC64D3) || \
Zaitsev 10:41552d038a69 121 AVR32_PART_IS_DEFINED(UC128D3) \
Zaitsev 10:41552d038a69 122 )
Zaitsev 10:41552d038a69 123
Zaitsev 10:41552d038a69 124 #define UC3D4 ( \
Zaitsev 10:41552d038a69 125 AVR32_PART_IS_DEFINED(UC64D4) || \
Zaitsev 10:41552d038a69 126 AVR32_PART_IS_DEFINED(UC128D4) \
Zaitsev 10:41552d038a69 127 )
Zaitsev 10:41552d038a69 128 /** @} */
Zaitsev 10:41552d038a69 129
Zaitsev 10:41552d038a69 130 /**
Zaitsev 10:41552d038a69 131 * \name AVR UC3 L series
Zaitsev 10:41552d038a69 132 * @{
Zaitsev 10:41552d038a69 133 */
Zaitsev 10:41552d038a69 134 #define UC3L0 ( \
Zaitsev 10:41552d038a69 135 AVR32_PART_IS_DEFINED(UC3L016) || \
Zaitsev 10:41552d038a69 136 AVR32_PART_IS_DEFINED(UC3L032) || \
Zaitsev 10:41552d038a69 137 AVR32_PART_IS_DEFINED(UC3L064) \
Zaitsev 10:41552d038a69 138 )
Zaitsev 10:41552d038a69 139
Zaitsev 10:41552d038a69 140 #define UC3L0128 ( \
Zaitsev 10:41552d038a69 141 AVR32_PART_IS_DEFINED(UC3L0128) \
Zaitsev 10:41552d038a69 142 )
Zaitsev 10:41552d038a69 143
Zaitsev 10:41552d038a69 144 #define UC3L0256 ( \
Zaitsev 10:41552d038a69 145 AVR32_PART_IS_DEFINED(UC3L0256) \
Zaitsev 10:41552d038a69 146 )
Zaitsev 10:41552d038a69 147
Zaitsev 10:41552d038a69 148 #define UC3L3 ( \
Zaitsev 10:41552d038a69 149 AVR32_PART_IS_DEFINED(UC64L3U) || \
Zaitsev 10:41552d038a69 150 AVR32_PART_IS_DEFINED(UC128L3U) || \
Zaitsev 10:41552d038a69 151 AVR32_PART_IS_DEFINED(UC256L3U) \
Zaitsev 10:41552d038a69 152 )
Zaitsev 10:41552d038a69 153
Zaitsev 10:41552d038a69 154 #define UC3L4 ( \
Zaitsev 10:41552d038a69 155 AVR32_PART_IS_DEFINED(UC64L4U) || \
Zaitsev 10:41552d038a69 156 AVR32_PART_IS_DEFINED(UC128L4U) || \
Zaitsev 10:41552d038a69 157 AVR32_PART_IS_DEFINED(UC256L4U) \
Zaitsev 10:41552d038a69 158 )
Zaitsev 10:41552d038a69 159
Zaitsev 10:41552d038a69 160 #define UC3L3_L4 (UC3L3 || UC3L4)
Zaitsev 10:41552d038a69 161 /** @} */
Zaitsev 10:41552d038a69 162
Zaitsev 10:41552d038a69 163 /**
Zaitsev 10:41552d038a69 164 * \name AVR UC3 families
Zaitsev 10:41552d038a69 165 * @{
Zaitsev 10:41552d038a69 166 */
Zaitsev 10:41552d038a69 167 /** AVR UC3 A family */
Zaitsev 10:41552d038a69 168 #define UC3A (UC3A0 || UC3A1 || UC3A3 || UC3A4)
Zaitsev 10:41552d038a69 169
Zaitsev 10:41552d038a69 170 /** AVR UC3 B family */
Zaitsev 10:41552d038a69 171 #define UC3B (UC3B0 || UC3B1)
Zaitsev 10:41552d038a69 172
Zaitsev 10:41552d038a69 173 /** AVR UC3 C family */
Zaitsev 10:41552d038a69 174 #define UC3C (UC3C0 || UC3C1 || UC3C2)
Zaitsev 10:41552d038a69 175
Zaitsev 10:41552d038a69 176 /** AVR UC3 D family */
Zaitsev 10:41552d038a69 177 #define UC3D (UC3D3 || UC3D4)
Zaitsev 10:41552d038a69 178
Zaitsev 10:41552d038a69 179 /** AVR UC3 L family */
Zaitsev 10:41552d038a69 180 #define UC3L (UC3L0 || UC3L0128 || UC3L0256 || UC3L3_L4)
Zaitsev 10:41552d038a69 181 /** @} */
Zaitsev 10:41552d038a69 182
Zaitsev 10:41552d038a69 183 /** AVR UC3 product line */
Zaitsev 10:41552d038a69 184 #define UC3 (UC3A || UC3B || UC3C || UC3D || UC3L)
Zaitsev 10:41552d038a69 185
Zaitsev 10:41552d038a69 186 /** @} */
Zaitsev 10:41552d038a69 187
Zaitsev 10:41552d038a69 188 /**
Zaitsev 10:41552d038a69 189 * \defgroup xmega_part_macros_group AVR XMEGA parts
Zaitsev 10:41552d038a69 190 * @{
Zaitsev 10:41552d038a69 191 */
Zaitsev 10:41552d038a69 192
Zaitsev 10:41552d038a69 193 /**
Zaitsev 10:41552d038a69 194 * \name AVR XMEGA A series
Zaitsev 10:41552d038a69 195 * @{
Zaitsev 10:41552d038a69 196 */
Zaitsev 10:41552d038a69 197 #define XMEGA_A1 ( \
Zaitsev 10:41552d038a69 198 AVR8_PART_IS_DEFINED(ATxmega64A1) || \
Zaitsev 10:41552d038a69 199 AVR8_PART_IS_DEFINED(ATxmega128A1) \
Zaitsev 10:41552d038a69 200 )
Zaitsev 10:41552d038a69 201
Zaitsev 10:41552d038a69 202 #define XMEGA_A3 ( \
Zaitsev 10:41552d038a69 203 AVR8_PART_IS_DEFINED(ATxmega64A3) || \
Zaitsev 10:41552d038a69 204 AVR8_PART_IS_DEFINED(ATxmega128A3) || \
Zaitsev 10:41552d038a69 205 AVR8_PART_IS_DEFINED(ATxmega192A3) || \
Zaitsev 10:41552d038a69 206 AVR8_PART_IS_DEFINED(ATxmega256A3) \
Zaitsev 10:41552d038a69 207 )
Zaitsev 10:41552d038a69 208
Zaitsev 10:41552d038a69 209 #define XMEGA_A3B ( \
Zaitsev 10:41552d038a69 210 AVR8_PART_IS_DEFINED(ATxmega256A3B) \
Zaitsev 10:41552d038a69 211 )
Zaitsev 10:41552d038a69 212
Zaitsev 10:41552d038a69 213 #define XMEGA_A4 ( \
Zaitsev 10:41552d038a69 214 AVR8_PART_IS_DEFINED(ATxmega16A4) || \
Zaitsev 10:41552d038a69 215 AVR8_PART_IS_DEFINED(ATxmega32A4) \
Zaitsev 10:41552d038a69 216 )
Zaitsev 10:41552d038a69 217 /** @} */
Zaitsev 10:41552d038a69 218
Zaitsev 10:41552d038a69 219 /**
Zaitsev 10:41552d038a69 220 * \name AVR XMEGA AU series
Zaitsev 10:41552d038a69 221 * @{
Zaitsev 10:41552d038a69 222 */
Zaitsev 10:41552d038a69 223 #define XMEGA_A1U ( \
Zaitsev 10:41552d038a69 224 AVR8_PART_IS_DEFINED(ATxmega64A1U) || \
Zaitsev 10:41552d038a69 225 AVR8_PART_IS_DEFINED(ATxmega128A1U) \
Zaitsev 10:41552d038a69 226 )
Zaitsev 10:41552d038a69 227
Zaitsev 10:41552d038a69 228 #define XMEGA_A3U ( \
Zaitsev 10:41552d038a69 229 AVR8_PART_IS_DEFINED(ATxmega64A3U) || \
Zaitsev 10:41552d038a69 230 AVR8_PART_IS_DEFINED(ATxmega128A3U) || \
Zaitsev 10:41552d038a69 231 AVR8_PART_IS_DEFINED(ATxmega192A3U) || \
Zaitsev 10:41552d038a69 232 AVR8_PART_IS_DEFINED(ATxmega256A3U) \
Zaitsev 10:41552d038a69 233 )
Zaitsev 10:41552d038a69 234
Zaitsev 10:41552d038a69 235 #define XMEGA_A3BU ( \
Zaitsev 10:41552d038a69 236 AVR8_PART_IS_DEFINED(ATxmega256A3BU) \
Zaitsev 10:41552d038a69 237 )
Zaitsev 10:41552d038a69 238
Zaitsev 10:41552d038a69 239 #define XMEGA_A4U ( \
Zaitsev 10:41552d038a69 240 AVR8_PART_IS_DEFINED(ATxmega16A4U) || \
Zaitsev 10:41552d038a69 241 AVR8_PART_IS_DEFINED(ATxmega32A4U) || \
Zaitsev 10:41552d038a69 242 AVR8_PART_IS_DEFINED(ATxmega64A4U) || \
Zaitsev 10:41552d038a69 243 AVR8_PART_IS_DEFINED(ATxmega128A4U) \
Zaitsev 10:41552d038a69 244 )
Zaitsev 10:41552d038a69 245 /** @} */
Zaitsev 10:41552d038a69 246
Zaitsev 10:41552d038a69 247 /**
Zaitsev 10:41552d038a69 248 * \name AVR XMEGA B series
Zaitsev 10:41552d038a69 249 * @{
Zaitsev 10:41552d038a69 250 */
Zaitsev 10:41552d038a69 251 #define XMEGA_B1 ( \
Zaitsev 10:41552d038a69 252 AVR8_PART_IS_DEFINED(ATxmega64B1) || \
Zaitsev 10:41552d038a69 253 AVR8_PART_IS_DEFINED(ATxmega128B1) \
Zaitsev 10:41552d038a69 254 )
Zaitsev 10:41552d038a69 255
Zaitsev 10:41552d038a69 256 #define XMEGA_B3 ( \
Zaitsev 10:41552d038a69 257 AVR8_PART_IS_DEFINED(ATxmega64B3) || \
Zaitsev 10:41552d038a69 258 AVR8_PART_IS_DEFINED(ATxmega128B3) \
Zaitsev 10:41552d038a69 259 )
Zaitsev 10:41552d038a69 260 /** @} */
Zaitsev 10:41552d038a69 261
Zaitsev 10:41552d038a69 262 /**
Zaitsev 10:41552d038a69 263 * \name AVR XMEGA C series
Zaitsev 10:41552d038a69 264 * @{
Zaitsev 10:41552d038a69 265 */
Zaitsev 10:41552d038a69 266 #define XMEGA_C3 ( \
Zaitsev 10:41552d038a69 267 AVR8_PART_IS_DEFINED(ATxmega384C3) || \
Zaitsev 10:41552d038a69 268 AVR8_PART_IS_DEFINED(ATxmega256C3) || \
Zaitsev 10:41552d038a69 269 AVR8_PART_IS_DEFINED(ATxmega192C3) || \
Zaitsev 10:41552d038a69 270 AVR8_PART_IS_DEFINED(ATxmega128C3) || \
Zaitsev 10:41552d038a69 271 AVR8_PART_IS_DEFINED(ATxmega64C3) || \
Zaitsev 10:41552d038a69 272 AVR8_PART_IS_DEFINED(ATxmega32C3) \
Zaitsev 10:41552d038a69 273 )
Zaitsev 10:41552d038a69 274
Zaitsev 10:41552d038a69 275 #define XMEGA_C4 ( \
Zaitsev 10:41552d038a69 276 AVR8_PART_IS_DEFINED(ATxmega32C4) || \
Zaitsev 10:41552d038a69 277 AVR8_PART_IS_DEFINED(ATxmega16C4) \
Zaitsev 10:41552d038a69 278 )
Zaitsev 10:41552d038a69 279 /** @} */
Zaitsev 10:41552d038a69 280
Zaitsev 10:41552d038a69 281 /**
Zaitsev 10:41552d038a69 282 * \name AVR XMEGA D series
Zaitsev 10:41552d038a69 283 * @{
Zaitsev 10:41552d038a69 284 */
Zaitsev 10:41552d038a69 285 #define XMEGA_D3 ( \
Zaitsev 10:41552d038a69 286 AVR8_PART_IS_DEFINED(ATxmega32D3) || \
Zaitsev 10:41552d038a69 287 AVR8_PART_IS_DEFINED(ATxmega64D3) || \
Zaitsev 10:41552d038a69 288 AVR8_PART_IS_DEFINED(ATxmega128D3) || \
Zaitsev 10:41552d038a69 289 AVR8_PART_IS_DEFINED(ATxmega192D3) || \
Zaitsev 10:41552d038a69 290 AVR8_PART_IS_DEFINED(ATxmega256D3) || \
Zaitsev 10:41552d038a69 291 AVR8_PART_IS_DEFINED(ATxmega384D3) \
Zaitsev 10:41552d038a69 292 )
Zaitsev 10:41552d038a69 293
Zaitsev 10:41552d038a69 294 #define XMEGA_D4 ( \
Zaitsev 10:41552d038a69 295 AVR8_PART_IS_DEFINED(ATxmega16D4) || \
Zaitsev 10:41552d038a69 296 AVR8_PART_IS_DEFINED(ATxmega32D4) || \
Zaitsev 10:41552d038a69 297 AVR8_PART_IS_DEFINED(ATxmega64D4) || \
Zaitsev 10:41552d038a69 298 AVR8_PART_IS_DEFINED(ATxmega128D4) \
Zaitsev 10:41552d038a69 299 )
Zaitsev 10:41552d038a69 300 /** @} */
Zaitsev 10:41552d038a69 301
Zaitsev 10:41552d038a69 302 /**
Zaitsev 10:41552d038a69 303 * \name AVR XMEGA E series
Zaitsev 10:41552d038a69 304 * @{
Zaitsev 10:41552d038a69 305 */
Zaitsev 10:41552d038a69 306 #define XMEGA_E5 ( \
Zaitsev 10:41552d038a69 307 AVR8_PART_IS_DEFINED(ATxmega8E5) || \
Zaitsev 10:41552d038a69 308 AVR8_PART_IS_DEFINED(ATxmega16E5) || \
Zaitsev 10:41552d038a69 309 AVR8_PART_IS_DEFINED(ATxmega32E5) \
Zaitsev 10:41552d038a69 310 )
Zaitsev 10:41552d038a69 311 /** @} */
Zaitsev 10:41552d038a69 312
Zaitsev 10:41552d038a69 313
Zaitsev 10:41552d038a69 314 /**
Zaitsev 10:41552d038a69 315 * \name AVR XMEGA families
Zaitsev 10:41552d038a69 316 * @{
Zaitsev 10:41552d038a69 317 */
Zaitsev 10:41552d038a69 318 /** AVR XMEGA A family */
Zaitsev 10:41552d038a69 319 #define XMEGA_A (XMEGA_A1 || XMEGA_A3 || XMEGA_A3B || XMEGA_A4)
Zaitsev 10:41552d038a69 320
Zaitsev 10:41552d038a69 321 /** AVR XMEGA AU family */
Zaitsev 10:41552d038a69 322 #define XMEGA_AU (XMEGA_A1U || XMEGA_A3U || XMEGA_A3BU || XMEGA_A4U)
Zaitsev 10:41552d038a69 323
Zaitsev 10:41552d038a69 324 /** AVR XMEGA B family */
Zaitsev 10:41552d038a69 325 #define XMEGA_B (XMEGA_B1 || XMEGA_B3)
Zaitsev 10:41552d038a69 326
Zaitsev 10:41552d038a69 327 /** AVR XMEGA C family */
Zaitsev 10:41552d038a69 328 #define XMEGA_C (XMEGA_C3 || XMEGA_C4)
Zaitsev 10:41552d038a69 329
Zaitsev 10:41552d038a69 330 /** AVR XMEGA D family */
Zaitsev 10:41552d038a69 331 #define XMEGA_D (XMEGA_D3 || XMEGA_D4)
Zaitsev 10:41552d038a69 332
Zaitsev 10:41552d038a69 333 /** AVR XMEGA E family */
Zaitsev 10:41552d038a69 334 #define XMEGA_E (XMEGA_E5)
Zaitsev 10:41552d038a69 335 /** @} */
Zaitsev 10:41552d038a69 336
Zaitsev 10:41552d038a69 337
Zaitsev 10:41552d038a69 338 /** AVR XMEGA product line */
Zaitsev 10:41552d038a69 339 #define XMEGA (XMEGA_A || XMEGA_AU || XMEGA_B || XMEGA_C || XMEGA_D || XMEGA_E)
Zaitsev 10:41552d038a69 340
Zaitsev 10:41552d038a69 341 /** @} */
Zaitsev 10:41552d038a69 342
Zaitsev 10:41552d038a69 343 /**
Zaitsev 10:41552d038a69 344 * \defgroup mega_part_macros_group megaAVR parts
Zaitsev 10:41552d038a69 345 *
Zaitsev 10:41552d038a69 346 * \note These megaAVR groupings are based on the groups in AVR Libc for the
Zaitsev 10:41552d038a69 347 * part header files. They are not names of official megaAVR device series or
Zaitsev 10:41552d038a69 348 * families.
Zaitsev 10:41552d038a69 349 *
Zaitsev 10:41552d038a69 350 * @{
Zaitsev 10:41552d038a69 351 */
Zaitsev 10:41552d038a69 352
Zaitsev 10:41552d038a69 353 /**
Zaitsev 10:41552d038a69 354 * \name ATmegaxx0/xx1 subgroups
Zaitsev 10:41552d038a69 355 * @{
Zaitsev 10:41552d038a69 356 */
Zaitsev 10:41552d038a69 357 #define MEGA_XX0 ( \
Zaitsev 10:41552d038a69 358 AVR8_PART_IS_DEFINED(ATmega640) || \
Zaitsev 10:41552d038a69 359 AVR8_PART_IS_DEFINED(ATmega1280) || \
Zaitsev 10:41552d038a69 360 AVR8_PART_IS_DEFINED(ATmega2560) \
Zaitsev 10:41552d038a69 361 )
Zaitsev 10:41552d038a69 362
Zaitsev 10:41552d038a69 363 #define MEGA_XX1 ( \
Zaitsev 10:41552d038a69 364 AVR8_PART_IS_DEFINED(ATmega1281) || \
Zaitsev 10:41552d038a69 365 AVR8_PART_IS_DEFINED(ATmega2561) \
Zaitsev 10:41552d038a69 366 )
Zaitsev 10:41552d038a69 367 /** @} */
Zaitsev 10:41552d038a69 368
Zaitsev 10:41552d038a69 369 /**
Zaitsev 10:41552d038a69 370 * \name megaAVR groups
Zaitsev 10:41552d038a69 371 * @{
Zaitsev 10:41552d038a69 372 */
Zaitsev 10:41552d038a69 373 /** ATmegaxx0/xx1 group */
Zaitsev 10:41552d038a69 374 #define MEGA_XX0_1 (MEGA_XX0 || MEGA_XX1)
Zaitsev 10:41552d038a69 375
Zaitsev 10:41552d038a69 376 /** ATmegaxx4 group */
Zaitsev 10:41552d038a69 377 #define MEGA_XX4 ( \
Zaitsev 10:41552d038a69 378 AVR8_PART_IS_DEFINED(ATmega164A) || \
Zaitsev 10:41552d038a69 379 AVR8_PART_IS_DEFINED(ATmega164PA) || \
Zaitsev 10:41552d038a69 380 AVR8_PART_IS_DEFINED(ATmega324A) || \
Zaitsev 10:41552d038a69 381 AVR8_PART_IS_DEFINED(ATmega324PA) || \
Zaitsev 10:41552d038a69 382 AVR8_PART_IS_DEFINED(ATmega644) || \
Zaitsev 10:41552d038a69 383 AVR8_PART_IS_DEFINED(ATmega644A) || \
Zaitsev 10:41552d038a69 384 AVR8_PART_IS_DEFINED(ATmega644PA) || \
Zaitsev 10:41552d038a69 385 AVR8_PART_IS_DEFINED(ATmega1284P) || \
Zaitsev 10:41552d038a69 386 AVR8_PART_IS_DEFINED(ATmega128RFA1) \
Zaitsev 10:41552d038a69 387 )
Zaitsev 10:41552d038a69 388
Zaitsev 10:41552d038a69 389 /** ATmegaxx4 group */
Zaitsev 10:41552d038a69 390 #define MEGA_XX4_A ( \
Zaitsev 10:41552d038a69 391 AVR8_PART_IS_DEFINED(ATmega164A) || \
Zaitsev 10:41552d038a69 392 AVR8_PART_IS_DEFINED(ATmega164PA) || \
Zaitsev 10:41552d038a69 393 AVR8_PART_IS_DEFINED(ATmega324A) || \
Zaitsev 10:41552d038a69 394 AVR8_PART_IS_DEFINED(ATmega324PA) || \
Zaitsev 10:41552d038a69 395 AVR8_PART_IS_DEFINED(ATmega644A) || \
Zaitsev 10:41552d038a69 396 AVR8_PART_IS_DEFINED(ATmega644PA) || \
Zaitsev 10:41552d038a69 397 AVR8_PART_IS_DEFINED(ATmega1284P) \
Zaitsev 10:41552d038a69 398 )
Zaitsev 10:41552d038a69 399
Zaitsev 10:41552d038a69 400 /** ATmegaxx8 group */
Zaitsev 10:41552d038a69 401 #define MEGA_XX8 ( \
Zaitsev 10:41552d038a69 402 AVR8_PART_IS_DEFINED(ATmega48) || \
Zaitsev 10:41552d038a69 403 AVR8_PART_IS_DEFINED(ATmega48A) || \
Zaitsev 10:41552d038a69 404 AVR8_PART_IS_DEFINED(ATmega48PA) || \
Zaitsev 10:41552d038a69 405 AVR8_PART_IS_DEFINED(ATmega88) || \
Zaitsev 10:41552d038a69 406 AVR8_PART_IS_DEFINED(ATmega88A) || \
Zaitsev 10:41552d038a69 407 AVR8_PART_IS_DEFINED(ATmega88PA) || \
Zaitsev 10:41552d038a69 408 AVR8_PART_IS_DEFINED(ATmega168) || \
Zaitsev 10:41552d038a69 409 AVR8_PART_IS_DEFINED(ATmega168A) || \
Zaitsev 10:41552d038a69 410 AVR8_PART_IS_DEFINED(ATmega168PA) || \
Zaitsev 10:41552d038a69 411 AVR8_PART_IS_DEFINED(ATmega328) || \
Zaitsev 10:41552d038a69 412 AVR8_PART_IS_DEFINED(ATmega328P) \
Zaitsev 10:41552d038a69 413 )
Zaitsev 10:41552d038a69 414
Zaitsev 10:41552d038a69 415 /** ATmegaxx8A/P/PA group */
Zaitsev 10:41552d038a69 416 #define MEGA_XX8_A ( \
Zaitsev 10:41552d038a69 417 AVR8_PART_IS_DEFINED(ATmega48A) || \
Zaitsev 10:41552d038a69 418 AVR8_PART_IS_DEFINED(ATmega48PA) || \
Zaitsev 10:41552d038a69 419 AVR8_PART_IS_DEFINED(ATmega88A) || \
Zaitsev 10:41552d038a69 420 AVR8_PART_IS_DEFINED(ATmega88PA) || \
Zaitsev 10:41552d038a69 421 AVR8_PART_IS_DEFINED(ATmega168A) || \
Zaitsev 10:41552d038a69 422 AVR8_PART_IS_DEFINED(ATmega168PA) || \
Zaitsev 10:41552d038a69 423 AVR8_PART_IS_DEFINED(ATmega328P) \
Zaitsev 10:41552d038a69 424 )
Zaitsev 10:41552d038a69 425
Zaitsev 10:41552d038a69 426 /** ATmegaxx group */
Zaitsev 10:41552d038a69 427 #define MEGA_XX ( \
Zaitsev 10:41552d038a69 428 AVR8_PART_IS_DEFINED(ATmega16) || \
Zaitsev 10:41552d038a69 429 AVR8_PART_IS_DEFINED(ATmega16A) || \
Zaitsev 10:41552d038a69 430 AVR8_PART_IS_DEFINED(ATmega32) || \
Zaitsev 10:41552d038a69 431 AVR8_PART_IS_DEFINED(ATmega32A) || \
Zaitsev 10:41552d038a69 432 AVR8_PART_IS_DEFINED(ATmega64) || \
Zaitsev 10:41552d038a69 433 AVR8_PART_IS_DEFINED(ATmega64A) || \
Zaitsev 10:41552d038a69 434 AVR8_PART_IS_DEFINED(ATmega128) || \
Zaitsev 10:41552d038a69 435 AVR8_PART_IS_DEFINED(ATmega128A) \
Zaitsev 10:41552d038a69 436 )
Zaitsev 10:41552d038a69 437
Zaitsev 10:41552d038a69 438 /** ATmegaxxA/P/PA group */
Zaitsev 10:41552d038a69 439 #define MEGA_XX_A ( \
Zaitsev 10:41552d038a69 440 AVR8_PART_IS_DEFINED(ATmega16A) || \
Zaitsev 10:41552d038a69 441 AVR8_PART_IS_DEFINED(ATmega32A) || \
Zaitsev 10:41552d038a69 442 AVR8_PART_IS_DEFINED(ATmega64A) || \
Zaitsev 10:41552d038a69 443 AVR8_PART_IS_DEFINED(ATmega128A) \
Zaitsev 10:41552d038a69 444 )
Zaitsev 10:41552d038a69 445 /** ATmegaxxRFA1 group */
Zaitsev 10:41552d038a69 446 #define MEGA_RFA1 ( \
Zaitsev 10:41552d038a69 447 AVR8_PART_IS_DEFINED(ATmega128RFA1) \
Zaitsev 10:41552d038a69 448 )
Zaitsev 10:41552d038a69 449
Zaitsev 10:41552d038a69 450 /** ATmegaxxRFR2 group */
Zaitsev 10:41552d038a69 451 #define MEGA_RFR2 ( \
Zaitsev 10:41552d038a69 452 AVR8_PART_IS_DEFINED(ATmega64RFR2) || \
Zaitsev 10:41552d038a69 453 AVR8_PART_IS_DEFINED(ATmega128RFR2) || \
Zaitsev 10:41552d038a69 454 AVR8_PART_IS_DEFINED(ATmega256RFR2) || \
Zaitsev 10:41552d038a69 455 AVR8_PART_IS_DEFINED(ATmega644RFR2) || \
Zaitsev 10:41552d038a69 456 AVR8_PART_IS_DEFINED(ATmega1284RFR2) || \
Zaitsev 10:41552d038a69 457 AVR8_PART_IS_DEFINED(ATmega2564RFR2) \
Zaitsev 10:41552d038a69 458 )
Zaitsev 10:41552d038a69 459
Zaitsev 10:41552d038a69 460
Zaitsev 10:41552d038a69 461 /** ATmegaxxRFxx group */
Zaitsev 10:41552d038a69 462 #define MEGA_RF (MEGA_RFA1 || MEGA_RFR2)
Zaitsev 10:41552d038a69 463
Zaitsev 10:41552d038a69 464 /**
Zaitsev 10:41552d038a69 465 * \name ATmegaxx_un0/un1/un2 subgroups
Zaitsev 10:41552d038a69 466 * @{
Zaitsev 10:41552d038a69 467 */
Zaitsev 10:41552d038a69 468 #define MEGA_XX_UN0 ( \
Zaitsev 10:41552d038a69 469 AVR8_PART_IS_DEFINED(ATmega16) || \
Zaitsev 10:41552d038a69 470 AVR8_PART_IS_DEFINED(ATmega16A) || \
Zaitsev 10:41552d038a69 471 AVR8_PART_IS_DEFINED(ATmega32) || \
Zaitsev 10:41552d038a69 472 AVR8_PART_IS_DEFINED(ATmega32A) \
Zaitsev 10:41552d038a69 473 )
Zaitsev 10:41552d038a69 474
Zaitsev 10:41552d038a69 475 /** ATmegaxx group without power reduction and
Zaitsev 10:41552d038a69 476 * And interrupt sense register.
Zaitsev 10:41552d038a69 477 */
Zaitsev 10:41552d038a69 478 #define MEGA_XX_UN1 ( \
Zaitsev 10:41552d038a69 479 AVR8_PART_IS_DEFINED(ATmega64) || \
Zaitsev 10:41552d038a69 480 AVR8_PART_IS_DEFINED(ATmega64A) || \
Zaitsev 10:41552d038a69 481 AVR8_PART_IS_DEFINED(ATmega128) || \
Zaitsev 10:41552d038a69 482 AVR8_PART_IS_DEFINED(ATmega128A) \
Zaitsev 10:41552d038a69 483 )
Zaitsev 10:41552d038a69 484
Zaitsev 10:41552d038a69 485 /** ATmegaxx group without power reduction and
Zaitsev 10:41552d038a69 486 * And interrupt sense register.
Zaitsev 10:41552d038a69 487 */
Zaitsev 10:41552d038a69 488 #define MEGA_XX_UN2 ( \
Zaitsev 10:41552d038a69 489 AVR8_PART_IS_DEFINED(ATmega169P) || \
Zaitsev 10:41552d038a69 490 AVR8_PART_IS_DEFINED(ATmega169PA) || \
Zaitsev 10:41552d038a69 491 AVR8_PART_IS_DEFINED(ATmega329P) || \
Zaitsev 10:41552d038a69 492 AVR8_PART_IS_DEFINED(ATmega329PA) \
Zaitsev 10:41552d038a69 493 )
Zaitsev 10:41552d038a69 494
Zaitsev 10:41552d038a69 495 /** Devices added to complete megaAVR offering.
Zaitsev 10:41552d038a69 496 * Please do not use this group symbol as it is not intended
Zaitsev 10:41552d038a69 497 * to be permanent: the devices should be regrouped.
Zaitsev 10:41552d038a69 498 */
Zaitsev 10:41552d038a69 499 #define MEGA_UNCATEGORIZED ( \
Zaitsev 10:41552d038a69 500 AVR8_PART_IS_DEFINED(AT90CAN128) || \
Zaitsev 10:41552d038a69 501 AVR8_PART_IS_DEFINED(AT90CAN32) || \
Zaitsev 10:41552d038a69 502 AVR8_PART_IS_DEFINED(AT90CAN64) || \
Zaitsev 10:41552d038a69 503 AVR8_PART_IS_DEFINED(AT90PWM1) || \
Zaitsev 10:41552d038a69 504 AVR8_PART_IS_DEFINED(AT90PWM216) || \
Zaitsev 10:41552d038a69 505 AVR8_PART_IS_DEFINED(AT90PWM2B) || \
Zaitsev 10:41552d038a69 506 AVR8_PART_IS_DEFINED(AT90PWM316) || \
Zaitsev 10:41552d038a69 507 AVR8_PART_IS_DEFINED(AT90PWM3B) || \
Zaitsev 10:41552d038a69 508 AVR8_PART_IS_DEFINED(AT90PWM81) || \
Zaitsev 10:41552d038a69 509 AVR8_PART_IS_DEFINED(AT90USB1286) || \
Zaitsev 10:41552d038a69 510 AVR8_PART_IS_DEFINED(AT90USB1287) || \
Zaitsev 10:41552d038a69 511 AVR8_PART_IS_DEFINED(AT90USB162) || \
Zaitsev 10:41552d038a69 512 AVR8_PART_IS_DEFINED(AT90USB646) || \
Zaitsev 10:41552d038a69 513 AVR8_PART_IS_DEFINED(AT90USB647) || \
Zaitsev 10:41552d038a69 514 AVR8_PART_IS_DEFINED(AT90USB82) || \
Zaitsev 10:41552d038a69 515 AVR8_PART_IS_DEFINED(ATmega1284) || \
Zaitsev 10:41552d038a69 516 AVR8_PART_IS_DEFINED(ATmega162) || \
Zaitsev 10:41552d038a69 517 AVR8_PART_IS_DEFINED(ATmega164P) || \
Zaitsev 10:41552d038a69 518 AVR8_PART_IS_DEFINED(ATmega165A) || \
Zaitsev 10:41552d038a69 519 AVR8_PART_IS_DEFINED(ATmega165P) || \
Zaitsev 10:41552d038a69 520 AVR8_PART_IS_DEFINED(ATmega165PA) || \
Zaitsev 10:41552d038a69 521 AVR8_PART_IS_DEFINED(ATmega168P) || \
Zaitsev 10:41552d038a69 522 AVR8_PART_IS_DEFINED(ATmega169A) || \
Zaitsev 10:41552d038a69 523 AVR8_PART_IS_DEFINED(ATmega16M1) || \
Zaitsev 10:41552d038a69 524 AVR8_PART_IS_DEFINED(ATmega16U2) || \
Zaitsev 10:41552d038a69 525 AVR8_PART_IS_DEFINED(ATmega16U4) || \
Zaitsev 10:41552d038a69 526 AVR8_PART_IS_DEFINED(ATmega256RFA2) || \
Zaitsev 10:41552d038a69 527 AVR8_PART_IS_DEFINED(ATmega324P) || \
Zaitsev 10:41552d038a69 528 AVR8_PART_IS_DEFINED(ATmega325) || \
Zaitsev 10:41552d038a69 529 AVR8_PART_IS_DEFINED(ATmega3250) || \
Zaitsev 10:41552d038a69 530 AVR8_PART_IS_DEFINED(ATmega3250A) || \
Zaitsev 10:41552d038a69 531 AVR8_PART_IS_DEFINED(ATmega3250P) || \
Zaitsev 10:41552d038a69 532 AVR8_PART_IS_DEFINED(ATmega3250PA) || \
Zaitsev 10:41552d038a69 533 AVR8_PART_IS_DEFINED(ATmega325A) || \
Zaitsev 10:41552d038a69 534 AVR8_PART_IS_DEFINED(ATmega325P) || \
Zaitsev 10:41552d038a69 535 AVR8_PART_IS_DEFINED(ATmega325PA) || \
Zaitsev 10:41552d038a69 536 AVR8_PART_IS_DEFINED(ATmega329) || \
Zaitsev 10:41552d038a69 537 AVR8_PART_IS_DEFINED(ATmega3290) || \
Zaitsev 10:41552d038a69 538 AVR8_PART_IS_DEFINED(ATmega3290A) || \
Zaitsev 10:41552d038a69 539 AVR8_PART_IS_DEFINED(ATmega3290P) || \
Zaitsev 10:41552d038a69 540 AVR8_PART_IS_DEFINED(ATmega3290PA) || \
Zaitsev 10:41552d038a69 541 AVR8_PART_IS_DEFINED(ATmega329A) || \
Zaitsev 10:41552d038a69 542 AVR8_PART_IS_DEFINED(ATmega32M1) || \
Zaitsev 10:41552d038a69 543 AVR8_PART_IS_DEFINED(ATmega32U2) || \
Zaitsev 10:41552d038a69 544 AVR8_PART_IS_DEFINED(ATmega32U4) || \
Zaitsev 10:41552d038a69 545 AVR8_PART_IS_DEFINED(ATmega48P) || \
Zaitsev 10:41552d038a69 546 AVR8_PART_IS_DEFINED(ATmega644P) || \
Zaitsev 10:41552d038a69 547 AVR8_PART_IS_DEFINED(ATmega645) || \
Zaitsev 10:41552d038a69 548 AVR8_PART_IS_DEFINED(ATmega6450) || \
Zaitsev 10:41552d038a69 549 AVR8_PART_IS_DEFINED(ATmega6450A) || \
Zaitsev 10:41552d038a69 550 AVR8_PART_IS_DEFINED(ATmega6450P) || \
Zaitsev 10:41552d038a69 551 AVR8_PART_IS_DEFINED(ATmega645A) || \
Zaitsev 10:41552d038a69 552 AVR8_PART_IS_DEFINED(ATmega645P) || \
Zaitsev 10:41552d038a69 553 AVR8_PART_IS_DEFINED(ATmega649) || \
Zaitsev 10:41552d038a69 554 AVR8_PART_IS_DEFINED(ATmega6490) || \
Zaitsev 10:41552d038a69 555 AVR8_PART_IS_DEFINED(ATmega6490A) || \
Zaitsev 10:41552d038a69 556 AVR8_PART_IS_DEFINED(ATmega6490P) || \
Zaitsev 10:41552d038a69 557 AVR8_PART_IS_DEFINED(ATmega649A) || \
Zaitsev 10:41552d038a69 558 AVR8_PART_IS_DEFINED(ATmega649P) || \
Zaitsev 10:41552d038a69 559 AVR8_PART_IS_DEFINED(ATmega64M1) || \
Zaitsev 10:41552d038a69 560 AVR8_PART_IS_DEFINED(ATmega64RFA2) || \
Zaitsev 10:41552d038a69 561 AVR8_PART_IS_DEFINED(ATmega8) || \
Zaitsev 10:41552d038a69 562 AVR8_PART_IS_DEFINED(ATmega8515) || \
Zaitsev 10:41552d038a69 563 AVR8_PART_IS_DEFINED(ATmega8535) || \
Zaitsev 10:41552d038a69 564 AVR8_PART_IS_DEFINED(ATmega88P) || \
Zaitsev 10:41552d038a69 565 AVR8_PART_IS_DEFINED(ATmega8A) || \
Zaitsev 10:41552d038a69 566 AVR8_PART_IS_DEFINED(ATmega8U2) \
Zaitsev 10:41552d038a69 567 )
Zaitsev 10:41552d038a69 568
Zaitsev 10:41552d038a69 569 /** Unspecified group */
Zaitsev 10:41552d038a69 570 #define MEGA_UNSPECIFIED (MEGA_XX_UN0 || MEGA_XX_UN1 || MEGA_XX_UN2 || \
Zaitsev 10:41552d038a69 571 MEGA_UNCATEGORIZED)
Zaitsev 10:41552d038a69 572
Zaitsev 10:41552d038a69 573 /** @} */
Zaitsev 10:41552d038a69 574
Zaitsev 10:41552d038a69 575 /** megaAVR product line */
Zaitsev 10:41552d038a69 576 #define MEGA (MEGA_XX0_1 || MEGA_XX4 || MEGA_XX8 || MEGA_XX || MEGA_RF || \
Zaitsev 10:41552d038a69 577 MEGA_UNSPECIFIED)
Zaitsev 10:41552d038a69 578
Zaitsev 10:41552d038a69 579 /** @} */
Zaitsev 10:41552d038a69 580
Zaitsev 10:41552d038a69 581 /**
Zaitsev 10:41552d038a69 582 * \defgroup tiny_part_macros_group tinyAVR parts
Zaitsev 10:41552d038a69 583 *
Zaitsev 10:41552d038a69 584 * @{
Zaitsev 10:41552d038a69 585 */
Zaitsev 10:41552d038a69 586
Zaitsev 10:41552d038a69 587 /**
Zaitsev 10:41552d038a69 588 * \name tinyAVR groups
Zaitsev 10:41552d038a69 589 * @{
Zaitsev 10:41552d038a69 590 */
Zaitsev 10:41552d038a69 591
Zaitsev 10:41552d038a69 592 /** Devices added to complete tinyAVR offering.
Zaitsev 10:41552d038a69 593 * Please do not use this group symbol as it is not intended
Zaitsev 10:41552d038a69 594 * to be permanent: the devices should be regrouped.
Zaitsev 10:41552d038a69 595 */
Zaitsev 10:41552d038a69 596 #define TINY_UNCATEGORIZED ( \
Zaitsev 10:41552d038a69 597 AVR8_PART_IS_DEFINED(ATtiny10) || \
Zaitsev 10:41552d038a69 598 AVR8_PART_IS_DEFINED(ATtiny13) || \
Zaitsev 10:41552d038a69 599 AVR8_PART_IS_DEFINED(ATtiny13A) || \
Zaitsev 10:41552d038a69 600 AVR8_PART_IS_DEFINED(ATtiny1634) || \
Zaitsev 10:41552d038a69 601 AVR8_PART_IS_DEFINED(ATtiny167) || \
Zaitsev 10:41552d038a69 602 AVR8_PART_IS_DEFINED(ATtiny20) || \
Zaitsev 10:41552d038a69 603 AVR8_PART_IS_DEFINED(ATtiny2313) || \
Zaitsev 10:41552d038a69 604 AVR8_PART_IS_DEFINED(ATtiny2313A) || \
Zaitsev 10:41552d038a69 605 AVR8_PART_IS_DEFINED(ATtiny24) || \
Zaitsev 10:41552d038a69 606 AVR8_PART_IS_DEFINED(ATtiny24A) || \
Zaitsev 10:41552d038a69 607 AVR8_PART_IS_DEFINED(ATtiny25) || \
Zaitsev 10:41552d038a69 608 AVR8_PART_IS_DEFINED(ATtiny26) || \
Zaitsev 10:41552d038a69 609 AVR8_PART_IS_DEFINED(ATtiny261) || \
Zaitsev 10:41552d038a69 610 AVR8_PART_IS_DEFINED(ATtiny261A) || \
Zaitsev 10:41552d038a69 611 AVR8_PART_IS_DEFINED(ATtiny4) || \
Zaitsev 10:41552d038a69 612 AVR8_PART_IS_DEFINED(ATtiny40) || \
Zaitsev 10:41552d038a69 613 AVR8_PART_IS_DEFINED(ATtiny4313) || \
Zaitsev 10:41552d038a69 614 AVR8_PART_IS_DEFINED(ATtiny43U) || \
Zaitsev 10:41552d038a69 615 AVR8_PART_IS_DEFINED(ATtiny44) || \
Zaitsev 10:41552d038a69 616 AVR8_PART_IS_DEFINED(ATtiny44A) || \
Zaitsev 10:41552d038a69 617 AVR8_PART_IS_DEFINED(ATtiny45) || \
Zaitsev 10:41552d038a69 618 AVR8_PART_IS_DEFINED(ATtiny461) || \
Zaitsev 10:41552d038a69 619 AVR8_PART_IS_DEFINED(ATtiny461A) || \
Zaitsev 10:41552d038a69 620 AVR8_PART_IS_DEFINED(ATtiny48) || \
Zaitsev 10:41552d038a69 621 AVR8_PART_IS_DEFINED(ATtiny5) || \
Zaitsev 10:41552d038a69 622 AVR8_PART_IS_DEFINED(ATtiny828) || \
Zaitsev 10:41552d038a69 623 AVR8_PART_IS_DEFINED(ATtiny84) || \
Zaitsev 10:41552d038a69 624 AVR8_PART_IS_DEFINED(ATtiny84A) || \
Zaitsev 10:41552d038a69 625 AVR8_PART_IS_DEFINED(ATtiny85) || \
Zaitsev 10:41552d038a69 626 AVR8_PART_IS_DEFINED(ATtiny861) || \
Zaitsev 10:41552d038a69 627 AVR8_PART_IS_DEFINED(ATtiny861A) || \
Zaitsev 10:41552d038a69 628 AVR8_PART_IS_DEFINED(ATtiny87) || \
Zaitsev 10:41552d038a69 629 AVR8_PART_IS_DEFINED(ATtiny88) || \
Zaitsev 10:41552d038a69 630 AVR8_PART_IS_DEFINED(ATtiny9) \
Zaitsev 10:41552d038a69 631 )
Zaitsev 10:41552d038a69 632
Zaitsev 10:41552d038a69 633 /** @} */
Zaitsev 10:41552d038a69 634
Zaitsev 10:41552d038a69 635 /** tinyAVR product line */
Zaitsev 10:41552d038a69 636 #define TINY (TINY_UNCATEGORIZED)
Zaitsev 10:41552d038a69 637
Zaitsev 10:41552d038a69 638 /** @} */
Zaitsev 10:41552d038a69 639
Zaitsev 10:41552d038a69 640 /**
Zaitsev 10:41552d038a69 641 * \defgroup sam_part_macros_group SAM parts
Zaitsev 10:41552d038a69 642 * @{
Zaitsev 10:41552d038a69 643 */
Zaitsev 10:41552d038a69 644
Zaitsev 10:41552d038a69 645 /**
Zaitsev 10:41552d038a69 646 * \name SAM3S series
Zaitsev 10:41552d038a69 647 * @{
Zaitsev 10:41552d038a69 648 */
Zaitsev 10:41552d038a69 649 #define SAM3S1 ( \
Zaitsev 10:41552d038a69 650 SAM_PART_IS_DEFINED(SAM3S1A) || \
Zaitsev 10:41552d038a69 651 SAM_PART_IS_DEFINED(SAM3S1B) || \
Zaitsev 10:41552d038a69 652 SAM_PART_IS_DEFINED(SAM3S1C) \
Zaitsev 10:41552d038a69 653 )
Zaitsev 10:41552d038a69 654
Zaitsev 10:41552d038a69 655 #define SAM3S2 ( \
Zaitsev 10:41552d038a69 656 SAM_PART_IS_DEFINED(SAM3S2A) || \
Zaitsev 10:41552d038a69 657 SAM_PART_IS_DEFINED(SAM3S2B) || \
Zaitsev 10:41552d038a69 658 SAM_PART_IS_DEFINED(SAM3S2C) \
Zaitsev 10:41552d038a69 659 )
Zaitsev 10:41552d038a69 660
Zaitsev 10:41552d038a69 661 #define SAM3S4 ( \
Zaitsev 10:41552d038a69 662 SAM_PART_IS_DEFINED(SAM3S4A) || \
Zaitsev 10:41552d038a69 663 SAM_PART_IS_DEFINED(SAM3S4B) || \
Zaitsev 10:41552d038a69 664 SAM_PART_IS_DEFINED(SAM3S4C) \
Zaitsev 10:41552d038a69 665 )
Zaitsev 10:41552d038a69 666
Zaitsev 10:41552d038a69 667 #define SAM3S8 ( \
Zaitsev 10:41552d038a69 668 SAM_PART_IS_DEFINED(SAM3S8B) || \
Zaitsev 10:41552d038a69 669 SAM_PART_IS_DEFINED(SAM3S8C) \
Zaitsev 10:41552d038a69 670 )
Zaitsev 10:41552d038a69 671
Zaitsev 10:41552d038a69 672 #define SAM3SD8 ( \
Zaitsev 10:41552d038a69 673 SAM_PART_IS_DEFINED(SAM3SD8B) || \
Zaitsev 10:41552d038a69 674 SAM_PART_IS_DEFINED(SAM3SD8C) \
Zaitsev 10:41552d038a69 675 )
Zaitsev 10:41552d038a69 676 /** @} */
Zaitsev 10:41552d038a69 677
Zaitsev 10:41552d038a69 678 /**
Zaitsev 10:41552d038a69 679 * \name SAM3U series
Zaitsev 10:41552d038a69 680 * @{
Zaitsev 10:41552d038a69 681 */
Zaitsev 10:41552d038a69 682 #define SAM3U1 ( \
Zaitsev 10:41552d038a69 683 SAM_PART_IS_DEFINED(SAM3U1C) || \
Zaitsev 10:41552d038a69 684 SAM_PART_IS_DEFINED(SAM3U1E) \
Zaitsev 10:41552d038a69 685 )
Zaitsev 10:41552d038a69 686
Zaitsev 10:41552d038a69 687 #define SAM3U2 ( \
Zaitsev 10:41552d038a69 688 SAM_PART_IS_DEFINED(SAM3U2C) || \
Zaitsev 10:41552d038a69 689 SAM_PART_IS_DEFINED(SAM3U2E) \
Zaitsev 10:41552d038a69 690 )
Zaitsev 10:41552d038a69 691
Zaitsev 10:41552d038a69 692 #define SAM3U4 ( \
Zaitsev 10:41552d038a69 693 SAM_PART_IS_DEFINED(SAM3U4C) || \
Zaitsev 10:41552d038a69 694 SAM_PART_IS_DEFINED(SAM3U4E) \
Zaitsev 10:41552d038a69 695 )
Zaitsev 10:41552d038a69 696 /** @} */
Zaitsev 10:41552d038a69 697
Zaitsev 10:41552d038a69 698 /**
Zaitsev 10:41552d038a69 699 * \name SAM3N series
Zaitsev 10:41552d038a69 700 * @{
Zaitsev 10:41552d038a69 701 */
Zaitsev 10:41552d038a69 702 #define SAM3N00 ( \
Zaitsev 10:41552d038a69 703 SAM_PART_IS_DEFINED(SAM3N00A) || \
Zaitsev 10:41552d038a69 704 SAM_PART_IS_DEFINED(SAM3N00B) \
Zaitsev 10:41552d038a69 705 )
Zaitsev 10:41552d038a69 706
Zaitsev 10:41552d038a69 707 #define SAM3N0 ( \
Zaitsev 10:41552d038a69 708 SAM_PART_IS_DEFINED(SAM3N0A) || \
Zaitsev 10:41552d038a69 709 SAM_PART_IS_DEFINED(SAM3N0B) || \
Zaitsev 10:41552d038a69 710 SAM_PART_IS_DEFINED(SAM3N0C) \
Zaitsev 10:41552d038a69 711 )
Zaitsev 10:41552d038a69 712
Zaitsev 10:41552d038a69 713 #define SAM3N1 ( \
Zaitsev 10:41552d038a69 714 SAM_PART_IS_DEFINED(SAM3N1A) || \
Zaitsev 10:41552d038a69 715 SAM_PART_IS_DEFINED(SAM3N1B) || \
Zaitsev 10:41552d038a69 716 SAM_PART_IS_DEFINED(SAM3N1C) \
Zaitsev 10:41552d038a69 717 )
Zaitsev 10:41552d038a69 718
Zaitsev 10:41552d038a69 719 #define SAM3N2 ( \
Zaitsev 10:41552d038a69 720 SAM_PART_IS_DEFINED(SAM3N2A) || \
Zaitsev 10:41552d038a69 721 SAM_PART_IS_DEFINED(SAM3N2B) || \
Zaitsev 10:41552d038a69 722 SAM_PART_IS_DEFINED(SAM3N2C) \
Zaitsev 10:41552d038a69 723 )
Zaitsev 10:41552d038a69 724
Zaitsev 10:41552d038a69 725 #define SAM3N4 ( \
Zaitsev 10:41552d038a69 726 SAM_PART_IS_DEFINED(SAM3N4A) || \
Zaitsev 10:41552d038a69 727 SAM_PART_IS_DEFINED(SAM3N4B) || \
Zaitsev 10:41552d038a69 728 SAM_PART_IS_DEFINED(SAM3N4C) \
Zaitsev 10:41552d038a69 729 )
Zaitsev 10:41552d038a69 730 /** @} */
Zaitsev 10:41552d038a69 731
Zaitsev 10:41552d038a69 732 /**
Zaitsev 10:41552d038a69 733 * \name SAM3X series
Zaitsev 10:41552d038a69 734 * @{
Zaitsev 10:41552d038a69 735 */
Zaitsev 10:41552d038a69 736 #define SAM3X4 ( \
Zaitsev 10:41552d038a69 737 SAM_PART_IS_DEFINED(SAM3X4C) || \
Zaitsev 10:41552d038a69 738 SAM_PART_IS_DEFINED(SAM3X4E) \
Zaitsev 10:41552d038a69 739 )
Zaitsev 10:41552d038a69 740
Zaitsev 10:41552d038a69 741 #define SAM3X8 ( \
Zaitsev 10:41552d038a69 742 SAM_PART_IS_DEFINED(SAM3X8C) || \
Zaitsev 10:41552d038a69 743 SAM_PART_IS_DEFINED(SAM3X8E) || \
Zaitsev 10:41552d038a69 744 SAM_PART_IS_DEFINED(SAM3X8H) \
Zaitsev 10:41552d038a69 745 )
Zaitsev 10:41552d038a69 746 /** @} */
Zaitsev 10:41552d038a69 747
Zaitsev 10:41552d038a69 748 /**
Zaitsev 10:41552d038a69 749 * \name SAM3A series
Zaitsev 10:41552d038a69 750 * @{
Zaitsev 10:41552d038a69 751 */
Zaitsev 10:41552d038a69 752 #define SAM3A4 ( \
Zaitsev 10:41552d038a69 753 SAM_PART_IS_DEFINED(SAM3A4C) \
Zaitsev 10:41552d038a69 754 )
Zaitsev 10:41552d038a69 755
Zaitsev 10:41552d038a69 756 #define SAM3A8 ( \
Zaitsev 10:41552d038a69 757 SAM_PART_IS_DEFINED(SAM3A8C) \
Zaitsev 10:41552d038a69 758 )
Zaitsev 10:41552d038a69 759 /** @} */
Zaitsev 10:41552d038a69 760
Zaitsev 10:41552d038a69 761 /**
Zaitsev 10:41552d038a69 762 * \name SAM4S series
Zaitsev 10:41552d038a69 763 * @{
Zaitsev 10:41552d038a69 764 */
Zaitsev 10:41552d038a69 765 #define SAM4S2 ( \
Zaitsev 10:41552d038a69 766 SAM_PART_IS_DEFINED(SAM4S2A) || \
Zaitsev 10:41552d038a69 767 SAM_PART_IS_DEFINED(SAM4S2B) || \
Zaitsev 10:41552d038a69 768 SAM_PART_IS_DEFINED(SAM4S2C) \
Zaitsev 10:41552d038a69 769 )
Zaitsev 10:41552d038a69 770
Zaitsev 10:41552d038a69 771 #define SAM4S4 ( \
Zaitsev 10:41552d038a69 772 SAM_PART_IS_DEFINED(SAM4S4A) || \
Zaitsev 10:41552d038a69 773 SAM_PART_IS_DEFINED(SAM4S4B) || \
Zaitsev 10:41552d038a69 774 SAM_PART_IS_DEFINED(SAM4S4C) \
Zaitsev 10:41552d038a69 775 )
Zaitsev 10:41552d038a69 776
Zaitsev 10:41552d038a69 777 #define SAM4S8 ( \
Zaitsev 10:41552d038a69 778 SAM_PART_IS_DEFINED(SAM4S8B) || \
Zaitsev 10:41552d038a69 779 SAM_PART_IS_DEFINED(SAM4S8C) \
Zaitsev 10:41552d038a69 780 )
Zaitsev 10:41552d038a69 781
Zaitsev 10:41552d038a69 782 #define SAM4S16 ( \
Zaitsev 10:41552d038a69 783 SAM_PART_IS_DEFINED(SAM4S16B) || \
Zaitsev 10:41552d038a69 784 SAM_PART_IS_DEFINED(SAM4S16C) \
Zaitsev 10:41552d038a69 785 )
Zaitsev 10:41552d038a69 786
Zaitsev 10:41552d038a69 787 #define SAM4SA16 ( \
Zaitsev 10:41552d038a69 788 SAM_PART_IS_DEFINED(SAM4SA16B) || \
Zaitsev 10:41552d038a69 789 SAM_PART_IS_DEFINED(SAM4SA16C) \
Zaitsev 10:41552d038a69 790 )
Zaitsev 10:41552d038a69 791
Zaitsev 10:41552d038a69 792 #define SAM4SD16 ( \
Zaitsev 10:41552d038a69 793 SAM_PART_IS_DEFINED(SAM4SD16B) || \
Zaitsev 10:41552d038a69 794 SAM_PART_IS_DEFINED(SAM4SD16C) \
Zaitsev 10:41552d038a69 795 )
Zaitsev 10:41552d038a69 796
Zaitsev 10:41552d038a69 797 #define SAM4SD32 ( \
Zaitsev 10:41552d038a69 798 SAM_PART_IS_DEFINED(SAM4SD32B) || \
Zaitsev 10:41552d038a69 799 SAM_PART_IS_DEFINED(SAM4SD32C) \
Zaitsev 10:41552d038a69 800 )
Zaitsev 10:41552d038a69 801 /** @} */
Zaitsev 10:41552d038a69 802
Zaitsev 10:41552d038a69 803 /**
Zaitsev 10:41552d038a69 804 * \name SAM4L series
Zaitsev 10:41552d038a69 805 * @{
Zaitsev 10:41552d038a69 806 */
Zaitsev 10:41552d038a69 807 #define SAM4LS ( \
Zaitsev 10:41552d038a69 808 SAM_PART_IS_DEFINED(SAM4LS2A) || \
Zaitsev 10:41552d038a69 809 SAM_PART_IS_DEFINED(SAM4LS2B) || \
Zaitsev 10:41552d038a69 810 SAM_PART_IS_DEFINED(SAM4LS2C) || \
Zaitsev 10:41552d038a69 811 SAM_PART_IS_DEFINED(SAM4LS4A) || \
Zaitsev 10:41552d038a69 812 SAM_PART_IS_DEFINED(SAM4LS4B) || \
Zaitsev 10:41552d038a69 813 SAM_PART_IS_DEFINED(SAM4LS4C) || \
Zaitsev 10:41552d038a69 814 SAM_PART_IS_DEFINED(SAM4LS8A) || \
Zaitsev 10:41552d038a69 815 SAM_PART_IS_DEFINED(SAM4LS8B) || \
Zaitsev 10:41552d038a69 816 SAM_PART_IS_DEFINED(SAM4LS8C) \
Zaitsev 10:41552d038a69 817 )
Zaitsev 10:41552d038a69 818
Zaitsev 10:41552d038a69 819 #define SAM4LC ( \
Zaitsev 10:41552d038a69 820 SAM_PART_IS_DEFINED(SAM4LC2A) || \
Zaitsev 10:41552d038a69 821 SAM_PART_IS_DEFINED(SAM4LC2B) || \
Zaitsev 10:41552d038a69 822 SAM_PART_IS_DEFINED(SAM4LC2C) || \
Zaitsev 10:41552d038a69 823 SAM_PART_IS_DEFINED(SAM4LC4A) || \
Zaitsev 10:41552d038a69 824 SAM_PART_IS_DEFINED(SAM4LC4B) || \
Zaitsev 10:41552d038a69 825 SAM_PART_IS_DEFINED(SAM4LC4C) || \
Zaitsev 10:41552d038a69 826 SAM_PART_IS_DEFINED(SAM4LC8A) || \
Zaitsev 10:41552d038a69 827 SAM_PART_IS_DEFINED(SAM4LC8B) || \
Zaitsev 10:41552d038a69 828 SAM_PART_IS_DEFINED(SAM4LC8C) \
Zaitsev 10:41552d038a69 829 )
Zaitsev 10:41552d038a69 830 /** @} */
Zaitsev 10:41552d038a69 831
Zaitsev 10:41552d038a69 832 /**
Zaitsev 10:41552d038a69 833 * \name SAMD20 series
Zaitsev 10:41552d038a69 834 * @{
Zaitsev 10:41552d038a69 835 */
Zaitsev 10:41552d038a69 836 #define SAMD20J ( \
Zaitsev 10:41552d038a69 837 SAM_PART_IS_DEFINED(SAMD20J14) || \
Zaitsev 10:41552d038a69 838 SAM_PART_IS_DEFINED(SAMD20J15) || \
Zaitsev 10:41552d038a69 839 SAM_PART_IS_DEFINED(SAMD20J16) || \
Zaitsev 10:41552d038a69 840 SAM_PART_IS_DEFINED(SAMD20J17) || \
Zaitsev 10:41552d038a69 841 SAM_PART_IS_DEFINED(SAMD20J18) \
Zaitsev 10:41552d038a69 842 )
Zaitsev 10:41552d038a69 843
Zaitsev 10:41552d038a69 844 #define SAMD20G ( \
Zaitsev 10:41552d038a69 845 SAM_PART_IS_DEFINED(SAMD20G14) || \
Zaitsev 10:41552d038a69 846 SAM_PART_IS_DEFINED(SAMD20G15) || \
Zaitsev 10:41552d038a69 847 SAM_PART_IS_DEFINED(SAMD20G16) || \
Zaitsev 10:41552d038a69 848 SAM_PART_IS_DEFINED(SAMD20G17) || \
Zaitsev 10:41552d038a69 849 SAM_PART_IS_DEFINED(SAMD20G17U) || \
Zaitsev 10:41552d038a69 850 SAM_PART_IS_DEFINED(SAMD20G18) || \
Zaitsev 10:41552d038a69 851 SAM_PART_IS_DEFINED(SAMD20G18U) \
Zaitsev 10:41552d038a69 852 )
Zaitsev 10:41552d038a69 853
Zaitsev 10:41552d038a69 854 #define SAMD20E ( \
Zaitsev 10:41552d038a69 855 SAM_PART_IS_DEFINED(SAMD20E14) || \
Zaitsev 10:41552d038a69 856 SAM_PART_IS_DEFINED(SAMD20E15) || \
Zaitsev 10:41552d038a69 857 SAM_PART_IS_DEFINED(SAMD20E16) || \
Zaitsev 10:41552d038a69 858 SAM_PART_IS_DEFINED(SAMD20E17) || \
Zaitsev 10:41552d038a69 859 SAM_PART_IS_DEFINED(SAMD20E18) || \
Zaitsev 10:41552d038a69 860 SAM_PART_IS_DEFINED(SAMD20E1F) \
Zaitsev 10:41552d038a69 861 )
Zaitsev 10:41552d038a69 862 /** @} */
Zaitsev 10:41552d038a69 863
Zaitsev 10:41552d038a69 864 /**
Zaitsev 10:41552d038a69 865 * \name SAMD21 series
Zaitsev 10:41552d038a69 866 * @{
Zaitsev 10:41552d038a69 867 */
Zaitsev 10:41552d038a69 868 #define SAMD21J ( \
Zaitsev 10:41552d038a69 869 SAM_PART_IS_DEFINED(SAMD21J15A) || \
Zaitsev 10:41552d038a69 870 SAM_PART_IS_DEFINED(SAMD21J16A) || \
Zaitsev 10:41552d038a69 871 SAM_PART_IS_DEFINED(SAMD21J17A) || \
Zaitsev 10:41552d038a69 872 SAM_PART_IS_DEFINED(SAMD21J18A) \
Zaitsev 10:41552d038a69 873 )
Zaitsev 10:41552d038a69 874
Zaitsev 10:41552d038a69 875 #define SAMD21G ( \
Zaitsev 10:41552d038a69 876 SAM_PART_IS_DEFINED(SAMD21G15A) || \
Zaitsev 10:41552d038a69 877 SAM_PART_IS_DEFINED(SAMD21G16A) || \
Zaitsev 10:41552d038a69 878 SAM_PART_IS_DEFINED(SAMD21G17A) || \
Zaitsev 10:41552d038a69 879 SAM_PART_IS_DEFINED(SAMD21G18A) \
Zaitsev 10:41552d038a69 880 )
Zaitsev 10:41552d038a69 881
Zaitsev 10:41552d038a69 882 #define SAMD21E ( \
Zaitsev 10:41552d038a69 883 SAM_PART_IS_DEFINED(SAMD21E15A) || \
Zaitsev 10:41552d038a69 884 SAM_PART_IS_DEFINED(SAMD21E16A) || \
Zaitsev 10:41552d038a69 885 SAM_PART_IS_DEFINED(SAMD21E17A) || \
Zaitsev 10:41552d038a69 886 SAM_PART_IS_DEFINED(SAMD21E18A) \
Zaitsev 10:41552d038a69 887 )
Zaitsev 10:41552d038a69 888 /** @} */
Zaitsev 10:41552d038a69 889
Zaitsev 10:41552d038a69 890 /**
Zaitsev 10:41552d038a69 891 * \name SAMR21 series
Zaitsev 10:41552d038a69 892 * @{
Zaitsev 10:41552d038a69 893 */
Zaitsev 10:41552d038a69 894 #define SAMR21G ( \
Zaitsev 10:41552d038a69 895 SAM_PART_IS_DEFINED(SAMR21G16A) || \
Zaitsev 10:41552d038a69 896 SAM_PART_IS_DEFINED(SAMR21G17A) || \
Zaitsev 10:41552d038a69 897 SAM_PART_IS_DEFINED(SAMR21G18A) \
Zaitsev 10:41552d038a69 898 )
Zaitsev 10:41552d038a69 899
Zaitsev 10:41552d038a69 900 #define SAMR21E ( \
Zaitsev 10:41552d038a69 901 SAM_PART_IS_DEFINED(SAMR21E16A) || \
Zaitsev 10:41552d038a69 902 SAM_PART_IS_DEFINED(SAMR21E17A) || \
Zaitsev 10:41552d038a69 903 SAM_PART_IS_DEFINED(SAMR21E18A) \
Zaitsev 10:41552d038a69 904 )
Zaitsev 10:41552d038a69 905 /** @} */
Zaitsev 10:41552d038a69 906
Zaitsev 10:41552d038a69 907 /**
Zaitsev 10:41552d038a69 908 * \name SAMD10 series
Zaitsev 10:41552d038a69 909 * @{
Zaitsev 10:41552d038a69 910 */
Zaitsev 10:41552d038a69 911 #define SAMD10C ( \
Zaitsev 10:41552d038a69 912 SAM_PART_IS_DEFINED(SAMD10C12A) || \
Zaitsev 10:41552d038a69 913 SAM_PART_IS_DEFINED(SAMD10C13A) || \
Zaitsev 10:41552d038a69 914 SAM_PART_IS_DEFINED(SAMD10C14A) \
Zaitsev 10:41552d038a69 915 )
Zaitsev 10:41552d038a69 916
Zaitsev 10:41552d038a69 917 #define SAMD10DS ( \
Zaitsev 10:41552d038a69 918 SAM_PART_IS_DEFINED(SAMD10D12AS) || \
Zaitsev 10:41552d038a69 919 SAM_PART_IS_DEFINED(SAMD10D13AS) || \
Zaitsev 10:41552d038a69 920 SAM_PART_IS_DEFINED(SAMD10D14AS) \
Zaitsev 10:41552d038a69 921 )
Zaitsev 10:41552d038a69 922
Zaitsev 10:41552d038a69 923 #define SAMD10DM ( \
Zaitsev 10:41552d038a69 924 SAM_PART_IS_DEFINED(SAMD10D12AM) || \
Zaitsev 10:41552d038a69 925 SAM_PART_IS_DEFINED(SAMD10D13AM) || \
Zaitsev 10:41552d038a69 926 SAM_PART_IS_DEFINED(SAMD10D14AM) \
Zaitsev 10:41552d038a69 927 )
Zaitsev 10:41552d038a69 928 /** @} */
Zaitsev 10:41552d038a69 929
Zaitsev 10:41552d038a69 930 /**
Zaitsev 10:41552d038a69 931 * \name SAMD11 series
Zaitsev 10:41552d038a69 932 * @{
Zaitsev 10:41552d038a69 933 */
Zaitsev 10:41552d038a69 934 #define SAMD11C ( \
Zaitsev 10:41552d038a69 935 SAM_PART_IS_DEFINED(SAMD11C14A) \
Zaitsev 10:41552d038a69 936 )
Zaitsev 10:41552d038a69 937
Zaitsev 10:41552d038a69 938 #define SAMD11DS ( \
Zaitsev 10:41552d038a69 939 SAM_PART_IS_DEFINED(SAMD11D14AS) \
Zaitsev 10:41552d038a69 940 )
Zaitsev 10:41552d038a69 941
Zaitsev 10:41552d038a69 942 #define SAMD11DM ( \
Zaitsev 10:41552d038a69 943 SAM_PART_IS_DEFINED(SAMD11D14AM) \
Zaitsev 10:41552d038a69 944 )
Zaitsev 10:41552d038a69 945 /** @} */
Zaitsev 10:41552d038a69 946
Zaitsev 10:41552d038a69 947 /**
Zaitsev 10:41552d038a69 948 * \name SAML21 series
Zaitsev 10:41552d038a69 949 * @{
Zaitsev 10:41552d038a69 950 */
Zaitsev 10:41552d038a69 951 #define SAML21E ( \
Zaitsev 10:41552d038a69 952 SAM_PART_IS_DEFINED(SAML21E15A) || \
Zaitsev 10:41552d038a69 953 SAM_PART_IS_DEFINED(SAML21E16A) || \
Zaitsev 10:41552d038a69 954 SAM_PART_IS_DEFINED(SAML21E17A) || \
Zaitsev 10:41552d038a69 955 SAM_PART_IS_DEFINED(SAML21E18A) \
Zaitsev 10:41552d038a69 956 )
Zaitsev 10:41552d038a69 957
Zaitsev 10:41552d038a69 958 #define SAML21G ( \
Zaitsev 10:41552d038a69 959 SAM_PART_IS_DEFINED(SAML21G16A) || \
Zaitsev 10:41552d038a69 960 SAM_PART_IS_DEFINED(SAML21G17A) || \
Zaitsev 10:41552d038a69 961 SAM_PART_IS_DEFINED(SAML21G18A) \
Zaitsev 10:41552d038a69 962 )
Zaitsev 10:41552d038a69 963
Zaitsev 10:41552d038a69 964 #define SAML21J ( \
Zaitsev 10:41552d038a69 965 SAM_PART_IS_DEFINED(SAML21J16A) || \
Zaitsev 10:41552d038a69 966 SAM_PART_IS_DEFINED(SAML21J17A) || \
Zaitsev 10:41552d038a69 967 SAM_PART_IS_DEFINED(SAML21J18A) \
Zaitsev 10:41552d038a69 968 )
Zaitsev 10:41552d038a69 969 /** @} */
Zaitsev 10:41552d038a69 970
Zaitsev 10:41552d038a69 971 /**
Zaitsev 10:41552d038a69 972 * \name SAM4E series
Zaitsev 10:41552d038a69 973 * @{
Zaitsev 10:41552d038a69 974 */
Zaitsev 10:41552d038a69 975 #define SAM4E8 ( \
Zaitsev 10:41552d038a69 976 SAM_PART_IS_DEFINED(SAM4E8C) || \
Zaitsev 10:41552d038a69 977 SAM_PART_IS_DEFINED(SAM4E8E) \
Zaitsev 10:41552d038a69 978 )
Zaitsev 10:41552d038a69 979
Zaitsev 10:41552d038a69 980 #define SAM4E16 ( \
Zaitsev 10:41552d038a69 981 SAM_PART_IS_DEFINED(SAM4E16C) || \
Zaitsev 10:41552d038a69 982 SAM_PART_IS_DEFINED(SAM4E16E) \
Zaitsev 10:41552d038a69 983 )
Zaitsev 10:41552d038a69 984 /** @} */
Zaitsev 10:41552d038a69 985
Zaitsev 10:41552d038a69 986 /**
Zaitsev 10:41552d038a69 987 * \name SAM4N series
Zaitsev 10:41552d038a69 988 * @{
Zaitsev 10:41552d038a69 989 */
Zaitsev 10:41552d038a69 990 #define SAM4N8 ( \
Zaitsev 10:41552d038a69 991 SAM_PART_IS_DEFINED(SAM4N8A) || \
Zaitsev 10:41552d038a69 992 SAM_PART_IS_DEFINED(SAM4N8B) || \
Zaitsev 10:41552d038a69 993 SAM_PART_IS_DEFINED(SAM4N8C) \
Zaitsev 10:41552d038a69 994 )
Zaitsev 10:41552d038a69 995
Zaitsev 10:41552d038a69 996 #define SAM4N16 ( \
Zaitsev 10:41552d038a69 997 SAM_PART_IS_DEFINED(SAM4N16B) || \
Zaitsev 10:41552d038a69 998 SAM_PART_IS_DEFINED(SAM4N16C) \
Zaitsev 10:41552d038a69 999 )
Zaitsev 10:41552d038a69 1000 /** @} */
Zaitsev 10:41552d038a69 1001
Zaitsev 10:41552d038a69 1002 /**
Zaitsev 10:41552d038a69 1003 * \name SAM4C series
Zaitsev 10:41552d038a69 1004 * @{
Zaitsev 10:41552d038a69 1005 */
Zaitsev 10:41552d038a69 1006 #define SAM4C8_0 ( \
Zaitsev 10:41552d038a69 1007 SAM_PART_IS_DEFINED(SAM4C8C_0) \
Zaitsev 10:41552d038a69 1008 )
Zaitsev 10:41552d038a69 1009
Zaitsev 10:41552d038a69 1010 #define SAM4C8_1 ( \
Zaitsev 10:41552d038a69 1011 SAM_PART_IS_DEFINED(SAM4C8C_1) \
Zaitsev 10:41552d038a69 1012 )
Zaitsev 10:41552d038a69 1013
Zaitsev 10:41552d038a69 1014 #define SAM4C8 (SAM4C8_0 || SAM4C8_1)
Zaitsev 10:41552d038a69 1015
Zaitsev 10:41552d038a69 1016 #define SAM4C16_0 ( \
Zaitsev 10:41552d038a69 1017 SAM_PART_IS_DEFINED(SAM4C16C_0) \
Zaitsev 10:41552d038a69 1018 )
Zaitsev 10:41552d038a69 1019
Zaitsev 10:41552d038a69 1020 #define SAM4C16_1 ( \
Zaitsev 10:41552d038a69 1021 SAM_PART_IS_DEFINED(SAM4C16C_1) \
Zaitsev 10:41552d038a69 1022 )
Zaitsev 10:41552d038a69 1023
Zaitsev 10:41552d038a69 1024 #define SAM4C16 (SAM4C16_0 || SAM4C16_1)
Zaitsev 10:41552d038a69 1025
Zaitsev 10:41552d038a69 1026 #define SAM4C32_0 ( \
Zaitsev 10:41552d038a69 1027 SAM_PART_IS_DEFINED(SAM4C32C_0) ||\
Zaitsev 10:41552d038a69 1028 SAM_PART_IS_DEFINED(SAM4C32E_0) \
Zaitsev 10:41552d038a69 1029 )
Zaitsev 10:41552d038a69 1030
Zaitsev 10:41552d038a69 1031 #define SAM4C32_1 ( \
Zaitsev 10:41552d038a69 1032 SAM_PART_IS_DEFINED(SAM4C32C_1) ||\
Zaitsev 10:41552d038a69 1033 SAM_PART_IS_DEFINED(SAM4C32E_1) \
Zaitsev 10:41552d038a69 1034 )
Zaitsev 10:41552d038a69 1035
Zaitsev 10:41552d038a69 1036
Zaitsev 10:41552d038a69 1037 #define SAM4C32 (SAM4C32_0 || SAM4C32_1)
Zaitsev 10:41552d038a69 1038
Zaitsev 10:41552d038a69 1039 /** @} */
Zaitsev 10:41552d038a69 1040
Zaitsev 10:41552d038a69 1041 /**
Zaitsev 10:41552d038a69 1042 * \name SAM4CM series
Zaitsev 10:41552d038a69 1043 * @{
Zaitsev 10:41552d038a69 1044 */
Zaitsev 10:41552d038a69 1045 #define SAM4CMP8_0 ( \
Zaitsev 10:41552d038a69 1046 SAM_PART_IS_DEFINED(SAM4CMP8C_0) \
Zaitsev 10:41552d038a69 1047 )
Zaitsev 10:41552d038a69 1048
Zaitsev 10:41552d038a69 1049 #define SAM4CMP8_1 ( \
Zaitsev 10:41552d038a69 1050 SAM_PART_IS_DEFINED(SAM4CMP8C_1) \
Zaitsev 10:41552d038a69 1051 )
Zaitsev 10:41552d038a69 1052
Zaitsev 10:41552d038a69 1053 #define SAM4CMP8 (SAM4CMP8_0 || SAM4CMP8_1)
Zaitsev 10:41552d038a69 1054
Zaitsev 10:41552d038a69 1055 #define SAM4CMP16_0 ( \
Zaitsev 10:41552d038a69 1056 SAM_PART_IS_DEFINED(SAM4CMP16C_0) \
Zaitsev 10:41552d038a69 1057 )
Zaitsev 10:41552d038a69 1058
Zaitsev 10:41552d038a69 1059 #define SAM4CMP16_1 ( \
Zaitsev 10:41552d038a69 1060 SAM_PART_IS_DEFINED(SAM4CMP16C_1) \
Zaitsev 10:41552d038a69 1061 )
Zaitsev 10:41552d038a69 1062
Zaitsev 10:41552d038a69 1063 #define SAM4CMP16 (SAM4CMP16_0 || SAM4CMP16_1)
Zaitsev 10:41552d038a69 1064
Zaitsev 10:41552d038a69 1065 #define SAM4CMP32_0 ( \
Zaitsev 10:41552d038a69 1066 SAM_PART_IS_DEFINED(SAM4CMP32C_0) \
Zaitsev 10:41552d038a69 1067 )
Zaitsev 10:41552d038a69 1068
Zaitsev 10:41552d038a69 1069 #define SAM4CMP32_1 ( \
Zaitsev 10:41552d038a69 1070 SAM_PART_IS_DEFINED(SAM4CMP32C_1) \
Zaitsev 10:41552d038a69 1071 )
Zaitsev 10:41552d038a69 1072
Zaitsev 10:41552d038a69 1073 #define SAM4CMP32 (SAM4CMP32_0 || SAM4CMP32_1)
Zaitsev 10:41552d038a69 1074
Zaitsev 10:41552d038a69 1075 #define SAM4CMS8_0 ( \
Zaitsev 10:41552d038a69 1076 SAM_PART_IS_DEFINED(SAM4CMS8C_0) \
Zaitsev 10:41552d038a69 1077 )
Zaitsev 10:41552d038a69 1078
Zaitsev 10:41552d038a69 1079 #define SAM4CMS8_1 ( \
Zaitsev 10:41552d038a69 1080 SAM_PART_IS_DEFINED(SAM4CMS8C_1) \
Zaitsev 10:41552d038a69 1081 )
Zaitsev 10:41552d038a69 1082
Zaitsev 10:41552d038a69 1083 #define SAM4CMS8 (SAM4CMS8_0 || SAM4CMS8_1)
Zaitsev 10:41552d038a69 1084
Zaitsev 10:41552d038a69 1085 #define SAM4CMS16_0 ( \
Zaitsev 10:41552d038a69 1086 SAM_PART_IS_DEFINED(SAM4CMS16C_0) \
Zaitsev 10:41552d038a69 1087 )
Zaitsev 10:41552d038a69 1088
Zaitsev 10:41552d038a69 1089 #define SAM4CMS16_1 ( \
Zaitsev 10:41552d038a69 1090 SAM_PART_IS_DEFINED(SAM4CMS16C_1) \
Zaitsev 10:41552d038a69 1091 )
Zaitsev 10:41552d038a69 1092
Zaitsev 10:41552d038a69 1093 #define SAM4CMS16 (SAM4CMS16_0 || SAM4CMS16_1)
Zaitsev 10:41552d038a69 1094
Zaitsev 10:41552d038a69 1095 #define SAM4CMS32_0 ( \
Zaitsev 10:41552d038a69 1096 SAM_PART_IS_DEFINED(SAM4CMS32C_0) \
Zaitsev 10:41552d038a69 1097 )
Zaitsev 10:41552d038a69 1098
Zaitsev 10:41552d038a69 1099 #define SAM4CMS32_1 ( \
Zaitsev 10:41552d038a69 1100 SAM_PART_IS_DEFINED(SAM4CMS32C_1) \
Zaitsev 10:41552d038a69 1101 )
Zaitsev 10:41552d038a69 1102
Zaitsev 10:41552d038a69 1103 #define SAM4CMS32 (SAM4CMS32_0 || SAM4CMS32_1)
Zaitsev 10:41552d038a69 1104
Zaitsev 10:41552d038a69 1105 /** @} */
Zaitsev 10:41552d038a69 1106
Zaitsev 10:41552d038a69 1107 /**
Zaitsev 10:41552d038a69 1108 * \name SAM4CP series
Zaitsev 10:41552d038a69 1109 * @{
Zaitsev 10:41552d038a69 1110 */
Zaitsev 10:41552d038a69 1111 #define SAM4CP16_0 ( \
Zaitsev 10:41552d038a69 1112 SAM_PART_IS_DEFINED(SAM4CP16B_0) \
Zaitsev 10:41552d038a69 1113 )
Zaitsev 10:41552d038a69 1114
Zaitsev 10:41552d038a69 1115 #define SAM4CP16_1 ( \
Zaitsev 10:41552d038a69 1116 SAM_PART_IS_DEFINED(SAM4CP16B_1) \
Zaitsev 10:41552d038a69 1117 )
Zaitsev 10:41552d038a69 1118
Zaitsev 10:41552d038a69 1119 #define SAM4CP16 (SAM4CP16_0 || SAM4CP16_1)
Zaitsev 10:41552d038a69 1120 /** @} */
Zaitsev 10:41552d038a69 1121
Zaitsev 10:41552d038a69 1122 /**
Zaitsev 10:41552d038a69 1123 * \name SAMG series
Zaitsev 10:41552d038a69 1124 * @{
Zaitsev 10:41552d038a69 1125 */
Zaitsev 10:41552d038a69 1126 #define SAMG51 ( \
Zaitsev 10:41552d038a69 1127 SAM_PART_IS_DEFINED(SAMG51G18) \
Zaitsev 10:41552d038a69 1128 )
Zaitsev 10:41552d038a69 1129
Zaitsev 10:41552d038a69 1130 #define SAMG53 ( \
Zaitsev 10:41552d038a69 1131 SAM_PART_IS_DEFINED(SAMG53G19) ||\
Zaitsev 10:41552d038a69 1132 SAM_PART_IS_DEFINED(SAMG53N19) \
Zaitsev 10:41552d038a69 1133 )
Zaitsev 10:41552d038a69 1134
Zaitsev 10:41552d038a69 1135 #define SAMG54 ( \
Zaitsev 10:41552d038a69 1136 SAM_PART_IS_DEFINED(SAMG54G19) ||\
Zaitsev 10:41552d038a69 1137 SAM_PART_IS_DEFINED(SAMG54J19) ||\
Zaitsev 10:41552d038a69 1138 SAM_PART_IS_DEFINED(SAMG54N19) \
Zaitsev 10:41552d038a69 1139 )
Zaitsev 10:41552d038a69 1140
Zaitsev 10:41552d038a69 1141 #define SAMG55 ( \
Zaitsev 10:41552d038a69 1142 SAM_PART_IS_DEFINED(SAMG55G18) ||\
Zaitsev 10:41552d038a69 1143 SAM_PART_IS_DEFINED(SAMG55G19) ||\
Zaitsev 10:41552d038a69 1144 SAM_PART_IS_DEFINED(SAMG55J18) ||\
Zaitsev 10:41552d038a69 1145 SAM_PART_IS_DEFINED(SAMG55J19) ||\
Zaitsev 10:41552d038a69 1146 SAM_PART_IS_DEFINED(SAMG55N19) \
Zaitsev 10:41552d038a69 1147 )
Zaitsev 10:41552d038a69 1148 /** @} */
Zaitsev 10:41552d038a69 1149 /**
Zaitsev 10:41552d038a69 1150 * \name SAM families
Zaitsev 10:41552d038a69 1151 * @{
Zaitsev 10:41552d038a69 1152 */
Zaitsev 10:41552d038a69 1153 /** SAM3S Family */
Zaitsev 10:41552d038a69 1154 #define SAM3S (SAM3S1 || SAM3S2 || SAM3S4 || SAM3S8 || SAM3SD8)
Zaitsev 10:41552d038a69 1155
Zaitsev 10:41552d038a69 1156 /** SAM3U Family */
Zaitsev 10:41552d038a69 1157 #define SAM3U (SAM3U1 || SAM3U2 || SAM3U4)
Zaitsev 10:41552d038a69 1158
Zaitsev 10:41552d038a69 1159 /** SAM3N Family */
Zaitsev 10:41552d038a69 1160 #define SAM3N (SAM3N00 || SAM3N0 || SAM3N1 || SAM3N2 || SAM3N4)
Zaitsev 10:41552d038a69 1161
Zaitsev 10:41552d038a69 1162 /** SAM3XA Family */
Zaitsev 10:41552d038a69 1163 #define SAM3XA (SAM3X4 || SAM3X8 || SAM3A4 || SAM3A8)
Zaitsev 10:41552d038a69 1164
Zaitsev 10:41552d038a69 1165 /** SAM4S Family */
Zaitsev 10:41552d038a69 1166 #define SAM4S (SAM4S2 || SAM4S4 || SAM4S8 || SAM4S16 || SAM4SA16 || SAM4SD16 || SAM4SD32)
Zaitsev 10:41552d038a69 1167
Zaitsev 10:41552d038a69 1168 /** SAM4L Family */
Zaitsev 10:41552d038a69 1169 #define SAM4L (SAM4LS || SAM4LC)
Zaitsev 10:41552d038a69 1170
Zaitsev 10:41552d038a69 1171 /** SAMD20 Family */
Zaitsev 10:41552d038a69 1172 #define SAMD20 (SAMD20J || SAMD20G || SAMD20E)
Zaitsev 10:41552d038a69 1173
Zaitsev 10:41552d038a69 1174 /** SAMD21 Family */
Zaitsev 10:41552d038a69 1175 #define SAMD21 (SAMD21J || SAMD21G || SAMD21E)
Zaitsev 10:41552d038a69 1176
Zaitsev 10:41552d038a69 1177 /** SAMD10 Family */
Zaitsev 10:41552d038a69 1178 #define SAMD10 (SAMD10C || SAMD10DS || SAMD10DM)
Zaitsev 10:41552d038a69 1179
Zaitsev 10:41552d038a69 1180 /** SAMD11 Family */
Zaitsev 10:41552d038a69 1181 #define SAMD11 (SAMD11C || SAMD11DS || SAMD11DM)
Zaitsev 10:41552d038a69 1182
Zaitsev 10:41552d038a69 1183 /** SAMD Family */
Zaitsev 10:41552d038a69 1184 #define SAMD (SAMD20 || SAMD21 || SAMD10 || SAMD11)
Zaitsev 10:41552d038a69 1185
Zaitsev 10:41552d038a69 1186 /** SAMR21 Family */
Zaitsev 10:41552d038a69 1187 #define SAMR21 (SAMR21G || SAMR21E)
Zaitsev 10:41552d038a69 1188
Zaitsev 10:41552d038a69 1189 /** SAML21 Family */
Zaitsev 10:41552d038a69 1190 #define SAML21 (SAML21J || SAML21G || SAML21E)
Zaitsev 10:41552d038a69 1191
Zaitsev 10:41552d038a69 1192 /** SAM4E Family */
Zaitsev 10:41552d038a69 1193 #define SAM4E (SAM4E8 || SAM4E16)
Zaitsev 10:41552d038a69 1194
Zaitsev 10:41552d038a69 1195 /** SAM4N Family */
Zaitsev 10:41552d038a69 1196 #define SAM4N (SAM4N8 || SAM4N16)
Zaitsev 10:41552d038a69 1197
Zaitsev 10:41552d038a69 1198 /** SAM4C Family */
Zaitsev 10:41552d038a69 1199 #define SAM4C_0 (SAM4C8_0 || SAM4C16_0 || SAM4C32_0)
Zaitsev 10:41552d038a69 1200 #define SAM4C_1 (SAM4C8_1 || SAM4C16_1 || SAM4C32_1)
Zaitsev 10:41552d038a69 1201 #define SAM4C (SAM4C8 || SAM4C16 || SAM4C32)
Zaitsev 10:41552d038a69 1202
Zaitsev 10:41552d038a69 1203 /** SAM4CM Family */
Zaitsev 10:41552d038a69 1204 #define SAM4CM_0 (SAM4CMP8_0 || SAM4CMP16_0 || SAM4CMP32_0 || SAM4CMS8_0 || \
Zaitsev 10:41552d038a69 1205 SAM4CMS16_0 || SAM4CMS32_0)
Zaitsev 10:41552d038a69 1206 #define SAM4CM_1 (SAM4CMP8_1 || SAM4CMP16_1 || SAM4CMP32_1 || SAM4CMS8_1 || \
Zaitsev 10:41552d038a69 1207 SAM4CMS16_1 || SAM4CMS32_1)
Zaitsev 10:41552d038a69 1208 #define SAM4CM (SAM4CMP8 || SAM4CMP16 || SAM4CMP32 || SAM4CMS8 || \
Zaitsev 10:41552d038a69 1209 SAM4CMS16 || SAM4CMS32)
Zaitsev 10:41552d038a69 1210
Zaitsev 10:41552d038a69 1211 /** SAM4CP Family */
Zaitsev 10:41552d038a69 1212 #define SAM4CP_0 (SAM4CP16_0)
Zaitsev 10:41552d038a69 1213 #define SAM4CP_1 (SAM4CP16_1)
Zaitsev 10:41552d038a69 1214 #define SAM4CP (SAM4CP16)
Zaitsev 10:41552d038a69 1215
Zaitsev 10:41552d038a69 1216 /** SAMG Family */
Zaitsev 10:41552d038a69 1217 #define SAMG (SAMG51 || SAMG53 || SAMG54 || SAMG55)
Zaitsev 10:41552d038a69 1218
Zaitsev 10:41552d038a69 1219 /** SAM0 product line (cortex-m0+) */
Zaitsev 10:41552d038a69 1220 #define SAM0 (SAMD20 || SAMD21 || SAMR21 || SAMD10 || SAMD11 || SAML21)
Zaitsev 10:41552d038a69 1221
Zaitsev 10:41552d038a69 1222 /** @} */
Zaitsev 10:41552d038a69 1223
Zaitsev 10:41552d038a69 1224 /** SAM product line */
Zaitsev 10:41552d038a69 1225 #define SAM (SAM3S || SAM3U || SAM3N || SAM3XA || SAM4S || SAM4L || SAM4E || \
Zaitsev 10:41552d038a69 1226 SAM0 || SAM4N || SAM4C || SAM4CM || SAM4CP || SAMG)
Zaitsev 10:41552d038a69 1227
Zaitsev 10:41552d038a69 1228 /** @} */
Zaitsev 10:41552d038a69 1229
Zaitsev 10:41552d038a69 1230 /** @} */
Zaitsev 10:41552d038a69 1231
Zaitsev 10:41552d038a69 1232 /** @} */
Zaitsev 10:41552d038a69 1233
Zaitsev 10:41552d038a69 1234 #endif /* ATMEL_PARTS_H */