]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_A5_SAMA5D3x_Xplained_IAR/AtmelFiles/libchip_sama5d3x/include/instance/instance_twi0.h
Start of SAMA5D3 XPlained demo.
[freertos] / FreeRTOS / Demo / CORTEX_A5_SAMA5D3x_Xplained_IAR / AtmelFiles / libchip_sama5d3x / include / instance / instance_twi0.h
1 /* ----------------------------------------------------------------------------\r
2  *         SAM Software Package License\r
3  * ----------------------------------------------------------------------------\r
4  * Copyright (c) 2012, Atmel Corporation\r
5  *\r
6  * All rights reserved.\r
7  *\r
8  * Redistribution and use in source and binary forms, with or without\r
9  * modification, are permitted provided that the following condition is met:\r
10  *\r
11  * - Redistributions of source code must retain the above copyright notice,\r
12  * this list of conditions and the disclaimer below.\r
13  *\r
14  * Atmel's name may not be used to endorse or promote products derived from\r
15  * this software without specific prior written permission.\r
16  *\r
17  * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR\r
18  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\r
19  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE\r
20  * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,\r
21  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\r
22  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,\r
23  * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF\r
24  * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\r
25  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\r
26  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
27  * ----------------------------------------------------------------------------\r
28  */\r
29 \r
30 #ifndef _SAMA5_TWI0_INSTANCE_\r
31 #define _SAMA5_TWI0_INSTANCE_\r
32 \r
33 /* ========== Register definition for TWI0 peripheral ========== */\r
34 #if (defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__))\r
35 #define REG_TWI0_CR                    (0xF0014000U) /**< \brief (TWI0) Control Register */\r
36 #define REG_TWI0_MMR                   (0xF0014004U) /**< \brief (TWI0) Master Mode Register */\r
37 #define REG_TWI0_SMR                   (0xF0014008U) /**< \brief (TWI0) Slave Mode Register */\r
38 #define REG_TWI0_IADR                  (0xF001400CU) /**< \brief (TWI0) Internal Address Register */\r
39 #define REG_TWI0_CWGR                  (0xF0014010U) /**< \brief (TWI0) Clock Waveform Generator Register */\r
40 #define REG_TWI0_SR                    (0xF0014020U) /**< \brief (TWI0) Status Register */\r
41 #define REG_TWI0_IER                   (0xF0014024U) /**< \brief (TWI0) Interrupt Enable Register */\r
42 #define REG_TWI0_IDR                   (0xF0014028U) /**< \brief (TWI0) Interrupt Disable Register */\r
43 #define REG_TWI0_IMR                   (0xF001402CU) /**< \brief (TWI0) Interrupt Mask Register */\r
44 #define REG_TWI0_RHR                   (0xF0014030U) /**< \brief (TWI0) Receive Holding Register */\r
45 #define REG_TWI0_THR                   (0xF0014034U) /**< \brief (TWI0) Transmit Holding Register */\r
46 #define REG_TWI0_WPROT_MODE            (0xF00140E4U) /**< \brief (TWI0) Protection Mode Register */\r
47 #define REG_TWI0_WPROT_STATUS          (0xF00140E8U) /**< \brief (TWI0) Protection Status Register */\r
48 #else\r
49 #define REG_TWI0_CR           (*(WoReg*)0xF0014000U) /**< \brief (TWI0) Control Register */\r
50 #define REG_TWI0_MMR          (*(RwReg*)0xF0014004U) /**< \brief (TWI0) Master Mode Register */\r
51 #define REG_TWI0_SMR          (*(RwReg*)0xF0014008U) /**< \brief (TWI0) Slave Mode Register */\r
52 #define REG_TWI0_IADR         (*(RwReg*)0xF001400CU) /**< \brief (TWI0) Internal Address Register */\r
53 #define REG_TWI0_CWGR         (*(RwReg*)0xF0014010U) /**< \brief (TWI0) Clock Waveform Generator Register */\r
54 #define REG_TWI0_SR           (*(RoReg*)0xF0014020U) /**< \brief (TWI0) Status Register */\r
55 #define REG_TWI0_IER          (*(WoReg*)0xF0014024U) /**< \brief (TWI0) Interrupt Enable Register */\r
56 #define REG_TWI0_IDR          (*(WoReg*)0xF0014028U) /**< \brief (TWI0) Interrupt Disable Register */\r
57 #define REG_TWI0_IMR          (*(RoReg*)0xF001402CU) /**< \brief (TWI0) Interrupt Mask Register */\r
58 #define REG_TWI0_RHR          (*(RoReg*)0xF0014030U) /**< \brief (TWI0) Receive Holding Register */\r
59 #define REG_TWI0_THR          (*(WoReg*)0xF0014034U) /**< \brief (TWI0) Transmit Holding Register */\r
60 #define REG_TWI0_WPROT_MODE   (*(RwReg*)0xF00140E4U) /**< \brief (TWI0) Protection Mode Register */\r
61 #define REG_TWI0_WPROT_STATUS (*(RoReg*)0xF00140E8U) /**< \brief (TWI0) Protection Status Register */\r
62 #endif /* (defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */\r
63 \r
64 #endif /* _SAMA5_TWI0_INSTANCE_ */\r