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 .equ Stack_Size, 0x80
sahilmgandhi 18:6a4db94011d3 2 .section ".stack", "w"
sahilmgandhi 18:6a4db94011d3 3 .align 3
sahilmgandhi 18:6a4db94011d3 4 .globl __cs3_stack_mem
sahilmgandhi 18:6a4db94011d3 5 .globl __cs3_stack_size
sahilmgandhi 18:6a4db94011d3 6 __cs3_stack_mem:
sahilmgandhi 18:6a4db94011d3 7 .if Stack_Size
sahilmgandhi 18:6a4db94011d3 8 .space Stack_Size
sahilmgandhi 18:6a4db94011d3 9 .endif
sahilmgandhi 18:6a4db94011d3 10 .size __cs3_stack_mem, . - __cs3_stack_mem
sahilmgandhi 18:6a4db94011d3 11 .set __cs3_stack_size, . - __cs3_stack_mem
sahilmgandhi 18:6a4db94011d3 12
sahilmgandhi 18:6a4db94011d3 13 .equ Heap_Size, 0x80
sahilmgandhi 18:6a4db94011d3 14 .section ".heap", "w"
sahilmgandhi 18:6a4db94011d3 15 .align 3
sahilmgandhi 18:6a4db94011d3 16 .globl __cs3_heap_start
sahilmgandhi 18:6a4db94011d3 17 .globl __cs3_heap_end
sahilmgandhi 18:6a4db94011d3 18 __cs3_heap_start:
sahilmgandhi 18:6a4db94011d3 19 .if Heap_Size
sahilmgandhi 18:6a4db94011d3 20 .space Heap_Size
sahilmgandhi 18:6a4db94011d3 21 .endif
sahilmgandhi 18:6a4db94011d3 22 __cs3_heap_end:
sahilmgandhi 18:6a4db94011d3 23
sahilmgandhi 18:6a4db94011d3 24 .section ".cs3.interrupt_vector"
sahilmgandhi 18:6a4db94011d3 25 .globl __cs3_interrupt_vector_cortex_m
sahilmgandhi 18:6a4db94011d3 26 .type __cs3_interrupt_vector_cortex_m, %object
sahilmgandhi 18:6a4db94011d3 27
sahilmgandhi 18:6a4db94011d3 28 __cs3_interrupt_vector_cortex_m:
sahilmgandhi 18:6a4db94011d3 29 .long __cs3_stack
sahilmgandhi 18:6a4db94011d3 30 .long __cs3_reset
sahilmgandhi 18:6a4db94011d3 31 .long NMI_Handler
sahilmgandhi 18:6a4db94011d3 32 .long HardFault_Handler
sahilmgandhi 18:6a4db94011d3 33 .long 0
sahilmgandhi 18:6a4db94011d3 34 .long 0
sahilmgandhi 18:6a4db94011d3 35 .long 0
sahilmgandhi 18:6a4db94011d3 36 .long 0
sahilmgandhi 18:6a4db94011d3 37 .long 0
sahilmgandhi 18:6a4db94011d3 38 .long 0
sahilmgandhi 18:6a4db94011d3 39 .long 0
sahilmgandhi 18:6a4db94011d3 40 .long SVC_Handler
sahilmgandhi 18:6a4db94011d3 41 .long 0
sahilmgandhi 18:6a4db94011d3 42 .long 0
sahilmgandhi 18:6a4db94011d3 43 .long PendSV_Handler
sahilmgandhi 18:6a4db94011d3 44 .long SysTick_Handler
sahilmgandhi 18:6a4db94011d3 45
sahilmgandhi 18:6a4db94011d3 46 .long DEF_IRQHandler
sahilmgandhi 18:6a4db94011d3 47
sahilmgandhi 18:6a4db94011d3 48 .size __cs3_interrupt_vector_cortex_m, . - __cs3_interrupt_vector_cortex_m
sahilmgandhi 18:6a4db94011d3 49
sahilmgandhi 18:6a4db94011d3 50 .thumb
sahilmgandhi 18:6a4db94011d3 51
sahilmgandhi 18:6a4db94011d3 52 .section .cs3.reset,"x",%progbits
sahilmgandhi 18:6a4db94011d3 53 .thumb_func
sahilmgandhi 18:6a4db94011d3 54 .globl __cs3_reset_cortex_m
sahilmgandhi 18:6a4db94011d3 55 .type __cs3_reset_cortex_m, %function
sahilmgandhi 18:6a4db94011d3 56 __cs3_reset_cortex_m:
sahilmgandhi 18:6a4db94011d3 57 .fnstart
sahilmgandhi 18:6a4db94011d3 58 LDR R0, =SystemInit
sahilmgandhi 18:6a4db94011d3 59 BLX R0
sahilmgandhi 18:6a4db94011d3 60 LDR R0,=__cs3_start_c
sahilmgandhi 18:6a4db94011d3 61 BX R0
sahilmgandhi 18:6a4db94011d3 62 .pool
sahilmgandhi 18:6a4db94011d3 63 .cantunwind
sahilmgandhi 18:6a4db94011d3 64 .fnend
sahilmgandhi 18:6a4db94011d3 65 .size __cs3_reset_cortex_m,.-__cs3_reset_cortex_m
sahilmgandhi 18:6a4db94011d3 66
sahilmgandhi 18:6a4db94011d3 67 .section ".text"
sahilmgandhi 18:6a4db94011d3 68
sahilmgandhi 18:6a4db94011d3 69 .weak NMI_Handler
sahilmgandhi 18:6a4db94011d3 70 .type NMI_Handler, %function
sahilmgandhi 18:6a4db94011d3 71 NMI_Handler:
sahilmgandhi 18:6a4db94011d3 72 B .
sahilmgandhi 18:6a4db94011d3 73 .size NMI_Handler, . - NMI_Handler
sahilmgandhi 18:6a4db94011d3 74
sahilmgandhi 18:6a4db94011d3 75 .weak HardFault_Handler
sahilmgandhi 18:6a4db94011d3 76 .type HardFault_Handler, %function
sahilmgandhi 18:6a4db94011d3 77 HardFault_Handler:
sahilmgandhi 18:6a4db94011d3 78 B .
sahilmgandhi 18:6a4db94011d3 79 .size HardFault_Handler, . - HardFault_Handler
sahilmgandhi 18:6a4db94011d3 80
sahilmgandhi 18:6a4db94011d3 81 .weak SVC_Handler
sahilmgandhi 18:6a4db94011d3 82 .type SVC_Handler, %function
sahilmgandhi 18:6a4db94011d3 83 SVC_Handler:
sahilmgandhi 18:6a4db94011d3 84 B .
sahilmgandhi 18:6a4db94011d3 85 .size SVC_Handler, . - SVC_Handler
sahilmgandhi 18:6a4db94011d3 86
sahilmgandhi 18:6a4db94011d3 87 .weak PendSV_Handler
sahilmgandhi 18:6a4db94011d3 88 .type PendSV_Handler, %function
sahilmgandhi 18:6a4db94011d3 89 PendSV_Handler:
sahilmgandhi 18:6a4db94011d3 90 B .
sahilmgandhi 18:6a4db94011d3 91 .size PendSV_Handler, . - PendSV_Handler
sahilmgandhi 18:6a4db94011d3 92
sahilmgandhi 18:6a4db94011d3 93 .weak SysTick_Handler
sahilmgandhi 18:6a4db94011d3 94 .type SysTick_Handler, %function
sahilmgandhi 18:6a4db94011d3 95 SysTick_Handler:
sahilmgandhi 18:6a4db94011d3 96 B .
sahilmgandhi 18:6a4db94011d3 97 .size SysTick_Handler, . - SysTick_Handler
sahilmgandhi 18:6a4db94011d3 98
sahilmgandhi 18:6a4db94011d3 99 .globl Default_Handler
sahilmgandhi 18:6a4db94011d3 100 .type Default_Handler, %function
sahilmgandhi 18:6a4db94011d3 101 Default_Handler:
sahilmgandhi 18:6a4db94011d3 102 B .
sahilmgandhi 18:6a4db94011d3 103 .size Default_Handler, . - Default_Handler
sahilmgandhi 18:6a4db94011d3 104
sahilmgandhi 18:6a4db94011d3 105 .macro IRQ handler
sahilmgandhi 18:6a4db94011d3 106 .weak \handler
sahilmgandhi 18:6a4db94011d3 107 .set \handler, Default_Handler
sahilmgandhi 18:6a4db94011d3 108 .endm
sahilmgandhi 18:6a4db94011d3 109
sahilmgandhi 18:6a4db94011d3 110 IRQ DEF_IRQHandler
sahilmgandhi 18:6a4db94011d3 111
sahilmgandhi 18:6a4db94011d3 112 .end