12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- /** @file reg_i2c.h
- * @brief I2C Register Layer Header File
- * @date 29.May.2013
- * @version 03.05.02
- *
- * This file contains:
- * - Definitions
- * - Types
- * - Interface Prototypes
- * .
- * which are relevant for the I2C driver.
- */
- /* (c) Texas Instruments 2009-2013, All rights reserved. */
- #ifndef __REG_I2C_H__
- #define __REG_I2C_H__
- #include "sys_common.h"
- #include "gio.h"
- /* USER CODE BEGIN (0) */
- /* USER CODE END */
- /* I2c Register Frame Definition */
- /** @struct i2cBase
- * @brief I2C Base Register Definition
- *
- * This structure is used to access the I2C module registers.
- */
- /** @typedef i2cBASE_t
- * @brief I2C Register Frame Type Definition
- *
- * This type is used to access the I2C Registers.
- */
- typedef volatile struct i2cBase
- {
- uint32 OAR; /**< 0x0000 I2C Own Address register */
- uint32 IMR; /**< 0x0004 I2C Interrupt Mask/Status register */
- uint32 STR; /**< 0x0008 I2C Interrupt Status register */
- uint32 CLKL; /**< 0x000C I2C Clock Divider Low register */
- uint32 CLKH; /**< 0x0010 I2C Clock Divider High register */
- uint32 CNT; /**< 0x0014 I2C Data Count register */
- uint32 DRR; /**< 0x0018 I2C Data Receive register */
- uint32 SAR; /**< 0x001C I2C Slave Address register */
- uint32 DXR; /**< 0x0020 I2C Data Transmit register */
- uint32 MDR; /**< 0x0024 I2C Mode register */
- uint32 IVR; /**< 0x0028 I2C Interrupt Vector register */
- uint32 EMDR; /**< 0x002C I2C Extended Mode register */
- uint32 PSC; /**< 0x0030 I2C Prescaler register */
- uint32 PID11; /**< 0x0034 I2C Peripheral ID register 1 */
- uint32 PID12; /**< 0x0038 I2C Peripheral ID register 2 */
- uint32 DMAC; /**< 0x003C I2C DMA Control Register */
- uint32 rsvd1; /**< 0x0040 Reserved */
- uint32 rsvd2; /**< 0x0044 Reserved */
- uint32 FUN; /**< 0x0048 Pin Function Register */
- uint32 DIR; /**< 0x004C Pin Direction Register */
- uint32 DIN; /**< 0x0050 Pin Data In Register */
- uint32 DOUT; /**< 0x0054 Pin Data Out Register */
- uint32 SET; /**< 0x0058 Pin Data Set Register */
- uint32 CLR; /**< 0x005C Pin Data Clr Register */
- uint32 ODR; /**< 0x0060 Pin Open Drain Output Enable Register */
- uint32 PD; /**< 0x0064 Pin Pullup/Pulldown Disable Register */
- uint32 PSL; /**< 0x0068 Pin Pullup/Pulldown Selection Register */
- } i2cBASE_t;
- /** @def i2cREG1
- * @brief I2C Register Frame Pointer
- *
- * This pointer is used by the I2C driver to access the I2C module registers.
- */
- #define i2cREG1 ((i2cBASE_t *)0xFFF7D400U)
- /* USER CODE BEGIN (1) */
- /* USER CODE END */
- /** @def i2cPORT1
- * @brief I2C GIO Port Register Pointer
- *
- * Pointer used by the GIO driver to access I/O PORT of I2C
- * (use the GIO drivers to access the port pins).
- */
- #define i2cPORT1 ((gioPORT_t *)0xFFF7D44CU)
- /* USER CODE BEGIN (2) */
- /* USER CODE END */
- #endif
|