123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153 |
- /******************************************************************************
- * Filename: hw_ints.h
- * Revised: $Date: 2013-04-29 09:49:55 +0200 (Mon, 29 Apr 2013) $
- * Revision: $Revision: 9923 $
- *
- * Description: Macros that define the interrupt assignment on Stellaris.
- *
- * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
- *
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * Neither the name of Texas Instruments Incorporated nor the names of
- * its contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- ******************************************************************************/
- #ifndef __HW_INTS_H__
- #define __HW_INTS_H__
- // Note: Use the following define if alternate interrupt map is to be used.
- // This map is smaller. The function IntAltMapEnable() must be called
- // to enable The alternate map.
- // #define CC2538_USE_ALTERNATE_INTERRUPT_MAP 1
- //*****************************************************************************
- //
- // The following are defines for the fault assignments.
- //
- //*****************************************************************************
- #define FAULT_NMI 2 // NMI fault
- #define FAULT_HARD 3 // Hard fault
- #define FAULT_MPU 4 // MPU fault
- #define FAULT_BUS 5 // Bus fault
- #define FAULT_USAGE 6 // Usage fault
- #define FAULT_SVCALL 11 // SVCall
- #define FAULT_DEBUG 12 // Debug monitor
- #define FAULT_PENDSV 14 // PendSV
- #define FAULT_SYSTICK 15 // System Tick
- //*****************************************************************************
- //
- // The following are defines for the interrupt assignments.
- //
- //*****************************************************************************
- #define INT_GPIOA 16 // GPIO Port A
- #define INT_GPIOB 17 // GPIO Port B
- #define INT_GPIOC 18 // GPIO Port C
- #define INT_GPIOD 19 // GPIO Port D
- // 20 not in use
- #define INT_UART0 21 // UART0 Rx and Tx
- #define INT_UART1 22 // UART1 Rx and Tx
- #define INT_SSI0 23 // SSI0 Rx and Tx
- #define INT_I2C0 24 // I2C0 Master and Slave
- // 25 - 29 not in use
- #define INT_ADC0 30 // ADC0 Sequence 0
- // 31 - 33 not in use
- #define INT_WATCHDOG 34 // Watchdog timer
- #define INT_WATCHDOG0 34 // Watchdog Timer0
- #define INT_TIMER0A 35 // Timer 0 subtimer A
- #define INT_TIMER0B 36 // Timer 0 subtimer B
- #define INT_TIMER1A 37 // Timer 1 subtimer A
- #define INT_TIMER1B 38 // Timer 1 subtimer B
- #define INT_TIMER2A 39 // Timer 2 subtimer A
- #define INT_TIMER2B 40 // Timer 2 subtimer B
- #define INT_COMP0 41 // Analog Comparator 0
- // 42 - 44 only in use for alternate map
- #ifdef CC2538_USE_ALTERNATE_INTERRUPT_MAP
- #define INT_RFCORERTX 42 // RFCORE RX/TX
- #define INT_RFCOREERR 43 // RFCORE Error
- #define INT_ICEPICK 44 // Icepick
- #endif // CC2538_USE_ALTERNATE_INTERRUPT_MAP
- #define INT_FLASH 45 // FLASH Control
- // 46 - 49 only in use for alternate map
- #ifdef CC2538_USE_ALTERNATE_INTERRUPT_MAP
- #define INT_AES 46 // AES
- #define INT_PKA 47 // PKA
- #define INT_SMTIM 48 // SMTimer
- #define INT_MACTIMR 49 // MACTimer
- #endif // CC2538_USE_ALTERNATE_INTERRUPT_MAP
- #define INT_SSI1 50 // SSI1 Rx and Tx
- #define INT_TIMER3A 51 // Timer 3 subtimer A
- #define INT_TIMER3B 52 // Timer 3 subtimer B
- // 53 - 59 not in use
- // 60 only in use for alternate map
- #ifdef CC2538_USE_ALTERNATE_INTERRUPT_MAP
- #define INT_USB2538 60 // USB new for 2538
- #endif // CC2538_USE_ALTERNATE_INTERRUPT_MAP
- // 61 not in use
- #define INT_UDMA 62 // uDMA controller
- #define INT_UDMAERR 63 // uDMA Error
- // 64 - 155 not in use
- // 156-162 only in use in basic map
- #ifndef CC2538_USE_ALTERNATE_INTERRUPT_MAP
- #define INT_USB2538 156 // USB new for 2538
- #define INT_RFCORERTX 157 // RFCORE RX/TX
- #define INT_RFCOREERR 158 // RFCORE Error
- #define INT_AES 159 // AES
- #define INT_PKA 160 // PKA
- #define INT_SMTIM 161 // SMTimer
- #define INT_MACTIMR 162 // MACTimer
- #endif // not CC2538_USE_ALTERNATE_INTERRUPT_MAP
- //*****************************************************************************
- //
- // The following are defines for the total number of interrupts.
- //
- //*****************************************************************************
- #ifdef CC2538_USE_ALTERNATE_INTERRUPT_MAP
- #define NUM_INTERRUPTS 64
- #else
- #define NUM_INTERRUPTS 163
- #endif // CC2538_USE_ALTERNATE_INTERRUPT_MAP
- //*****************************************************************************
- //
- // The following are defines for the total number of priority levels.
- //
- //*****************************************************************************
- #define NUM_PRIORITY 8
- #define NUM_PRIORITY_BITS 3
- #endif // __HW_INTS_H__
|