@GNU AS
@.CHARSET  CP1251

.SYNTAX    unified              @ синтаксис исходного кода
.THUMB                          @ тип используемых инструкций Thumb
.CPU       cortex-m3           @ процессор

.section .vectors

@ таблица векторов прерываний
                     .WORD       _STACK_END       @ 0x0000 Вершина стека
                     .WORD       Start + 1        @ 0x0004 RESET


@ Таблица прерываний K1986BE92FI

                     .WORD       IRQ_NMI + 1           @ 0x0008 NMI
                     .WORD       IRQ_HardFault + 1     @ 0x000C Hard Fault
                     .WORD       IRQ_MemManage + 1     @ 0x0010 Memory management fault
                     .WORD       IRQ_BusFault + 1      @ 0x0014 Bus Fault
                     .WORD       IRQ_UsageFault + 1    @ 0x0018 Usage Fault
                     .WORD       0                     @ 0x001C Reserved
                     .WORD       0                @ 0x0020 Reserved
                     .WORD       0                @ 0x0024 Reserved
                     .WORD       0                @ 0x0028 Reserved
                     .WORD       IRQ_SVCall + 1   @ 0x002C SVCall
                     .WORD       0                @ 0x0030 Reserved
                     .WORD       0                @ 0x0034 Reserved
                     .WORD       IRQ_PendSV + 1   @ 0x0038 PendSV
                     .WORD       IRQ_SysTick + 1  @ 0x003C SysTick

@ Прерывания периферии микроконтроллера 1921ВК035
                     .WORD       IRQ0_CAN1 + 1    @ 0x0040
                     .WORD       IRQ1_CAN2 + 1    @ 0x0044
                     .WORD       IRQ2_USB + 1     @ 0x0048
                     .WORD       0                @ IRQ3 0x004C Reserved
                     .WORD       0                @ IRQ4  0x0050 Reserved
                     .WORD       IRQ5_DMA + 1     @ 0x0054
                     .WORD       IRQ6_UART1 + 1   @ 0x0058
                     .WORD       IRQ7_UART1 + 1   @ 0x005C
                     .WORD       IRQ8_SSP1 + 1    @ 0x0060
                     .WORD       0                @ IRQ9 0x0064 Reserved
                     .WORD       IRQ10_I2C1 + 1   @ 0x0068
                     .WORD       IRQ11_POWER + 1  @ 0x006C
                     .WORD       IRQ12_WWDG + 1   @ 0x0070
                     .WORD       0                @ IRQ13 0x0074
                     .WORD       IRQ14_TIMER1 + 1 @ 0x0078
                     .WORD       IRQ15_TIMER2 + 1 @ 0x007C
                     .WORD       IRQ16_TIMER3 + 1 @ 0x0080
                     .WORD       IRQ17_ADC + 1    @ 0x0088
                     .WORD       0                @ IRQ18 0x008C
                     .WORD       IRQ19_COMP + 1   @ 0x0090
                     .WORD       IRQ20_SSP2 + 1   @ 0x0094
                     .WORD       0                @ IRQ21 0x0098
                     .WORD       0                @ IRQ22 0x009C
                     .WORD       0                @ IRQ23 0x00A0
                     .WORD       0                @ IRQ24 0x00A4
                     .WORD       0                @ IRQ26 0x00A8
                     .WORD       IRQ27_BACKUP + 1 @ 0x00AC
                     .WORD       IRQ28_EXT_INT1 + 1  @ 0x00B0
                     .WORD       IRQ29_EXT_INT2 + 1  @ 0x00B4
                     .WORD       IRQ30_EXT_INT3 + 1  @ 0x00B8
                     .WORD       IRQ31_EXT_INT4 + 1  @ 0x00BC



@ Заглушки для любых необрабатываемых прерываний

@ Прерывания ядра микроконтроллера

                     .WEAK       IRQ_NMI
IRQ_NMI:

                     .WEAK       IRQ_HardFault
IRQ_HardFault:

                     .WEAK       IRQ_MemManage
IRQ_MemManage:

                     .WEAK       IRQ_BusFault
IRQ_BusFault:

                     .WEAK       IRQ_UsageFault
IRQ_UsageFault:

                     .WEAK       IRQ_SVCall
IRQ_SVCall:

                     .WEAK       IRQ_DebugMonitor
IRQ_DebugMonitor:

                     .WEAK       IRQ_PendSV
IRQ_PendSV:

                     .WEAK       IRQ_SysTick
IRQ_SysTick:

@ прерывания периферии микроконтроллера
.WEAK  IRQ0_CAN1
.WEAK  IRQ1_CAN2
.WEAK  IRQ2_USB
.WEAK  IRQ5_DMA
.WEAK  IRQ6_UART1
.WEAK  IRQ7_UART1
.WEAK  IRQ8_SSP1
.WEAK  IRQ10_I2C1
.WEAK  IRQ11_POWER
.WEAK  IRQ12_WWDG
.WEAK  IRQ14_TIMER1
.WEAK  IRQ15_TIMER2
.WEAK  IRQ16_TIMER3
.WEAK  IRQ17_ADC
.WEAK  IRQ19_COMP
.WEAK  IRQ20_SSP2
.WEAK  IRQ27_BACKUP
.WEAK  IRQ28_EXT_INT1
.WEAK  IRQ29_EXT_INT2
.WEAK  IRQ30_EXT_INT3
.WEAK  IRQ31_EXT_INT4

IRQ0_CAN1:
IRQ1_CAN2:
IRQ2_USB:
IRQ5_DMA:
IRQ6_UART1:
IRQ7_UART1:
IRQ8_SSP1:
IRQ10_I2C1:
IRQ11_POWER:
IRQ12_WWDG:
IRQ14_TIMER1:
IRQ15_TIMER2:
IRQ16_TIMER3:
IRQ17_ADC:
IRQ19_COMP:
IRQ20_SSP2:
IRQ27_BACKUP:
IRQ28_EXT_INT1:
IRQ29_EXT_INT2:
IRQ30_EXT_INT3:
IRQ31_EXT_INT4:


int_vect_terminator:
          B     int_vect_terminator
