hw_memmap.h 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. //*****************************************************************************
  2. //
  3. // hw_memmap.h - Macros defining the memory map of the device.
  4. //
  5. // Copyright (c) 2005-2014 Texas Instruments Incorporated. All rights reserved.
  6. // Software License Agreement
  7. //
  8. // Redistribution and use in source and binary forms, with or without
  9. // modification, are permitted provided that the following conditions
  10. // are met:
  11. //
  12. // Redistributions of source code must retain the above copyright
  13. // notice, this list of conditions and the following disclaimer.
  14. //
  15. // Redistributions in binary form must reproduce the above copyright
  16. // notice, this list of conditions and the following disclaimer in the
  17. // documentation and/or other materials provided with the
  18. // distribution.
  19. //
  20. // Neither the name of Texas Instruments Incorporated nor the names of
  21. // its contributors may be used to endorse or promote products derived
  22. // from this software without specific prior written permission.
  23. //
  24. // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  25. // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  26. // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  27. // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  28. // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  29. // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  30. // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  31. // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  32. // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  33. // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  34. // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  35. //
  36. // This is part of revision 2.1.0.12573 of the Tiva Firmware Development Package.
  37. //
  38. //*****************************************************************************
  39. #ifndef __HW_MEMMAP_H__
  40. #define __HW_MEMMAP_H__
  41. //*****************************************************************************
  42. //
  43. // The following are defines for the base address of the memories and
  44. // peripherals.
  45. //
  46. //*****************************************************************************
  47. #define FLASH_BASE 0x00000000 // FLASH memory
  48. #define SRAM_BASE 0x20000000 // SRAM memory
  49. #define WATCHDOG0_BASE 0x40000000 // Watchdog0
  50. #define WATCHDOG1_BASE 0x40001000 // Watchdog1
  51. #define GPIO_PORTA_BASE 0x40004000 // GPIO Port A
  52. #define GPIO_PORTB_BASE 0x40005000 // GPIO Port B
  53. #define GPIO_PORTC_BASE 0x40006000 // GPIO Port C
  54. #define GPIO_PORTD_BASE 0x40007000 // GPIO Port D
  55. #define SSI0_BASE 0x40008000 // SSI0
  56. #define SSI1_BASE 0x40009000 // SSI1
  57. #define SSI2_BASE 0x4000A000 // SSI2
  58. #define SSI3_BASE 0x4000B000 // SSI3
  59. #define UART0_BASE 0x4000C000 // UART0
  60. #define UART1_BASE 0x4000D000 // UART1
  61. #define UART2_BASE 0x4000E000 // UART2
  62. #define UART3_BASE 0x4000F000 // UART3
  63. #define UART4_BASE 0x40010000 // UART4
  64. #define UART5_BASE 0x40011000 // UART5
  65. #define UART6_BASE 0x40012000 // UART6
  66. #define UART7_BASE 0x40013000 // UART7
  67. #define I2C0_BASE 0x40020000 // I2C0
  68. #define I2C1_BASE 0x40021000 // I2C1
  69. #define I2C2_BASE 0x40022000 // I2C2
  70. #define I2C3_BASE 0x40023000 // I2C3
  71. #define GPIO_PORTE_BASE 0x40024000 // GPIO Port E
  72. #define GPIO_PORTF_BASE 0x40025000 // GPIO Port F
  73. #define GPIO_PORTG_BASE 0x40026000 // GPIO Port G
  74. #define GPIO_PORTH_BASE 0x40027000 // GPIO Port H
  75. #define PWM0_BASE 0x40028000 // Pulse Width Modulator (PWM)
  76. #define PWM1_BASE 0x40029000 // Pulse Width Modulator (PWM)
  77. #define QEI0_BASE 0x4002C000 // QEI0
  78. #define QEI1_BASE 0x4002D000 // QEI1
  79. #define TIMER0_BASE 0x40030000 // Timer0
  80. #define TIMER1_BASE 0x40031000 // Timer1
  81. #define TIMER2_BASE 0x40032000 // Timer2
  82. #define TIMER3_BASE 0x40033000 // Timer3
  83. #define TIMER4_BASE 0x40034000 // Timer4
  84. #define TIMER5_BASE 0x40035000 // Timer5
  85. #define WTIMER0_BASE 0x40036000 // Wide Timer0
  86. #define WTIMER1_BASE 0x40037000 // Wide Timer1
  87. #define ADC0_BASE 0x40038000 // ADC0
  88. #define ADC1_BASE 0x40039000 // ADC1
  89. #define COMP_BASE 0x4003C000 // Analog comparators
  90. #define GPIO_PORTJ_BASE 0x4003D000 // GPIO Port J
  91. #define CAN0_BASE 0x40040000 // CAN0
  92. #define CAN1_BASE 0x40041000 // CAN1
  93. #define WTIMER2_BASE 0x4004C000 // Wide Timer2
  94. #define WTIMER3_BASE 0x4004D000 // Wide Timer3
  95. #define WTIMER4_BASE 0x4004E000 // Wide Timer4
  96. #define WTIMER5_BASE 0x4004F000 // Wide Timer5
  97. #define USB0_BASE 0x40050000 // USB 0 Controller
  98. #define GPIO_PORTA_AHB_BASE 0x40058000 // GPIO Port A (high speed)
  99. #define GPIO_PORTB_AHB_BASE 0x40059000 // GPIO Port B (high speed)
  100. #define GPIO_PORTC_AHB_BASE 0x4005A000 // GPIO Port C (high speed)
  101. #define GPIO_PORTD_AHB_BASE 0x4005B000 // GPIO Port D (high speed)
  102. #define GPIO_PORTE_AHB_BASE 0x4005C000 // GPIO Port E (high speed)
  103. #define GPIO_PORTF_AHB_BASE 0x4005D000 // GPIO Port F (high speed)
  104. #define GPIO_PORTG_AHB_BASE 0x4005E000 // GPIO Port G (high speed)
  105. #define GPIO_PORTH_AHB_BASE 0x4005F000 // GPIO Port H (high speed)
  106. #define GPIO_PORTJ_AHB_BASE 0x40060000 // GPIO Port J (high speed)
  107. #define GPIO_PORTK_BASE 0x40061000 // GPIO Port K
  108. #define GPIO_PORTL_BASE 0x40062000 // GPIO Port L
  109. #define GPIO_PORTM_BASE 0x40063000 // GPIO Port M
  110. #define GPIO_PORTN_BASE 0x40064000 // GPIO Port N
  111. #define GPIO_PORTP_BASE 0x40065000 // GPIO Port P
  112. #define GPIO_PORTQ_BASE 0x40066000 // GPIO Port Q
  113. #define GPIO_PORTR_BASE 0x40067000 // General-Purpose Input/Outputs
  114. // (GPIOs)
  115. #define GPIO_PORTS_BASE 0x40068000 // General-Purpose Input/Outputs
  116. // (GPIOs)
  117. #define GPIO_PORTT_BASE 0x40069000 // General-Purpose Input/Outputs
  118. // (GPIOs)
  119. #define EEPROM_BASE 0x400AF000 // EEPROM memory
  120. #define ONEWIRE0_BASE 0x400B6000 // 1-Wire Master Module
  121. #define I2C8_BASE 0x400B8000 // I2C8
  122. #define I2C9_BASE 0x400B9000 // I2C9
  123. #define I2C4_BASE 0x400C0000 // I2C4
  124. #define I2C5_BASE 0x400C1000 // I2C5
  125. #define I2C6_BASE 0x400C2000 // I2C6
  126. #define I2C7_BASE 0x400C3000 // I2C7
  127. #define EPI0_BASE 0x400D0000 // EPI0
  128. #define TIMER6_BASE 0x400E0000 // General-Purpose Timers
  129. #define TIMER7_BASE 0x400E1000 // General-Purpose Timers
  130. #define EMAC0_BASE 0x400EC000 // Ethernet Controller
  131. #define SYSEXC_BASE 0x400F9000 // System Exception Module
  132. #define HIB_BASE 0x400FC000 // Hibernation Module
  133. #define FLASH_CTRL_BASE 0x400FD000 // FLASH Controller
  134. #define SYSCTL_BASE 0x400FE000 // System Control
  135. #define UDMA_BASE 0x400FF000 // uDMA Controller
  136. #define CCM0_BASE 0x44030000 // Cyclical Redundancy Check (CRC)
  137. #define SHAMD5_BASE 0x44034000 // SHA/MD5 Accelerator
  138. #define AES_BASE 0x44036000 // Advance Encryption
  139. // Hardware-Accelerated Module
  140. #define DES_BASE 0x44038000 // Data Encryption Standard
  141. // Accelerator (DES)
  142. #define LCD0_BASE 0x44050000 // LCD Controller
  143. #define ITM_BASE 0xE0000000 // Instrumentation Trace Macrocell
  144. #define DWT_BASE 0xE0001000 // Data Watchpoint and Trace
  145. #define FPB_BASE 0xE0002000 // FLASH Patch and Breakpoint
  146. #define NVIC_BASE 0xE000E000 // Nested Vectored Interrupt Ctrl
  147. #define TPIU_BASE 0xE0040000 // Trace Port Interface Unit
  148. #endif // __HW_MEMMAP_H__