Mouse code for the MacroRat

Dependencies:   ITG3200 QEI

Committer:
sahilmgandhi
Date:
Sat Jun 03 00:22:44 2017 +0000
Revision:
46:b156ef445742
Parent:
18:6a4db94011d3
Final code for internal battlebot competition.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sahilmgandhi 18:6a4db94011d3 1 ;/*****************************************************************************
sahilmgandhi 18:6a4db94011d3 2 ; * @file: startup_LPC13xx.s
sahilmgandhi 18:6a4db94011d3 3 ; * @purpose: CMSIS Cortex-M3 Core Device Startup File
sahilmgandhi 18:6a4db94011d3 4 ; * for the NXP LPC13xx Device Series
sahilmgandhi 18:6a4db94011d3 5 ; * @version: V1.02, modified for mbed
sahilmgandhi 18:6a4db94011d3 6 ; * @date: 27. July 2009, modified 3rd Aug 2009
sahilmgandhi 18:6a4db94011d3 7 ; *------- <<< Use Configuration Wizard in Context Menu >>> ------------------
sahilmgandhi 18:6a4db94011d3 8 ; *
sahilmgandhi 18:6a4db94011d3 9 ; * Copyright (C) 2009 ARM Limited. All rights reserved.
sahilmgandhi 18:6a4db94011d3 10 ; * ARM Limited (ARM) is supplying this software for use with Cortex-M3
sahilmgandhi 18:6a4db94011d3 11 ; * processor based microcontrollers. This file can be freely distributed
sahilmgandhi 18:6a4db94011d3 12 ; * within development tools that are supporting such ARM based processors.
sahilmgandhi 18:6a4db94011d3 13 ; *
sahilmgandhi 18:6a4db94011d3 14 ; * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
sahilmgandhi 18:6a4db94011d3 15 ; * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
sahilmgandhi 18:6a4db94011d3 16 ; * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
sahilmgandhi 18:6a4db94011d3 17 ; * ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
sahilmgandhi 18:6a4db94011d3 18 ; * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
sahilmgandhi 18:6a4db94011d3 19 ; *
sahilmgandhi 18:6a4db94011d3 20 ; *****************************************************************************/
sahilmgandhi 18:6a4db94011d3 21
sahilmgandhi 18:6a4db94011d3 22 __initial_sp EQU 0x10002000 ; Top of RAM from LPC1347
sahilmgandhi 18:6a4db94011d3 23
sahilmgandhi 18:6a4db94011d3 24 PRESERVE8
sahilmgandhi 18:6a4db94011d3 25 THUMB
sahilmgandhi 18:6a4db94011d3 26
sahilmgandhi 18:6a4db94011d3 27 ; Vector Table Mapped to Address 0 at Reset
sahilmgandhi 18:6a4db94011d3 28
sahilmgandhi 18:6a4db94011d3 29 AREA RESET, DATA, READONLY
sahilmgandhi 18:6a4db94011d3 30 EXPORT __Vectors
sahilmgandhi 18:6a4db94011d3 31
sahilmgandhi 18:6a4db94011d3 32 __Vectors DCD __initial_sp ; Top of Stack
sahilmgandhi 18:6a4db94011d3 33 DCD Reset_Handler ; Reset Handler
sahilmgandhi 18:6a4db94011d3 34 DCD NMI_Handler ; NMI Handler
sahilmgandhi 18:6a4db94011d3 35 DCD HardFault_Handler ; Hard Fault Handler
sahilmgandhi 18:6a4db94011d3 36 DCD MemManage_Handler ; MPU Fault Handler
sahilmgandhi 18:6a4db94011d3 37 DCD BusFault_Handler ; Bus Fault Handler
sahilmgandhi 18:6a4db94011d3 38 DCD UsageFault_Handler ; Usage Fault Handler
sahilmgandhi 18:6a4db94011d3 39 DCD 0 ; Reserved
sahilmgandhi 18:6a4db94011d3 40 DCD 0 ; Reserved
sahilmgandhi 18:6a4db94011d3 41 DCD 0 ; Reserved
sahilmgandhi 18:6a4db94011d3 42 DCD 0 ; Reserved
sahilmgandhi 18:6a4db94011d3 43 DCD SVC_Handler ; SVCall Handler
sahilmgandhi 18:6a4db94011d3 44 DCD DebugMon_Handler ; Debug Monitor Handler
sahilmgandhi 18:6a4db94011d3 45 DCD 0 ; Reserved
sahilmgandhi 18:6a4db94011d3 46 DCD PendSV_Handler ; PendSV Handler
sahilmgandhi 18:6a4db94011d3 47 DCD SysTick_Handler ; SysTick Handler
sahilmgandhi 18:6a4db94011d3 48
sahilmgandhi 18:6a4db94011d3 49 ; External Interrupts
sahilmgandhi 18:6a4db94011d3 50
sahilmgandhi 18:6a4db94011d3 51 DCD PIN_INT0_Handler ; All GPIO pin can be routed to PIN_INTx
sahilmgandhi 18:6a4db94011d3 52 DCD PIN_INT1_Handler
sahilmgandhi 18:6a4db94011d3 53 DCD PIN_INT2_Handler
sahilmgandhi 18:6a4db94011d3 54 DCD PIN_INT3_Handler
sahilmgandhi 18:6a4db94011d3 55 DCD PIN_INT4_Handler
sahilmgandhi 18:6a4db94011d3 56 DCD PIN_INT5_Handler
sahilmgandhi 18:6a4db94011d3 57 DCD PIN_INT6_Handler
sahilmgandhi 18:6a4db94011d3 58 DCD PIN_INT7_Handler
sahilmgandhi 18:6a4db94011d3 59 DCD GINT0_Handler
sahilmgandhi 18:6a4db94011d3 60 DCD GINT1_Handler ; PIO0 (0:7)
sahilmgandhi 18:6a4db94011d3 61 DCD 0
sahilmgandhi 18:6a4db94011d3 62 DCD 0
sahilmgandhi 18:6a4db94011d3 63 DCD OSTIMER_Handler
sahilmgandhi 18:6a4db94011d3 64 DCD 0
sahilmgandhi 18:6a4db94011d3 65 DCD SSP1_Handler ; SSP1
sahilmgandhi 18:6a4db94011d3 66 DCD I2C_Handler ; I2C
sahilmgandhi 18:6a4db94011d3 67 DCD CT16B0_Handler ; 16-bit Timer0
sahilmgandhi 18:6a4db94011d3 68 DCD CT16B1_Handler ; 16-bit Timer1
sahilmgandhi 18:6a4db94011d3 69 DCD CT32B0_Handler ; 32-bit Timer0
sahilmgandhi 18:6a4db94011d3 70 DCD CT32B1_Handler ; 32-bit Timer1
sahilmgandhi 18:6a4db94011d3 71 DCD SSP0_Handler ; SSP0
sahilmgandhi 18:6a4db94011d3 72 DCD USART_Handler ; USART
sahilmgandhi 18:6a4db94011d3 73 DCD USB_Handler ; USB IRQ
sahilmgandhi 18:6a4db94011d3 74 DCD USB_FIQHandler ; USB FIQ
sahilmgandhi 18:6a4db94011d3 75 DCD ADC_Handler ; A/D Converter
sahilmgandhi 18:6a4db94011d3 76 DCD WDT_Handler ; Watchdog timer
sahilmgandhi 18:6a4db94011d3 77 DCD BOD_Handler ; Brown Out Detect
sahilmgandhi 18:6a4db94011d3 78 DCD FMC_Handler ; IP2111 Flash Memory Controller
sahilmgandhi 18:6a4db94011d3 79 DCD OSCFAIL_Handler ; OSC FAIL
sahilmgandhi 18:6a4db94011d3 80 DCD PVTCIRCUIT_Handler ; PVT CIRCUIT
sahilmgandhi 18:6a4db94011d3 81 DCD USBWakeup_Handler ; USB wake up
sahilmgandhi 18:6a4db94011d3 82 DCD 0
sahilmgandhi 18:6a4db94011d3 83
sahilmgandhi 18:6a4db94011d3 84 IF :LNOT::DEF:NO_CRP
sahilmgandhi 18:6a4db94011d3 85 AREA |.ARM.__at_0x02FC|, CODE, READONLY
sahilmgandhi 18:6a4db94011d3 86 CRP_Key DCD 0xFFFFFFFF
sahilmgandhi 18:6a4db94011d3 87 ENDIF
sahilmgandhi 18:6a4db94011d3 88
sahilmgandhi 18:6a4db94011d3 89
sahilmgandhi 18:6a4db94011d3 90 AREA |.text|, CODE, READONLY
sahilmgandhi 18:6a4db94011d3 91
sahilmgandhi 18:6a4db94011d3 92
sahilmgandhi 18:6a4db94011d3 93 ; Reset Handler
sahilmgandhi 18:6a4db94011d3 94
sahilmgandhi 18:6a4db94011d3 95 Reset_Handler PROC
sahilmgandhi 18:6a4db94011d3 96 EXPORT Reset_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 97 IMPORT SystemInit
sahilmgandhi 18:6a4db94011d3 98 IMPORT __main
sahilmgandhi 18:6a4db94011d3 99 LDR R0, =SystemInit
sahilmgandhi 18:6a4db94011d3 100 BLX R0
sahilmgandhi 18:6a4db94011d3 101 LDR R0, =__main
sahilmgandhi 18:6a4db94011d3 102 BX R0
sahilmgandhi 18:6a4db94011d3 103 ENDP
sahilmgandhi 18:6a4db94011d3 104
sahilmgandhi 18:6a4db94011d3 105
sahilmgandhi 18:6a4db94011d3 106 ; Dummy Exception Handlers (infinite loops which can be modified)
sahilmgandhi 18:6a4db94011d3 107
sahilmgandhi 18:6a4db94011d3 108 NMI_Handler PROC
sahilmgandhi 18:6a4db94011d3 109 EXPORT NMI_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 110 B .
sahilmgandhi 18:6a4db94011d3 111 ENDP
sahilmgandhi 18:6a4db94011d3 112 HardFault_Handler\
sahilmgandhi 18:6a4db94011d3 113 PROC
sahilmgandhi 18:6a4db94011d3 114 EXPORT HardFault_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 115 B .
sahilmgandhi 18:6a4db94011d3 116 ENDP
sahilmgandhi 18:6a4db94011d3 117 MemManage_Handler\
sahilmgandhi 18:6a4db94011d3 118 PROC
sahilmgandhi 18:6a4db94011d3 119 EXPORT MemManage_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 120 B .
sahilmgandhi 18:6a4db94011d3 121 ENDP
sahilmgandhi 18:6a4db94011d3 122 BusFault_Handler\
sahilmgandhi 18:6a4db94011d3 123 PROC
sahilmgandhi 18:6a4db94011d3 124 EXPORT BusFault_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 125 B .
sahilmgandhi 18:6a4db94011d3 126 ENDP
sahilmgandhi 18:6a4db94011d3 127 UsageFault_Handler\
sahilmgandhi 18:6a4db94011d3 128 PROC
sahilmgandhi 18:6a4db94011d3 129 EXPORT UsageFault_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 130 B .
sahilmgandhi 18:6a4db94011d3 131 ENDP
sahilmgandhi 18:6a4db94011d3 132 SVC_Handler PROC
sahilmgandhi 18:6a4db94011d3 133 EXPORT SVC_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 134 B .
sahilmgandhi 18:6a4db94011d3 135 ENDP
sahilmgandhi 18:6a4db94011d3 136 DebugMon_Handler\
sahilmgandhi 18:6a4db94011d3 137 PROC
sahilmgandhi 18:6a4db94011d3 138 EXPORT DebugMon_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 139 B .
sahilmgandhi 18:6a4db94011d3 140 ENDP
sahilmgandhi 18:6a4db94011d3 141 PendSV_Handler PROC
sahilmgandhi 18:6a4db94011d3 142 EXPORT PendSV_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 143 B .
sahilmgandhi 18:6a4db94011d3 144 ENDP
sahilmgandhi 18:6a4db94011d3 145 SysTick_Handler PROC
sahilmgandhi 18:6a4db94011d3 146 EXPORT SysTick_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 147 B .
sahilmgandhi 18:6a4db94011d3 148 ENDP
sahilmgandhi 18:6a4db94011d3 149
sahilmgandhi 18:6a4db94011d3 150 Default_Handler PROC
sahilmgandhi 18:6a4db94011d3 151
sahilmgandhi 18:6a4db94011d3 152 EXPORT PIN_INT0_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 153 EXPORT PIN_INT1_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 154 EXPORT PIN_INT2_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 155 EXPORT PIN_INT3_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 156 EXPORT PIN_INT4_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 157 EXPORT PIN_INT5_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 158 EXPORT PIN_INT6_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 159 EXPORT PIN_INT7_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 160 EXPORT GINT0_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 161 EXPORT GINT1_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 162 EXPORT OSTIMER_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 163 EXPORT SSP1_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 164 EXPORT I2C_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 165 EXPORT CT16B0_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 166 EXPORT CT16B1_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 167 EXPORT CT32B0_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 168 EXPORT CT32B1_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 169 EXPORT SSP0_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 170 EXPORT USART_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 171 EXPORT USB_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 172 EXPORT USB_FIQHandler [WEAK]
sahilmgandhi 18:6a4db94011d3 173 EXPORT ADC_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 174 EXPORT WDT_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 175 EXPORT BOD_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 176 EXPORT FMC_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 177 EXPORT OSCFAIL_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 178 EXPORT PVTCIRCUIT_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 179 EXPORT USBWakeup_Handler [WEAK]
sahilmgandhi 18:6a4db94011d3 180
sahilmgandhi 18:6a4db94011d3 181 PIN_INT0_Handler
sahilmgandhi 18:6a4db94011d3 182 PIN_INT1_Handler
sahilmgandhi 18:6a4db94011d3 183 PIN_INT2_Handler
sahilmgandhi 18:6a4db94011d3 184 PIN_INT3_Handler
sahilmgandhi 18:6a4db94011d3 185 PIN_INT4_Handler
sahilmgandhi 18:6a4db94011d3 186 PIN_INT5_Handler
sahilmgandhi 18:6a4db94011d3 187 PIN_INT6_Handler
sahilmgandhi 18:6a4db94011d3 188 PIN_INT7_Handler
sahilmgandhi 18:6a4db94011d3 189 GINT0_Handler
sahilmgandhi 18:6a4db94011d3 190 GINT1_Handler
sahilmgandhi 18:6a4db94011d3 191 OSTIMER_Handler
sahilmgandhi 18:6a4db94011d3 192 SSP1_Handler
sahilmgandhi 18:6a4db94011d3 193 I2C_Handler
sahilmgandhi 18:6a4db94011d3 194 CT16B0_Handler
sahilmgandhi 18:6a4db94011d3 195 CT16B1_Handler
sahilmgandhi 18:6a4db94011d3 196 CT32B0_Handler
sahilmgandhi 18:6a4db94011d3 197 CT32B1_Handler
sahilmgandhi 18:6a4db94011d3 198 SSP0_Handler
sahilmgandhi 18:6a4db94011d3 199 USART_Handler
sahilmgandhi 18:6a4db94011d3 200 USB_Handler
sahilmgandhi 18:6a4db94011d3 201 USB_FIQHandler
sahilmgandhi 18:6a4db94011d3 202 ADC_Handler
sahilmgandhi 18:6a4db94011d3 203 WDT_Handler
sahilmgandhi 18:6a4db94011d3 204 BOD_Handler
sahilmgandhi 18:6a4db94011d3 205 FMC_Handler
sahilmgandhi 18:6a4db94011d3 206 OSCFAIL_Handler
sahilmgandhi 18:6a4db94011d3 207 PVTCIRCUIT_Handler
sahilmgandhi 18:6a4db94011d3 208 USBWakeup_Handler
sahilmgandhi 18:6a4db94011d3 209
sahilmgandhi 18:6a4db94011d3 210 B .
sahilmgandhi 18:6a4db94011d3 211
sahilmgandhi 18:6a4db94011d3 212 ENDP
sahilmgandhi 18:6a4db94011d3 213
sahilmgandhi 18:6a4db94011d3 214 ALIGN
sahilmgandhi 18:6a4db94011d3 215 END