]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_ATSAM3S-EK2_Atmel_Studio/src/asf/sam/utils/cmsis/sam3s8/include/instance/instance_adc.h
Add demo for SAM3S-EK2.
[freertos] / FreeRTOS / Demo / CORTEX_ATSAM3S-EK2_Atmel_Studio / src / asf / sam / utils / cmsis / sam3s8 / include / instance / instance_adc.h
1 /**\r
2  * \file\r
3  *\r
4  * Copyright (c) 2012 Atmel Corporation. All rights reserved.\r
5  *\r
6  * \asf_license_start\r
7  *\r
8  * \page License\r
9  *\r
10  * Redistribution and use in source and binary forms, with or without\r
11  * modification, are permitted provided that the following conditions are met:\r
12  *\r
13  * 1. Redistributions of source code must retain the above copyright notice,\r
14  *    this list of conditions and the following disclaimer.\r
15  *\r
16  * 2. Redistributions in binary form must reproduce the above copyright notice,\r
17  *    this list of conditions and the following disclaimer in the documentation\r
18  *    and/or other materials provided with the distribution.\r
19  *\r
20  * 3. The name of Atmel may not be used to endorse or promote products derived\r
21  *    from this software without specific prior written permission.\r
22  *\r
23  * 4. This software may only be redistributed and used in connection with an\r
24  *    Atmel microcontroller product.\r
25  *\r
26  * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED\r
27  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\r
28  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE\r
29  * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR\r
30  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\r
31  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS\r
32  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\r
33  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,\r
34  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\r
35  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\r
36  * POSSIBILITY OF SUCH DAMAGE.\r
37  *\r
38  * \asf_license_stop\r
39  *\r
40  */\r
41 \r
42 #ifndef _SAM3S8_ADC_INSTANCE_\r
43 #define _SAM3S8_ADC_INSTANCE_\r
44 \r
45 /* ========== Register definition for ADC peripheral ========== */\r
46 #if (defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__))\r
47 #define REG_ADC_CR               (0x40038000U) /**< \brief (ADC) Control Register */\r
48 #define REG_ADC_MR               (0x40038004U) /**< \brief (ADC) Mode Register */\r
49 #define REG_ADC_SEQR1            (0x40038008U) /**< \brief (ADC) Channel Sequence Register 1 */\r
50 #define REG_ADC_SEQR2            (0x4003800CU) /**< \brief (ADC) Channel Sequence Register 2 */\r
51 #define REG_ADC_CHER             (0x40038010U) /**< \brief (ADC) Channel Enable Register */\r
52 #define REG_ADC_CHDR             (0x40038014U) /**< \brief (ADC) Channel Disable Register */\r
53 #define REG_ADC_CHSR             (0x40038018U) /**< \brief (ADC) Channel Status Register */\r
54 #define REG_ADC_LCDR             (0x40038020U) /**< \brief (ADC) Last Converted Data Register */\r
55 #define REG_ADC_IER              (0x40038024U) /**< \brief (ADC) Interrupt Enable Register */\r
56 #define REG_ADC_IDR              (0x40038028U) /**< \brief (ADC) Interrupt Disable Register */\r
57 #define REG_ADC_IMR              (0x4003802CU) /**< \brief (ADC) Interrupt Mask Register */\r
58 #define REG_ADC_ISR              (0x40038030U) /**< \brief (ADC) Interrupt Status Register */\r
59 #define REG_ADC_OVER             (0x4003803CU) /**< \brief (ADC) Overrun Status Register */\r
60 #define REG_ADC_EMR              (0x40038040U) /**< \brief (ADC) Extended Mode Register */\r
61 #define REG_ADC_CWR              (0x40038044U) /**< \brief (ADC) Compare Window Register */\r
62 #define REG_ADC_CGR              (0x40038048U) /**< \brief (ADC) Channel Gain Register */\r
63 #define REG_ADC_COR              (0x4003804CU) /**< \brief (ADC) Channel Offset Register */\r
64 #define REG_ADC_CDR              (0x40038050U) /**< \brief (ADC) Channel Data Register */\r
65 #define REG_ADC_ACR              (0x40038094U) /**< \brief (ADC) Analog Control Register */\r
66 #define REG_ADC_WPMR             (0x400380E4U) /**< \brief (ADC) Write Protect Mode Register */\r
67 #define REG_ADC_WPSR             (0x400380E8U) /**< \brief (ADC) Write Protect Status Register */\r
68 #define REG_ADC_RPR              (0x40038100U) /**< \brief (ADC) Receive Pointer Register */\r
69 #define REG_ADC_RCR              (0x40038104U) /**< \brief (ADC) Receive Counter Register */\r
70 #define REG_ADC_RNPR             (0x40038110U) /**< \brief (ADC) Receive Next Pointer Register */\r
71 #define REG_ADC_RNCR             (0x40038114U) /**< \brief (ADC) Receive Next Counter Register */\r
72 #define REG_ADC_PTCR             (0x40038120U) /**< \brief (ADC) Transfer Control Register */\r
73 #define REG_ADC_PTSR             (0x40038124U) /**< \brief (ADC) Transfer Status Register */\r
74 #else\r
75 #define REG_ADC_CR      (*(WoReg*)0x40038000U) /**< \brief (ADC) Control Register */\r
76 #define REG_ADC_MR      (*(RwReg*)0x40038004U) /**< \brief (ADC) Mode Register */\r
77 #define REG_ADC_SEQR1   (*(RwReg*)0x40038008U) /**< \brief (ADC) Channel Sequence Register 1 */\r
78 #define REG_ADC_SEQR2   (*(RwReg*)0x4003800CU) /**< \brief (ADC) Channel Sequence Register 2 */\r
79 #define REG_ADC_CHER    (*(WoReg*)0x40038010U) /**< \brief (ADC) Channel Enable Register */\r
80 #define REG_ADC_CHDR    (*(WoReg*)0x40038014U) /**< \brief (ADC) Channel Disable Register */\r
81 #define REG_ADC_CHSR    (*(RoReg*)0x40038018U) /**< \brief (ADC) Channel Status Register */\r
82 #define REG_ADC_LCDR    (*(RoReg*)0x40038020U) /**< \brief (ADC) Last Converted Data Register */\r
83 #define REG_ADC_IER     (*(WoReg*)0x40038024U) /**< \brief (ADC) Interrupt Enable Register */\r
84 #define REG_ADC_IDR     (*(WoReg*)0x40038028U) /**< \brief (ADC) Interrupt Disable Register */\r
85 #define REG_ADC_IMR     (*(RoReg*)0x4003802CU) /**< \brief (ADC) Interrupt Mask Register */\r
86 #define REG_ADC_ISR     (*(RoReg*)0x40038030U) /**< \brief (ADC) Interrupt Status Register */\r
87 #define REG_ADC_OVER    (*(RoReg*)0x4003803CU) /**< \brief (ADC) Overrun Status Register */\r
88 #define REG_ADC_EMR     (*(RwReg*)0x40038040U) /**< \brief (ADC) Extended Mode Register */\r
89 #define REG_ADC_CWR     (*(RwReg*)0x40038044U) /**< \brief (ADC) Compare Window Register */\r
90 #define REG_ADC_CGR     (*(RwReg*)0x40038048U) /**< \brief (ADC) Channel Gain Register */\r
91 #define REG_ADC_COR     (*(RwReg*)0x4003804CU) /**< \brief (ADC) Channel Offset Register */\r
92 #define REG_ADC_CDR     (*(RoReg*)0x40038050U) /**< \brief (ADC) Channel Data Register */\r
93 #define REG_ADC_ACR     (*(RwReg*)0x40038094U) /**< \brief (ADC) Analog Control Register */\r
94 #define REG_ADC_WPMR    (*(RwReg*)0x400380E4U) /**< \brief (ADC) Write Protect Mode Register */\r
95 #define REG_ADC_WPSR    (*(RoReg*)0x400380E8U) /**< \brief (ADC) Write Protect Status Register */\r
96 #define REG_ADC_RPR     (*(RwReg*)0x40038100U) /**< \brief (ADC) Receive Pointer Register */\r
97 #define REG_ADC_RCR     (*(RwReg*)0x40038104U) /**< \brief (ADC) Receive Counter Register */\r
98 #define REG_ADC_RNPR    (*(RwReg*)0x40038110U) /**< \brief (ADC) Receive Next Pointer Register */\r
99 #define REG_ADC_RNCR    (*(RwReg*)0x40038114U) /**< \brief (ADC) Receive Next Counter Register */\r
100 #define REG_ADC_PTCR    (*(WoReg*)0x40038120U) /**< \brief (ADC) Transfer Control Register */\r
101 #define REG_ADC_PTSR    (*(RoReg*)0x40038124U) /**< \brief (ADC) Transfer Status Register */\r
102 #endif /* (defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */\r
103 \r
104 #endif /* _SAM3S8_ADC_INSTANCE_ */\r