xinc_m0.h 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. /**************************************************************************//**
  2. * @file XINC_M0.h
  3. * @brief CMSIS Cortex-M4 Core Peripheral Access Layer Header File
  4. * for the Device Series ...
  5. * @version V1.00
  6. * @date 7. January 2013
  7. *
  8. * @note
  9. * Copyright (C) 2010 ARM Limited. All rights reserved.
  10. *
  11. * @par
  12. * ARM Limited (ARM) is supplying this software for use with Cortex-M
  13. * processor based microcontrollers. This file can be freely distributed
  14. * within development tools that are supporting such ARM based processors.
  15. *
  16. * @par
  17. * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
  18. * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
  19. * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
  20. * ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
  21. * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
  22. *
  23. ******************************************************************************/
  24. #ifndef __XC6XX_M0_H__
  25. #define __XC6XX_M0_H__
  26. #ifdef __cplusplus
  27. extern "C" {
  28. #endif
  29. /******************************************************************************/
  30. /* Processor and Core Peripherals */
  31. /******************************************************************************/
  32. /** @addtogroup <Device>_CMSIS Device CMSIS Definitions
  33. Configuration of the Cortex-M# Processor and Core Peripherals
  34. @{
  35. */
  36. /*
  37. * ==========================================================================
  38. * ---------- Interrupt Number Definition -----------------------------------
  39. * ==========================================================================
  40. */
  41. typedef enum IRQn
  42. {
  43. /****** Cortex-M# Processor Exceptions Numbers ***************************************************/
  44. /* ToDo: use this Cortex interrupt numbers if your device is a CORTEX-M4 device */
  45. NonMaskableInt_IRQn = -14, /*!< 2 Non Maskable Interrupt */
  46. HardFault_IRQn = -13, /*!< 3 Hard Fault Interrupt */
  47. SVCall_IRQn = -5, /*!< 11 SV Call Interrupt */
  48. PendSV_IRQn = -2, /*!< 14 Pend SV Interrupt */
  49. SysTick_IRQn = -1, /*!< 15 System Tick Interrupt */
  50. /****** Device Specific Interrupt Numbers ********************************************************/
  51. /* ToDo: add here your device specific external interrupt numbers
  52. according the interrupt handlers defined in startup_Device.s
  53. eg.: Interrupt for Timer#1 TIM1_IRQHandler -> TIM1_IRQn */
  54. BLUETOOTH_IRQn = 0, /*!< Device Interrupt */
  55. DMAS_IRQn = 1,
  56. CPR_IRQn = 2,
  57. GPIO_IRQn = 3,
  58. RTC_IRQn = 4,
  59. TIMER0_IRQn = 5,
  60. TIMER1_IRQn = 6,
  61. TIMER2_IRQn = 7,
  62. TIMER3_IRQn = 8,
  63. WDT_IRQn = 9,
  64. I2C_IRQn = 10,
  65. UART0_IRQn = 11,
  66. UART1_IRQn = 12,
  67. SPI0_IRQn = 13,
  68. SPI1_IRQn = 14,
  69. KBS_IRQn = 15,
  70. QDEC_IRQn = 16,
  71. GADC_IRQn = 17,
  72. SIM_IRQn = 18,
  73. AES_IRQn = 19
  74. } IRQn_Type;
  75. /*
  76. * ==========================================================================
  77. * ----------- Processor and Core Peripheral Section ------------------------
  78. * ==========================================================================
  79. */
  80. /* Configuration of the Cortex-M# Processor and Core Peripherals */
  81. /* ToDo: set the defines according your Device */
  82. #define __MPU_PRESENT 0 /*!< MPU present or not */
  83. #define __NVIC_PRIO_BITS 2 /*!< Number of Bits used for Priority Levels */
  84. #define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */
  85. #if defined ( __CC_ARM )
  86. #if defined (__TARGET_FPU_VFP)
  87. #define __FPU_PRESENT 1 /*!< FPU present or not */
  88. #else
  89. #define __FPU_PRESENT 0 /*!< FPU present or not */
  90. #endif
  91. #else
  92. #define __FPU_PRESENT 0 /*!< FPU present or not */
  93. #endif
  94. /*@}*/ /* end of group <Device>_CMSIS */
  95. /* ToDo: include the correct core_cm#.h file
  96. core_cm0.h if your device is a CORTEX-M0 device
  97. core_cm3.h if your device is a CORTEX-M3 device
  98. core_cm4.h if your device is a CORTEX-M4 device */
  99. #include "core_cm0.h"
  100. /* ToDo: include your system_<Device>.h file
  101. replace '<Device>' with your device name */
  102. /******************************************************************************/
  103. /* Device Specific Peripheral registers structures */
  104. /******************************************************************************/
  105. /** @addtogroup <Device>_Peripherals <Device> Peripherals
  106. <Device> Device Specific Peripheral registers structures
  107. @{
  108. */
  109. #if defined ( __CC_ARM )
  110. #pragma anon_unions
  111. #endif
  112. #include "xinc_reg.h"
  113. #if defined ( __CC_ARM )
  114. #pragma no_anon_unions
  115. #endif
  116. #ifdef __cplusplus
  117. }
  118. #endif
  119. #endif // __<Device>_H__