diff --git a/rtl/freertos/arm/stm32f103xe.pp b/rtl/freertos/arm/stm32f103xe.pp
index a7ed045a2b..dc8042daa7 100644
--- a/rtl/freertos/arm/stm32f103xe.pp
+++ b/rtl/freertos/arm/stm32f103xe.pp
@@ -1,4 +1,30 @@
unit stm32f103xe;
+(**
+ ******************************************************************************
+ * @file stm32f103xe.h
+ * @author MCD Application Team
+ * @brief CMSIS Cortex-M3 Device Peripheral Access Layer Header File.
+ * This file contains all the peripheral register's definitions, bits
+ * definitions and memory mapping for STM32F1xx devices.
+ *
+ * This file contains:
+ * - Data structures and the address mapping for all peripherals
+ * - Peripheral's registers declarations and bits definition
+ * - Macros to access peripheral<92>s registers hardware
+ *
+ ******************************************************************************
+ * @attention
+ *
+ *
© Copyright (c) 2017 STMicroelectronics.
+ * All rights reserved.
+ *
+ * This software component is licensed by ST under BSD 3-Clause license,
+ * the "License"; You may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ * opensource.org/licenses/BSD-3-Clause
+ *
+ ******************************************************************************
+ *)
interface
{$PACKRECORDS C}
{$GOTO ON}
@@ -624,75 +650,75 @@ var
implementation
-procedure NonMaskableInt_interrupt; external name 'NonMaskableInt_interrupt';
-procedure HardFault_interrupt; external name 'HardFault_interrupt';
-procedure MemoryManagement_interrupt; external name 'MemoryManagement_interrupt';
-procedure BusFault_interrupt; external name 'BusFault_interrupt';
-procedure UsageFault_interrupt; external name 'UsageFault_interrupt';
-procedure SVCall_interrupt; external name 'SVCall_interrupt';
-procedure DebugMonitor_interrupt; external name 'DebugMonitor_interrupt';
-procedure PendSV_interrupt; external name 'PendSV_interrupt';
-procedure SysTick_interrupt; external name 'SysTick_interrupt';
-procedure WWDG_interrupt; external name 'WWDG_interrupt';
-procedure PVD_interrupt; external name 'PVD_interrupt';
-procedure TAMPER_interrupt; external name 'TAMPER_interrupt';
-procedure RTC_interrupt; external name 'RTC_interrupt';
-procedure FLASH_interrupt; external name 'FLASH_interrupt';
-procedure RCC_interrupt; external name 'RCC_interrupt';
-procedure EXTI0_interrupt; external name 'EXTI0_interrupt';
-procedure EXTI1_interrupt; external name 'EXTI1_interrupt';
-procedure EXTI2_interrupt; external name 'EXTI2_interrupt';
-procedure EXTI3_interrupt; external name 'EXTI3_interrupt';
-procedure EXTI4_interrupt; external name 'EXTI4_interrupt';
-procedure DMA1_Channel1_interrupt; external name 'DMA1_Channel1_interrupt';
-procedure DMA1_Channel2_interrupt; external name 'DMA1_Channel2_interrupt';
-procedure DMA1_Channel3_interrupt; external name 'DMA1_Channel3_interrupt';
-procedure DMA1_Channel4_interrupt; external name 'DMA1_Channel4_interrupt';
-procedure DMA1_Channel5_interrupt; external name 'DMA1_Channel5_interrupt';
-procedure DMA1_Channel6_interrupt; external name 'DMA1_Channel6_interrupt';
-procedure DMA1_Channel7_interrupt; external name 'DMA1_Channel7_interrupt';
-procedure ADC1_2_interrupt; external name 'ADC1_2_interrupt';
-procedure USB_HP_CAN1_TX_interrupt; external name 'USB_HP_CAN1_TX_interrupt';
-procedure USB_LP_CAN1_RX0_interrupt; external name 'USB_LP_CAN1_RX0_interrupt';
-procedure CAN1_RX1_interrupt; external name 'CAN1_RX1_interrupt';
-procedure CAN1_SCE_interrupt; external name 'CAN1_SCE_interrupt';
-procedure EXTI9_5_interrupt; external name 'EXTI9_5_interrupt';
-procedure TIM1_BRK_interrupt; external name 'TIM1_BRK_interrupt';
-procedure TIM1_UP_interrupt; external name 'TIM1_UP_interrupt';
-procedure TIM1_TRG_COM_interrupt; external name 'TIM1_TRG_COM_interrupt';
-procedure TIM1_CC_interrupt; external name 'TIM1_CC_interrupt';
-procedure TIM2_interrupt; external name 'TIM2_interrupt';
-procedure TIM3_interrupt; external name 'TIM3_interrupt';
-procedure TIM4_interrupt; external name 'TIM4_interrupt';
-procedure I2C1_EV_interrupt; external name 'I2C1_EV_interrupt';
-procedure I2C1_ER_interrupt; external name 'I2C1_ER_interrupt';
-procedure I2C2_EV_interrupt; external name 'I2C2_EV_interrupt';
-procedure I2C2_ER_interrupt; external name 'I2C2_ER_interrupt';
-procedure SPI1_interrupt; external name 'SPI1_interrupt';
-procedure SPI2_interrupt; external name 'SPI2_interrupt';
-procedure USART1_interrupt; external name 'USART1_interrupt';
-procedure USART2_interrupt; external name 'USART2_interrupt';
-procedure USART3_interrupt; external name 'USART3_interrupt';
-procedure EXTI15_10_interrupt; external name 'EXTI15_10_interrupt';
-procedure RTC_Alarm_interrupt; external name 'RTC_Alarm_interrupt';
-procedure USBWakeUp_interrupt; external name 'USBWakeUp_interrupt';
-procedure TIM8_BRK_interrupt; external name 'TIM8_BRK_interrupt';
-procedure TIM8_UP_interrupt; external name 'TIM8_UP_interrupt';
-procedure TIM8_TRG_COM_interrupt; external name 'TIM8_TRG_COM_interrupt';
-procedure TIM8_CC_interrupt; external name 'TIM8_CC_interrupt';
-procedure ADC3_interrupt; external name 'ADC3_interrupt';
-procedure FSMC_interrupt; external name 'FSMC_interrupt';
-procedure SDIO_interrupt; external name 'SDIO_interrupt';
-procedure TIM5_interrupt; external name 'TIM5_interrupt';
-procedure SPI3_interrupt; external name 'SPI3_interrupt';
-procedure UART4_interrupt; external name 'UART4_interrupt';
-procedure UART5_interrupt; external name 'UART5_interrupt';
-procedure TIM6_interrupt; external name 'TIM6_interrupt';
-procedure TIM7_interrupt; external name 'TIM7_interrupt';
-procedure DMA2_Channel1_interrupt; external name 'DMA2_Channel1_interrupt';
-procedure DMA2_Channel2_interrupt; external name 'DMA2_Channel2_interrupt';
-procedure DMA2_Channel3_interrupt; external name 'DMA2_Channel3_interrupt';
-procedure DMA2_Channel4_5_interrupt; external name 'DMA2_Channel4_5_interrupt';
+procedure NonMaskableInt_Handler; external name 'NonMaskableInt_Handler';
+procedure HardFault_Handler; external name 'HardFault_Handler';
+procedure MemoryManagement_Handler; external name 'MemoryManagement_Handler';
+procedure BusFault_Handler; external name 'BusFault_Handler';
+procedure UsageFault_Handler; external name 'UsageFault_Handler';
+procedure SVCall_Handler; external name 'SVCall_Handler';
+procedure DebugMonitor_Handler; external name 'DebugMonitor_Handler';
+procedure PendSV_Handler; external name 'PendSV_Handler';
+procedure SysTick_Handler; external name 'SysTick_Handler';
+procedure WWDG_Handler; external name 'WWDG_Handler';
+procedure PVD_Handler; external name 'PVD_Handler';
+procedure TAMPER_Handler; external name 'TAMPER_Handler';
+procedure RTC_Handler; external name 'RTC_Handler';
+procedure FLASH_Handler; external name 'FLASH_Handler';
+procedure RCC_Handler; external name 'RCC_Handler';
+procedure EXTI0_Handler; external name 'EXTI0_Handler';
+procedure EXTI1_Handler; external name 'EXTI1_Handler';
+procedure EXTI2_Handler; external name 'EXTI2_Handler';
+procedure EXTI3_Handler; external name 'EXTI3_Handler';
+procedure EXTI4_Handler; external name 'EXTI4_Handler';
+procedure DMA1_Channel1_Handler; external name 'DMA1_Channel1_Handler';
+procedure DMA1_Channel2_Handler; external name 'DMA1_Channel2_Handler';
+procedure DMA1_Channel3_Handler; external name 'DMA1_Channel3_Handler';
+procedure DMA1_Channel4_Handler; external name 'DMA1_Channel4_Handler';
+procedure DMA1_Channel5_Handler; external name 'DMA1_Channel5_Handler';
+procedure DMA1_Channel6_Handler; external name 'DMA1_Channel6_Handler';
+procedure DMA1_Channel7_Handler; external name 'DMA1_Channel7_Handler';
+procedure ADC1_2_Handler; external name 'ADC1_2_Handler';
+procedure USB_HP_CAN1_TX_Handler; external name 'USB_HP_CAN1_TX_Handler';
+procedure USB_LP_CAN1_RX0_Handler; external name 'USB_LP_CAN1_RX0_Handler';
+procedure CAN1_RX1_Handler; external name 'CAN1_RX1_Handler';
+procedure CAN1_SCE_Handler; external name 'CAN1_SCE_Handler';
+procedure EXTI9_5_Handler; external name 'EXTI9_5_Handler';
+procedure TIM1_BRK_Handler; external name 'TIM1_BRK_Handler';
+procedure TIM1_UP_Handler; external name 'TIM1_UP_Handler';
+procedure TIM1_TRG_COM_Handler; external name 'TIM1_TRG_COM_Handler';
+procedure TIM1_CC_Handler; external name 'TIM1_CC_Handler';
+procedure TIM2_Handler; external name 'TIM2_Handler';
+procedure TIM3_Handler; external name 'TIM3_Handler';
+procedure TIM4_Handler; external name 'TIM4_Handler';
+procedure I2C1_EV_Handler; external name 'I2C1_EV_Handler';
+procedure I2C1_ER_Handler; external name 'I2C1_ER_Handler';
+procedure I2C2_EV_Handler; external name 'I2C2_EV_Handler';
+procedure I2C2_ER_Handler; external name 'I2C2_ER_Handler';
+procedure SPI1_Handler; external name 'SPI1_Handler';
+procedure SPI2_Handler; external name 'SPI2_Handler';
+procedure USART1_Handler; external name 'USART1_Handler';
+procedure USART2_Handler; external name 'USART2_Handler';
+procedure USART3_Handler; external name 'USART3_Handler';
+procedure EXTI15_10_Handler; external name 'EXTI15_10_Handler';
+procedure RTC_Alarm_Handler; external name 'RTC_Alarm_Handler';
+procedure USBWakeUp_Handler; external name 'USBWakeUp_Handler';
+procedure TIM8_BRK_Handler; external name 'TIM8_BRK_Handler';
+procedure TIM8_UP_Handler; external name 'TIM8_UP_Handler';
+procedure TIM8_TRG_COM_Handler; external name 'TIM8_TRG_COM_Handler';
+procedure TIM8_CC_Handler; external name 'TIM8_CC_Handler';
+procedure ADC3_Handler; external name 'ADC3_Handler';
+procedure FSMC_Handler; external name 'FSMC_Handler';
+procedure SDIO_Handler; external name 'SDIO_Handler';
+procedure TIM5_Handler; external name 'TIM5_Handler';
+procedure SPI3_Handler; external name 'SPI3_Handler';
+procedure UART4_Handler; external name 'UART4_Handler';
+procedure UART5_Handler; external name 'UART5_Handler';
+procedure TIM6_Handler; external name 'TIM6_Handler';
+procedure TIM7_Handler; external name 'TIM7_Handler';
+procedure DMA2_Channel1_Handler; external name 'DMA2_Channel1_Handler';
+procedure DMA2_Channel2_Handler; external name 'DMA2_Channel2_Handler';
+procedure DMA2_Channel3_Handler; external name 'DMA2_Channel3_Handler';
+procedure DMA2_Channel4_5_Handler; external name 'DMA2_Channel4_5_Handler';
{$i cortexm3_start.inc}
@@ -704,220 +730,220 @@ asm
interrupt_vectors:
.long _stack_top
.long Startup
- .long NonMaskableInt_interrupt
- .long HardFault_interrupt
- .long MemoryManagement_interrupt
- .long BusFault_interrupt
- .long UsageFault_interrupt
+ .long NonMaskableInt_Handler
+ .long HardFault_Handler
+ .long MemoryManagement_Handler
+ .long BusFault_Handler
+ .long UsageFault_Handler
.long 0
.long 0
.long 0
.long 0
- .long SVCall_interrupt
- .long DebugMonitor_interrupt
+ .long SVCall_Handler
+ .long DebugMonitor_Handler
.long 0
- .long PendSV_interrupt
- .long SysTick_interrupt
- .long WWDG_interrupt
- .long PVD_interrupt
- .long TAMPER_interrupt
- .long RTC_interrupt
- .long FLASH_interrupt
- .long RCC_interrupt
- .long EXTI0_interrupt
- .long EXTI1_interrupt
- .long EXTI2_interrupt
- .long EXTI3_interrupt
- .long EXTI4_interrupt
- .long DMA1_Channel1_interrupt
- .long DMA1_Channel2_interrupt
- .long DMA1_Channel3_interrupt
- .long DMA1_Channel4_interrupt
- .long DMA1_Channel5_interrupt
- .long DMA1_Channel6_interrupt
- .long DMA1_Channel7_interrupt
- .long ADC1_2_interrupt
- .long USB_HP_CAN1_TX_interrupt
- .long USB_LP_CAN1_RX0_interrupt
- .long CAN1_RX1_interrupt
- .long CAN1_SCE_interrupt
- .long EXTI9_5_interrupt
- .long TIM1_BRK_interrupt
- .long TIM1_UP_interrupt
- .long TIM1_TRG_COM_interrupt
- .long TIM1_CC_interrupt
- .long TIM2_interrupt
- .long TIM3_interrupt
- .long TIM4_interrupt
- .long I2C1_EV_interrupt
- .long I2C1_ER_interrupt
- .long I2C2_EV_interrupt
- .long I2C2_ER_interrupt
- .long SPI1_interrupt
- .long SPI2_interrupt
- .long USART1_interrupt
- .long USART2_interrupt
- .long USART3_interrupt
- .long EXTI15_10_interrupt
- .long RTC_Alarm_interrupt
- .long USBWakeUp_interrupt
- .long TIM8_BRK_interrupt
- .long TIM8_UP_interrupt
- .long TIM8_TRG_COM_interrupt
- .long TIM8_CC_interrupt
- .long ADC3_interrupt
- .long FSMC_interrupt
- .long SDIO_interrupt
- .long TIM5_interrupt
- .long SPI3_interrupt
- .long UART4_interrupt
- .long UART5_interrupt
- .long TIM6_interrupt
- .long TIM7_interrupt
- .long DMA2_Channel1_interrupt
- .long DMA2_Channel2_interrupt
- .long DMA2_Channel3_interrupt
- .long DMA2_Channel4_5_interrupt
-
- .weak NonMaskableInt_interrupt
- .weak HardFault_interrupt
- .weak MemoryManagement_interrupt
- .weak BusFault_interrupt
- .weak UsageFault_interrupt
- .weak SVCall_interrupt
- .weak DebugMonitor_interrupt
- .weak PendSV_interrupt
- .weak SysTick_interrupt
- .weak WWDG_interrupt
- .weak PVD_interrupt
- .weak TAMPER_interrupt
- .weak RTC_interrupt
- .weak FLASH_interrupt
- .weak RCC_interrupt
- .weak EXTI0_interrupt
- .weak EXTI1_interrupt
- .weak EXTI2_interrupt
- .weak EXTI3_interrupt
- .weak EXTI4_interrupt
- .weak DMA1_Channel1_interrupt
- .weak DMA1_Channel2_interrupt
- .weak DMA1_Channel3_interrupt
- .weak DMA1_Channel4_interrupt
- .weak DMA1_Channel5_interrupt
- .weak DMA1_Channel6_interrupt
- .weak DMA1_Channel7_interrupt
- .weak ADC1_2_interrupt
- .weak USB_HP_CAN1_TX_interrupt
- .weak USB_LP_CAN1_RX0_interrupt
- .weak CAN1_RX1_interrupt
- .weak CAN1_SCE_interrupt
- .weak EXTI9_5_interrupt
- .weak TIM1_BRK_interrupt
- .weak TIM1_UP_interrupt
- .weak TIM1_TRG_COM_interrupt
- .weak TIM1_CC_interrupt
- .weak TIM2_interrupt
- .weak TIM3_interrupt
- .weak TIM4_interrupt
- .weak I2C1_EV_interrupt
- .weak I2C1_ER_interrupt
- .weak I2C2_EV_interrupt
- .weak I2C2_ER_interrupt
- .weak SPI1_interrupt
- .weak SPI2_interrupt
- .weak USART1_interrupt
- .weak USART2_interrupt
- .weak USART3_interrupt
- .weak EXTI15_10_interrupt
- .weak RTC_Alarm_interrupt
- .weak USBWakeUp_interrupt
- .weak TIM8_BRK_interrupt
- .weak TIM8_UP_interrupt
- .weak TIM8_TRG_COM_interrupt
- .weak TIM8_CC_interrupt
- .weak ADC3_interrupt
- .weak FSMC_interrupt
- .weak SDIO_interrupt
- .weak TIM5_interrupt
- .weak SPI3_interrupt
- .weak UART4_interrupt
- .weak UART5_interrupt
- .weak TIM6_interrupt
- .weak TIM7_interrupt
- .weak DMA2_Channel1_interrupt
- .weak DMA2_Channel2_interrupt
- .weak DMA2_Channel3_interrupt
- .weak DMA2_Channel4_5_interrupt
-
- .set NonMaskableInt_interrupt, Haltproc
- .set HardFault_interrupt, Haltproc
- .set MemoryManagement_interrupt, Haltproc
- .set BusFault_interrupt, Haltproc
- .set UsageFault_interrupt, Haltproc
- .set SVCall_interrupt, Haltproc
- .set DebugMonitor_interrupt, Haltproc
- .set PendSV_interrupt, Haltproc
- .set SysTick_interrupt, Haltproc
- .set WWDG_interrupt, Haltproc
- .set PVD_interrupt, Haltproc
- .set TAMPER_interrupt, Haltproc
- .set RTC_interrupt, Haltproc
- .set FLASH_interrupt, Haltproc
- .set RCC_interrupt, Haltproc
- .set EXTI0_interrupt, Haltproc
- .set EXTI1_interrupt, Haltproc
- .set EXTI2_interrupt, Haltproc
- .set EXTI3_interrupt, Haltproc
- .set EXTI4_interrupt, Haltproc
- .set DMA1_Channel1_interrupt, Haltproc
- .set DMA1_Channel2_interrupt, Haltproc
- .set DMA1_Channel3_interrupt, Haltproc
- .set DMA1_Channel4_interrupt, Haltproc
- .set DMA1_Channel5_interrupt, Haltproc
- .set DMA1_Channel6_interrupt, Haltproc
- .set DMA1_Channel7_interrupt, Haltproc
- .set ADC1_2_interrupt, Haltproc
- .set USB_HP_CAN1_TX_interrupt, Haltproc
- .set USB_LP_CAN1_RX0_interrupt, Haltproc
- .set CAN1_RX1_interrupt, Haltproc
- .set CAN1_SCE_interrupt, Haltproc
- .set EXTI9_5_interrupt, Haltproc
- .set TIM1_BRK_interrupt, Haltproc
- .set TIM1_UP_interrupt, Haltproc
- .set TIM1_TRG_COM_interrupt, Haltproc
- .set TIM1_CC_interrupt, Haltproc
- .set TIM2_interrupt, Haltproc
- .set TIM3_interrupt, Haltproc
- .set TIM4_interrupt, Haltproc
- .set I2C1_EV_interrupt, Haltproc
- .set I2C1_ER_interrupt, Haltproc
- .set I2C2_EV_interrupt, Haltproc
- .set I2C2_ER_interrupt, Haltproc
- .set SPI1_interrupt, Haltproc
- .set SPI2_interrupt, Haltproc
- .set USART1_interrupt, Haltproc
- .set USART2_interrupt, Haltproc
- .set USART3_interrupt, Haltproc
- .set EXTI15_10_interrupt, Haltproc
- .set RTC_Alarm_interrupt, Haltproc
- .set USBWakeUp_interrupt, Haltproc
- .set TIM8_BRK_interrupt, Haltproc
- .set TIM8_UP_interrupt, Haltproc
- .set TIM8_TRG_COM_interrupt, Haltproc
- .set TIM8_CC_interrupt, Haltproc
- .set ADC3_interrupt, Haltproc
- .set FSMC_interrupt, Haltproc
- .set SDIO_interrupt, Haltproc
- .set TIM5_interrupt, Haltproc
- .set SPI3_interrupt, Haltproc
- .set UART4_interrupt, Haltproc
- .set UART5_interrupt, Haltproc
- .set TIM6_interrupt, Haltproc
- .set TIM7_interrupt, Haltproc
- .set DMA2_Channel1_interrupt, Haltproc
- .set DMA2_Channel2_interrupt, Haltproc
- .set DMA2_Channel3_interrupt, Haltproc
- .set DMA2_Channel4_5_interrupt, Haltproc
+ .long PendSV_Handler
+ .long SysTick_Handler
+ .long WWDG_Handler
+ .long PVD_Handler
+ .long TAMPER_Handler
+ .long RTC_Handler
+ .long FLASH_Handler
+ .long RCC_Handler
+ .long EXTI0_Handler
+ .long EXTI1_Handler
+ .long EXTI2_Handler
+ .long EXTI3_Handler
+ .long EXTI4_Handler
+ .long DMA1_Channel1_Handler
+ .long DMA1_Channel2_Handler
+ .long DMA1_Channel3_Handler
+ .long DMA1_Channel4_Handler
+ .long DMA1_Channel5_Handler
+ .long DMA1_Channel6_Handler
+ .long DMA1_Channel7_Handler
+ .long ADC1_2_Handler
+ .long USB_HP_CAN1_TX_Handler
+ .long USB_LP_CAN1_RX0_Handler
+ .long CAN1_RX1_Handler
+ .long CAN1_SCE_Handler
+ .long EXTI9_5_Handler
+ .long TIM1_BRK_Handler
+ .long TIM1_UP_Handler
+ .long TIM1_TRG_COM_Handler
+ .long TIM1_CC_Handler
+ .long TIM2_Handler
+ .long TIM3_Handler
+ .long TIM4_Handler
+ .long I2C1_EV_Handler
+ .long I2C1_ER_Handler
+ .long I2C2_EV_Handler
+ .long I2C2_ER_Handler
+ .long SPI1_Handler
+ .long SPI2_Handler
+ .long USART1_Handler
+ .long USART2_Handler
+ .long USART3_Handler
+ .long EXTI15_10_Handler
+ .long RTC_Alarm_Handler
+ .long USBWakeUp_Handler
+ .long TIM8_BRK_Handler
+ .long TIM8_UP_Handler
+ .long TIM8_TRG_COM_Handler
+ .long TIM8_CC_Handler
+ .long ADC3_Handler
+ .long FSMC_Handler
+ .long SDIO_Handler
+ .long TIM5_Handler
+ .long SPI3_Handler
+ .long UART4_Handler
+ .long UART5_Handler
+ .long TIM6_Handler
+ .long TIM7_Handler
+ .long DMA2_Channel1_Handler
+ .long DMA2_Channel2_Handler
+ .long DMA2_Channel3_Handler
+ .long DMA2_Channel4_5_Handler
+
+ .weak NonMaskableInt_Handler
+ .weak HardFault_Handler
+ .weak MemoryManagement_Handler
+ .weak BusFault_Handler
+ .weak UsageFault_Handler
+ .weak SVCall_Handler
+ .weak DebugMonitor_Handler
+ .weak PendSV_Handler
+ .weak SysTick_Handler
+ .weak WWDG_Handler
+ .weak PVD_Handler
+ .weak TAMPER_Handler
+ .weak RTC_Handler
+ .weak FLASH_Handler
+ .weak RCC_Handler
+ .weak EXTI0_Handler
+ .weak EXTI1_Handler
+ .weak EXTI2_Handler
+ .weak EXTI3_Handler
+ .weak EXTI4_Handler
+ .weak DMA1_Channel1_Handler
+ .weak DMA1_Channel2_Handler
+ .weak DMA1_Channel3_Handler
+ .weak DMA1_Channel4_Handler
+ .weak DMA1_Channel5_Handler
+ .weak DMA1_Channel6_Handler
+ .weak DMA1_Channel7_Handler
+ .weak ADC1_2_Handler
+ .weak USB_HP_CAN1_TX_Handler
+ .weak USB_LP_CAN1_RX0_Handler
+ .weak CAN1_RX1_Handler
+ .weak CAN1_SCE_Handler
+ .weak EXTI9_5_Handler
+ .weak TIM1_BRK_Handler
+ .weak TIM1_UP_Handler
+ .weak TIM1_TRG_COM_Handler
+ .weak TIM1_CC_Handler
+ .weak TIM2_Handler
+ .weak TIM3_Handler
+ .weak TIM4_Handler
+ .weak I2C1_EV_Handler
+ .weak I2C1_ER_Handler
+ .weak I2C2_EV_Handler
+ .weak I2C2_ER_Handler
+ .weak SPI1_Handler
+ .weak SPI2_Handler
+ .weak USART1_Handler
+ .weak USART2_Handler
+ .weak USART3_Handler
+ .weak EXTI15_10_Handler
+ .weak RTC_Alarm_Handler
+ .weak USBWakeUp_Handler
+ .weak TIM8_BRK_Handler
+ .weak TIM8_UP_Handler
+ .weak TIM8_TRG_COM_Handler
+ .weak TIM8_CC_Handler
+ .weak ADC3_Handler
+ .weak FSMC_Handler
+ .weak SDIO_Handler
+ .weak TIM5_Handler
+ .weak SPI3_Handler
+ .weak UART4_Handler
+ .weak UART5_Handler
+ .weak TIM6_Handler
+ .weak TIM7_Handler
+ .weak DMA2_Channel1_Handler
+ .weak DMA2_Channel2_Handler
+ .weak DMA2_Channel3_Handler
+ .weak DMA2_Channel4_5_Handler
+
+ .set NonMaskableInt_Handler, Haltproc
+ .set HardFault_Handler, Haltproc
+ .set MemoryManagement_Handler, Haltproc
+ .set BusFault_Handler, Haltproc
+ .set UsageFault_Handler, Haltproc
+ .set SVCall_Handler, Haltproc
+ .set DebugMonitor_Handler, Haltproc
+ .set PendSV_Handler, Haltproc
+ .set SysTick_Handler, Haltproc
+ .set WWDG_Handler, Haltproc
+ .set PVD_Handler, Haltproc
+ .set TAMPER_Handler, Haltproc
+ .set RTC_Handler, Haltproc
+ .set FLASH_Handler, Haltproc
+ .set RCC_Handler, Haltproc
+ .set EXTI0_Handler, Haltproc
+ .set EXTI1_Handler, Haltproc
+ .set EXTI2_Handler, Haltproc
+ .set EXTI3_Handler, Haltproc
+ .set EXTI4_Handler, Haltproc
+ .set DMA1_Channel1_Handler, Haltproc
+ .set DMA1_Channel2_Handler, Haltproc
+ .set DMA1_Channel3_Handler, Haltproc
+ .set DMA1_Channel4_Handler, Haltproc
+ .set DMA1_Channel5_Handler, Haltproc
+ .set DMA1_Channel6_Handler, Haltproc
+ .set DMA1_Channel7_Handler, Haltproc
+ .set ADC1_2_Handler, Haltproc
+ .set USB_HP_CAN1_TX_Handler, Haltproc
+ .set USB_LP_CAN1_RX0_Handler, Haltproc
+ .set CAN1_RX1_Handler, Haltproc
+ .set CAN1_SCE_Handler, Haltproc
+ .set EXTI9_5_Handler, Haltproc
+ .set TIM1_BRK_Handler, Haltproc
+ .set TIM1_UP_Handler, Haltproc
+ .set TIM1_TRG_COM_Handler, Haltproc
+ .set TIM1_CC_Handler, Haltproc
+ .set TIM2_Handler, Haltproc
+ .set TIM3_Handler, Haltproc
+ .set TIM4_Handler, Haltproc
+ .set I2C1_EV_Handler, Haltproc
+ .set I2C1_ER_Handler, Haltproc
+ .set I2C2_EV_Handler, Haltproc
+ .set I2C2_ER_Handler, Haltproc
+ .set SPI1_Handler, Haltproc
+ .set SPI2_Handler, Haltproc
+ .set USART1_Handler, Haltproc
+ .set USART2_Handler, Haltproc
+ .set USART3_Handler, Haltproc
+ .set EXTI15_10_Handler, Haltproc
+ .set RTC_Alarm_Handler, Haltproc
+ .set USBWakeUp_Handler, Haltproc
+ .set TIM8_BRK_Handler, Haltproc
+ .set TIM8_UP_Handler, Haltproc
+ .set TIM8_TRG_COM_Handler, Haltproc
+ .set TIM8_CC_Handler, Haltproc
+ .set ADC3_Handler, Haltproc
+ .set FSMC_Handler, Haltproc
+ .set SDIO_Handler, Haltproc
+ .set TIM5_Handler, Haltproc
+ .set SPI3_Handler, Haltproc
+ .set UART4_Handler, Haltproc
+ .set UART5_Handler, Haltproc
+ .set TIM6_Handler, Haltproc
+ .set TIM7_Handler, Haltproc
+ .set DMA2_Channel1_Handler, Haltproc
+ .set DMA2_Channel2_Handler, Haltproc
+ .set DMA2_Channel3_Handler, Haltproc
+ .set DMA2_Channel4_5_Handler, Haltproc
.text
end;
diff --git a/rtl/freertos/arm/stm32f401xe.pp b/rtl/freertos/arm/stm32f401xe.pp
index a55da0b5ae..6064252bbf 100644
--- a/rtl/freertos/arm/stm32f401xe.pp
+++ b/rtl/freertos/arm/stm32f401xe.pp
@@ -1,4 +1,28 @@
unit stm32f401xe;
+(**
+ ******************************************************************************
+ * @file stm32f401xe.h
+ * @author MCD Application Team
+ * @brief CMSIS STM32F401xE Device Peripheral Access Layer Header File.
+ *
+ * This file contains:
+ * - Data structures and the address mapping for all peripherals
+ * - peripherals registers declarations and bits definition
+ * - Macros to access peripheral’s registers hardware
+ *
+ ******************************************************************************
+ * @attention
+ *
+ * © Copyright (c) 2017 STMicroelectronics.
+ * All rights reserved.
+ *
+ * This software component is licensed by ST under BSD 3-Clause license,
+ * the "License"; You may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ * opensource.org/licenses/BSD-3-Clause
+ *
+ ******************************************************************************
+ *)
interface
{$PACKRECORDS C}
{$GOTO ON}
@@ -581,70 +605,70 @@ var
implementation
-procedure NonMaskableInt_interrupt; external name 'NonMaskableInt_interrupt';
-procedure MemoryManagement_interrupt; external name 'MemoryManagement_interrupt';
-procedure BusFault_interrupt; external name 'BusFault_interrupt';
-procedure UsageFault_interrupt; external name 'UsageFault_interrupt';
-procedure SVCall_interrupt; external name 'SVCall_interrupt';
-procedure DebugMonitor_interrupt; external name 'DebugMonitor_interrupt';
-procedure PendSV_interrupt; external name 'PendSV_interrupt';
-procedure SysTick_interrupt; external name 'SysTick_interrupt';
-procedure WWDG_interrupt; external name 'WWDG_interrupt';
-procedure PVD_interrupt; external name 'PVD_interrupt';
-procedure TAMP_STAMP_interrupt; external name 'TAMP_STAMP_interrupt';
-procedure RTC_WKUP_interrupt; external name 'RTC_WKUP_interrupt';
-procedure FLASH_interrupt; external name 'FLASH_interrupt';
-procedure RCC_interrupt; external name 'RCC_interrupt';
-procedure EXTI0_interrupt; external name 'EXTI0_interrupt';
-procedure EXTI1_interrupt; external name 'EXTI1_interrupt';
-procedure EXTI2_interrupt; external name 'EXTI2_interrupt';
-procedure EXTI3_interrupt; external name 'EXTI3_interrupt';
-procedure EXTI4_interrupt; external name 'EXTI4_interrupt';
-procedure DMA1_Stream0_interrupt; external name 'DMA1_Stream0_interrupt';
-procedure DMA1_Stream1_interrupt; external name 'DMA1_Stream1_interrupt';
-procedure DMA1_Stream2_interrupt; external name 'DMA1_Stream2_interrupt';
-procedure DMA1_Stream3_interrupt; external name 'DMA1_Stream3_interrupt';
-procedure DMA1_Stream4_interrupt; external name 'DMA1_Stream4_interrupt';
-procedure DMA1_Stream5_interrupt; external name 'DMA1_Stream5_interrupt';
-procedure DMA1_Stream6_interrupt; external name 'DMA1_Stream6_interrupt';
-procedure ADC_interrupt; external name 'ADC_interrupt';
-procedure EXTI9_5_interrupt; external name 'EXTI9_5_interrupt';
-procedure TIM1_BRK_TIM9_interrupt; external name 'TIM1_BRK_TIM9_interrupt';
-procedure TIM1_UP_TIM10_interrupt; external name 'TIM1_UP_TIM10_interrupt';
-procedure TIM1_TRG_COM_TIM11_interrupt; external name 'TIM1_TRG_COM_TIM11_interrupt';
-procedure TIM1_CC_interrupt; external name 'TIM1_CC_interrupt';
-procedure TIM2_interrupt; external name 'TIM2_interrupt';
-procedure TIM3_interrupt; external name 'TIM3_interrupt';
-procedure TIM4_interrupt; external name 'TIM4_interrupt';
-procedure I2C1_EV_interrupt; external name 'I2C1_EV_interrupt';
-procedure I2C1_ER_interrupt; external name 'I2C1_ER_interrupt';
-procedure I2C2_EV_interrupt; external name 'I2C2_EV_interrupt';
-procedure I2C2_ER_interrupt; external name 'I2C2_ER_interrupt';
-procedure SPI1_interrupt; external name 'SPI1_interrupt';
-procedure SPI2_interrupt; external name 'SPI2_interrupt';
-procedure USART1_interrupt; external name 'USART1_interrupt';
-procedure USART2_interrupt; external name 'USART2_interrupt';
-procedure EXTI15_10_interrupt; external name 'EXTI15_10_interrupt';
-procedure RTC_Alarm_interrupt; external name 'RTC_Alarm_interrupt';
-procedure OTG_FS_WKUP_interrupt; external name 'OTG_FS_WKUP_interrupt';
-procedure DMA1_Stream7_interrupt; external name 'DMA1_Stream7_interrupt';
-procedure SDIO_interrupt; external name 'SDIO_interrupt';
-procedure TIM5_interrupt; external name 'TIM5_interrupt';
-procedure SPI3_interrupt; external name 'SPI3_interrupt';
-procedure DMA2_Stream0_interrupt; external name 'DMA2_Stream0_interrupt';
-procedure DMA2_Stream1_interrupt; external name 'DMA2_Stream1_interrupt';
-procedure DMA2_Stream2_interrupt; external name 'DMA2_Stream2_interrupt';
-procedure DMA2_Stream3_interrupt; external name 'DMA2_Stream3_interrupt';
-procedure DMA2_Stream4_interrupt; external name 'DMA2_Stream4_interrupt';
-procedure OTG_FS_interrupt; external name 'OTG_FS_interrupt';
-procedure DMA2_Stream5_interrupt; external name 'DMA2_Stream5_interrupt';
-procedure DMA2_Stream6_interrupt; external name 'DMA2_Stream6_interrupt';
-procedure DMA2_Stream7_interrupt; external name 'DMA2_Stream7_interrupt';
-procedure USART6_interrupt; external name 'USART6_interrupt';
-procedure I2C3_EV_interrupt; external name 'I2C3_EV_interrupt';
-procedure I2C3_ER_interrupt; external name 'I2C3_ER_interrupt';
-procedure FPU_interrupt; external name 'FPU_interrupt';
-procedure SPI4_interrupt; external name 'SPI4_interrupt';
+procedure NonMaskableInt_Handler; external name 'NonMaskableInt_Handler';
+procedure MemoryManagement_Handler; external name 'MemoryManagement_Handler';
+procedure BusFault_Handler; external name 'BusFault_Handler';
+procedure UsageFault_Handler; external name 'UsageFault_Handler';
+procedure SVCall_Handler; external name 'SVCall_Handler';
+procedure DebugMonitor_Handler; external name 'DebugMonitor_Handler';
+procedure PendSV_Handler; external name 'PendSV_Handler';
+procedure SysTick_Handler; external name 'SysTick_Handler';
+procedure WWDG_Handler; external name 'WWDG_Handler';
+procedure PVD_Handler; external name 'PVD_Handler';
+procedure TAMP_STAMP_Handler; external name 'TAMP_STAMP_Handler';
+procedure RTC_WKUP_Handler; external name 'RTC_WKUP_Handler';
+procedure FLASH_Handler; external name 'FLASH_Handler';
+procedure RCC_Handler; external name 'RCC_Handler';
+procedure EXTI0_Handler; external name 'EXTI0_Handler';
+procedure EXTI1_Handler; external name 'EXTI1_Handler';
+procedure EXTI2_Handler; external name 'EXTI2_Handler';
+procedure EXTI3_Handler; external name 'EXTI3_Handler';
+procedure EXTI4_Handler; external name 'EXTI4_Handler';
+procedure DMA1_Stream0_Handler; external name 'DMA1_Stream0_Handler';
+procedure DMA1_Stream1_Handler; external name 'DMA1_Stream1_Handler';
+procedure DMA1_Stream2_Handler; external name 'DMA1_Stream2_Handler';
+procedure DMA1_Stream3_Handler; external name 'DMA1_Stream3_Handler';
+procedure DMA1_Stream4_Handler; external name 'DMA1_Stream4_Handler';
+procedure DMA1_Stream5_Handler; external name 'DMA1_Stream5_Handler';
+procedure DMA1_Stream6_Handler; external name 'DMA1_Stream6_Handler';
+procedure ADC_Handler; external name 'ADC_Handler';
+procedure EXTI9_5_Handler; external name 'EXTI9_5_Handler';
+procedure TIM1_BRK_TIM9_Handler; external name 'TIM1_BRK_TIM9_Handler';
+procedure TIM1_UP_TIM10_Handler; external name 'TIM1_UP_TIM10_Handler';
+procedure TIM1_TRG_COM_TIM11_Handler; external name 'TIM1_TRG_COM_TIM11_Handler';
+procedure TIM1_CC_Handler; external name 'TIM1_CC_Handler';
+procedure TIM2_Handler; external name 'TIM2_Handler';
+procedure TIM3_Handler; external name 'TIM3_Handler';
+procedure TIM4_Handler; external name 'TIM4_Handler';
+procedure I2C1_EV_Handler; external name 'I2C1_EV_Handler';
+procedure I2C1_ER_Handler; external name 'I2C1_ER_Handler';
+procedure I2C2_EV_Handler; external name 'I2C2_EV_Handler';
+procedure I2C2_ER_Handler; external name 'I2C2_ER_Handler';
+procedure SPI1_Handler; external name 'SPI1_Handler';
+procedure SPI2_Handler; external name 'SPI2_Handler';
+procedure USART1_Handler; external name 'USART1_Handler';
+procedure USART2_Handler; external name 'USART2_Handler';
+procedure EXTI15_10_Handler; external name 'EXTI15_10_Handler';
+procedure RTC_Alarm_Handler; external name 'RTC_Alarm_Handler';
+procedure OTG_FS_WKUP_Handler; external name 'OTG_FS_WKUP_Handler';
+procedure DMA1_Stream7_Handler; external name 'DMA1_Stream7_Handler';
+procedure SDIO_Handler; external name 'SDIO_Handler';
+procedure TIM5_Handler; external name 'TIM5_Handler';
+procedure SPI3_Handler; external name 'SPI3_Handler';
+procedure DMA2_Stream0_Handler; external name 'DMA2_Stream0_Handler';
+procedure DMA2_Stream1_Handler; external name 'DMA2_Stream1_Handler';
+procedure DMA2_Stream2_Handler; external name 'DMA2_Stream2_Handler';
+procedure DMA2_Stream3_Handler; external name 'DMA2_Stream3_Handler';
+procedure DMA2_Stream4_Handler; external name 'DMA2_Stream4_Handler';
+procedure OTG_FS_Handler; external name 'OTG_FS_Handler';
+procedure DMA2_Stream5_Handler; external name 'DMA2_Stream5_Handler';
+procedure DMA2_Stream6_Handler; external name 'DMA2_Stream6_Handler';
+procedure DMA2_Stream7_Handler; external name 'DMA2_Stream7_Handler';
+procedure USART6_Handler; external name 'USART6_Handler';
+procedure I2C3_EV_Handler; external name 'I2C3_EV_Handler';
+procedure I2C3_ER_Handler; external name 'I2C3_ER_Handler';
+procedure FPU_Handler; external name 'FPU_Handler';
+procedure SPI4_Handler; external name 'SPI4_Handler';
{$i cortexm4f_start.inc}
@@ -656,235 +680,235 @@ asm
interrupt_vectors:
.long _stack_top
.long Startup
- .long NonMaskableInt_interrupt
+ .long NonMaskableInt_Handler
.long 0
- .long MemoryManagement_interrupt
- .long BusFault_interrupt
- .long UsageFault_interrupt
+ .long MemoryManagement_Handler
+ .long BusFault_Handler
+ .long UsageFault_Handler
.long 0
.long 0
.long 0
.long 0
- .long SVCall_interrupt
- .long DebugMonitor_interrupt
+ .long SVCall_Handler
+ .long DebugMonitor_Handler
.long 0
- .long PendSV_interrupt
- .long SysTick_interrupt
- .long WWDG_interrupt
- .long PVD_interrupt
- .long TAMP_STAMP_interrupt
- .long RTC_WKUP_interrupt
- .long FLASH_interrupt
- .long RCC_interrupt
- .long EXTI0_interrupt
- .long EXTI1_interrupt
- .long EXTI2_interrupt
- .long EXTI3_interrupt
- .long EXTI4_interrupt
- .long DMA1_Stream0_interrupt
- .long DMA1_Stream1_interrupt
- .long DMA1_Stream2_interrupt
- .long DMA1_Stream3_interrupt
- .long DMA1_Stream4_interrupt
- .long DMA1_Stream5_interrupt
- .long DMA1_Stream6_interrupt
- .long ADC_interrupt
+ .long PendSV_Handler
+ .long SysTick_Handler
+ .long WWDG_Handler
+ .long PVD_Handler
+ .long TAMP_STAMP_Handler
+ .long RTC_WKUP_Handler
+ .long FLASH_Handler
+ .long RCC_Handler
+ .long EXTI0_Handler
+ .long EXTI1_Handler
+ .long EXTI2_Handler
+ .long EXTI3_Handler
+ .long EXTI4_Handler
+ .long DMA1_Stream0_Handler
+ .long DMA1_Stream1_Handler
+ .long DMA1_Stream2_Handler
+ .long DMA1_Stream3_Handler
+ .long DMA1_Stream4_Handler
+ .long DMA1_Stream5_Handler
+ .long DMA1_Stream6_Handler
+ .long ADC_Handler
.long 0
.long 0
.long 0
.long 0
- .long EXTI9_5_interrupt
- .long TIM1_BRK_TIM9_interrupt
- .long TIM1_UP_TIM10_interrupt
- .long TIM1_TRG_COM_TIM11_interrupt
- .long TIM1_CC_interrupt
- .long TIM2_interrupt
- .long TIM3_interrupt
- .long TIM4_interrupt
- .long I2C1_EV_interrupt
- .long I2C1_ER_interrupt
- .long I2C2_EV_interrupt
- .long I2C2_ER_interrupt
- .long SPI1_interrupt
- .long SPI2_interrupt
- .long USART1_interrupt
- .long USART2_interrupt
- .long 0
- .long EXTI15_10_interrupt
- .long RTC_Alarm_interrupt
- .long OTG_FS_WKUP_interrupt
- .long 0
- .long 0
- .long 0
- .long 0
- .long DMA1_Stream7_interrupt
- .long 0
- .long SDIO_interrupt
- .long TIM5_interrupt
- .long SPI3_interrupt
- .long 0
- .long 0
- .long 0
- .long 0
- .long DMA2_Stream0_interrupt
- .long DMA2_Stream1_interrupt
- .long DMA2_Stream2_interrupt
- .long DMA2_Stream3_interrupt
- .long DMA2_Stream4_interrupt
- .long 0
- .long 0
- .long 0
- .long 0
- .long 0
- .long 0
- .long OTG_FS_interrupt
- .long DMA2_Stream5_interrupt
- .long DMA2_Stream6_interrupt
- .long DMA2_Stream7_interrupt
- .long USART6_interrupt
- .long I2C3_EV_interrupt
- .long I2C3_ER_interrupt
- .long 0
- .long 0
- .long 0
- .long 0
- .long 0
- .long 0
- .long 0
- .long FPU_interrupt
- .long 0
- .long 0
- .long SPI4_interrupt
-
- .weak NonMaskableInt_interrupt
- .weak MemoryManagement_interrupt
- .weak BusFault_interrupt
- .weak UsageFault_interrupt
- .weak SVCall_interrupt
- .weak DebugMonitor_interrupt
- .weak PendSV_interrupt
- .weak SysTick_interrupt
- .weak WWDG_interrupt
- .weak PVD_interrupt
- .weak TAMP_STAMP_interrupt
- .weak RTC_WKUP_interrupt
- .weak FLASH_interrupt
- .weak RCC_interrupt
- .weak EXTI0_interrupt
- .weak EXTI1_interrupt
- .weak EXTI2_interrupt
- .weak EXTI3_interrupt
- .weak EXTI4_interrupt
- .weak DMA1_Stream0_interrupt
- .weak DMA1_Stream1_interrupt
- .weak DMA1_Stream2_interrupt
- .weak DMA1_Stream3_interrupt
- .weak DMA1_Stream4_interrupt
- .weak DMA1_Stream5_interrupt
- .weak DMA1_Stream6_interrupt
- .weak ADC_interrupt
- .weak EXTI9_5_interrupt
- .weak TIM1_BRK_TIM9_interrupt
- .weak TIM1_UP_TIM10_interrupt
- .weak TIM1_TRG_COM_TIM11_interrupt
- .weak TIM1_CC_interrupt
- .weak TIM2_interrupt
- .weak TIM3_interrupt
- .weak TIM4_interrupt
- .weak I2C1_EV_interrupt
- .weak I2C1_ER_interrupt
- .weak I2C2_EV_interrupt
- .weak I2C2_ER_interrupt
- .weak SPI1_interrupt
- .weak SPI2_interrupt
- .weak USART1_interrupt
- .weak USART2_interrupt
- .weak EXTI15_10_interrupt
- .weak RTC_Alarm_interrupt
- .weak OTG_FS_WKUP_interrupt
- .weak DMA1_Stream7_interrupt
- .weak SDIO_interrupt
- .weak TIM5_interrupt
- .weak SPI3_interrupt
- .weak DMA2_Stream0_interrupt
- .weak DMA2_Stream1_interrupt
- .weak DMA2_Stream2_interrupt
- .weak DMA2_Stream3_interrupt
- .weak DMA2_Stream4_interrupt
- .weak OTG_FS_interrupt
- .weak DMA2_Stream5_interrupt
- .weak DMA2_Stream6_interrupt
- .weak DMA2_Stream7_interrupt
- .weak USART6_interrupt
- .weak I2C3_EV_interrupt
- .weak I2C3_ER_interrupt
- .weak FPU_interrupt
- .weak SPI4_interrupt
-
- .set NonMaskableInt_interrupt, Haltproc
- .set MemoryManagement_interrupt, Haltproc
- .set BusFault_interrupt, Haltproc
- .set UsageFault_interrupt, Haltproc
- .set SVCall_interrupt, Haltproc
- .set DebugMonitor_interrupt, Haltproc
- .set PendSV_interrupt, Haltproc
- .set SysTick_interrupt, Haltproc
- .set WWDG_interrupt, Haltproc
- .set PVD_interrupt, Haltproc
- .set TAMP_STAMP_interrupt, Haltproc
- .set RTC_WKUP_interrupt, Haltproc
- .set FLASH_interrupt, Haltproc
- .set RCC_interrupt, Haltproc
- .set EXTI0_interrupt, Haltproc
- .set EXTI1_interrupt, Haltproc
- .set EXTI2_interrupt, Haltproc
- .set EXTI3_interrupt, Haltproc
- .set EXTI4_interrupt, Haltproc
- .set DMA1_Stream0_interrupt, Haltproc
- .set DMA1_Stream1_interrupt, Haltproc
- .set DMA1_Stream2_interrupt, Haltproc
- .set DMA1_Stream3_interrupt, Haltproc
- .set DMA1_Stream4_interrupt, Haltproc
- .set DMA1_Stream5_interrupt, Haltproc
- .set DMA1_Stream6_interrupt, Haltproc
- .set ADC_interrupt, Haltproc
- .set EXTI9_5_interrupt, Haltproc
- .set TIM1_BRK_TIM9_interrupt, Haltproc
- .set TIM1_UP_TIM10_interrupt, Haltproc
- .set TIM1_TRG_COM_TIM11_interrupt, Haltproc
- .set TIM1_CC_interrupt, Haltproc
- .set TIM2_interrupt, Haltproc
- .set TIM3_interrupt, Haltproc
- .set TIM4_interrupt, Haltproc
- .set I2C1_EV_interrupt, Haltproc
- .set I2C1_ER_interrupt, Haltproc
- .set I2C2_EV_interrupt, Haltproc
- .set I2C2_ER_interrupt, Haltproc
- .set SPI1_interrupt, Haltproc
- .set SPI2_interrupt, Haltproc
- .set USART1_interrupt, Haltproc
- .set USART2_interrupt, Haltproc
- .set EXTI15_10_interrupt, Haltproc
- .set RTC_Alarm_interrupt, Haltproc
- .set OTG_FS_WKUP_interrupt, Haltproc
- .set DMA1_Stream7_interrupt, Haltproc
- .set SDIO_interrupt, Haltproc
- .set TIM5_interrupt, Haltproc
- .set SPI3_interrupt, Haltproc
- .set DMA2_Stream0_interrupt, Haltproc
- .set DMA2_Stream1_interrupt, Haltproc
- .set DMA2_Stream2_interrupt, Haltproc
- .set DMA2_Stream3_interrupt, Haltproc
- .set DMA2_Stream4_interrupt, Haltproc
- .set OTG_FS_interrupt, Haltproc
- .set DMA2_Stream5_interrupt, Haltproc
- .set DMA2_Stream6_interrupt, Haltproc
- .set DMA2_Stream7_interrupt, Haltproc
- .set USART6_interrupt, Haltproc
- .set I2C3_EV_interrupt, Haltproc
- .set I2C3_ER_interrupt, Haltproc
- .set FPU_interrupt, Haltproc
- .set SPI4_interrupt, Haltproc
+ .long EXTI9_5_Handler
+ .long TIM1_BRK_TIM9_Handler
+ .long TIM1_UP_TIM10_Handler
+ .long TIM1_TRG_COM_TIM11_Handler
+ .long TIM1_CC_Handler
+ .long TIM2_Handler
+ .long TIM3_Handler
+ .long TIM4_Handler
+ .long I2C1_EV_Handler
+ .long I2C1_ER_Handler
+ .long I2C2_EV_Handler
+ .long I2C2_ER_Handler
+ .long SPI1_Handler
+ .long SPI2_Handler
+ .long USART1_Handler
+ .long USART2_Handler
+ .long 0
+ .long EXTI15_10_Handler
+ .long RTC_Alarm_Handler
+ .long OTG_FS_WKUP_Handler
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long DMA1_Stream7_Handler
+ .long 0
+ .long SDIO_Handler
+ .long TIM5_Handler
+ .long SPI3_Handler
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long DMA2_Stream0_Handler
+ .long DMA2_Stream1_Handler
+ .long DMA2_Stream2_Handler
+ .long DMA2_Stream3_Handler
+ .long DMA2_Stream4_Handler
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long OTG_FS_Handler
+ .long DMA2_Stream5_Handler
+ .long DMA2_Stream6_Handler
+ .long DMA2_Stream7_Handler
+ .long USART6_Handler
+ .long I2C3_EV_Handler
+ .long I2C3_ER_Handler
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long 0
+ .long FPU_Handler
+ .long 0
+ .long 0
+ .long SPI4_Handler
+
+ .weak NonMaskableInt_Handler
+ .weak MemoryManagement_Handler
+ .weak BusFault_Handler
+ .weak UsageFault_Handler
+ .weak SVCall_Handler
+ .weak DebugMonitor_Handler
+ .weak PendSV_Handler
+ .weak SysTick_Handler
+ .weak WWDG_Handler
+ .weak PVD_Handler
+ .weak TAMP_STAMP_Handler
+ .weak RTC_WKUP_Handler
+ .weak FLASH_Handler
+ .weak RCC_Handler
+ .weak EXTI0_Handler
+ .weak EXTI1_Handler
+ .weak EXTI2_Handler
+ .weak EXTI3_Handler
+ .weak EXTI4_Handler
+ .weak DMA1_Stream0_Handler
+ .weak DMA1_Stream1_Handler
+ .weak DMA1_Stream2_Handler
+ .weak DMA1_Stream3_Handler
+ .weak DMA1_Stream4_Handler
+ .weak DMA1_Stream5_Handler
+ .weak DMA1_Stream6_Handler
+ .weak ADC_Handler
+ .weak EXTI9_5_Handler
+ .weak TIM1_BRK_TIM9_Handler
+ .weak TIM1_UP_TIM10_Handler
+ .weak TIM1_TRG_COM_TIM11_Handler
+ .weak TIM1_CC_Handler
+ .weak TIM2_Handler
+ .weak TIM3_Handler
+ .weak TIM4_Handler
+ .weak I2C1_EV_Handler
+ .weak I2C1_ER_Handler
+ .weak I2C2_EV_Handler
+ .weak I2C2_ER_Handler
+ .weak SPI1_Handler
+ .weak SPI2_Handler
+ .weak USART1_Handler
+ .weak USART2_Handler
+ .weak EXTI15_10_Handler
+ .weak RTC_Alarm_Handler
+ .weak OTG_FS_WKUP_Handler
+ .weak DMA1_Stream7_Handler
+ .weak SDIO_Handler
+ .weak TIM5_Handler
+ .weak SPI3_Handler
+ .weak DMA2_Stream0_Handler
+ .weak DMA2_Stream1_Handler
+ .weak DMA2_Stream2_Handler
+ .weak DMA2_Stream3_Handler
+ .weak DMA2_Stream4_Handler
+ .weak OTG_FS_Handler
+ .weak DMA2_Stream5_Handler
+ .weak DMA2_Stream6_Handler
+ .weak DMA2_Stream7_Handler
+ .weak USART6_Handler
+ .weak I2C3_EV_Handler
+ .weak I2C3_ER_Handler
+ .weak FPU_Handler
+ .weak SPI4_Handler
+
+ .set NonMaskableInt_Handler, Haltproc
+ .set MemoryManagement_Handler, Haltproc
+ .set BusFault_Handler, Haltproc
+ .set UsageFault_Handler, Haltproc
+ .set SVCall_Handler, Haltproc
+ .set DebugMonitor_Handler, Haltproc
+ .set PendSV_Handler, Haltproc
+ .set SysTick_Handler, Haltproc
+ .set WWDG_Handler, Haltproc
+ .set PVD_Handler, Haltproc
+ .set TAMP_STAMP_Handler, Haltproc
+ .set RTC_WKUP_Handler, Haltproc
+ .set FLASH_Handler, Haltproc
+ .set RCC_Handler, Haltproc
+ .set EXTI0_Handler, Haltproc
+ .set EXTI1_Handler, Haltproc
+ .set EXTI2_Handler, Haltproc
+ .set EXTI3_Handler, Haltproc
+ .set EXTI4_Handler, Haltproc
+ .set DMA1_Stream0_Handler, Haltproc
+ .set DMA1_Stream1_Handler, Haltproc
+ .set DMA1_Stream2_Handler, Haltproc
+ .set DMA1_Stream3_Handler, Haltproc
+ .set DMA1_Stream4_Handler, Haltproc
+ .set DMA1_Stream5_Handler, Haltproc
+ .set DMA1_Stream6_Handler, Haltproc
+ .set ADC_Handler, Haltproc
+ .set EXTI9_5_Handler, Haltproc
+ .set TIM1_BRK_TIM9_Handler, Haltproc
+ .set TIM1_UP_TIM10_Handler, Haltproc
+ .set TIM1_TRG_COM_TIM11_Handler, Haltproc
+ .set TIM1_CC_Handler, Haltproc
+ .set TIM2_Handler, Haltproc
+ .set TIM3_Handler, Haltproc
+ .set TIM4_Handler, Haltproc
+ .set I2C1_EV_Handler, Haltproc
+ .set I2C1_ER_Handler, Haltproc
+ .set I2C2_EV_Handler, Haltproc
+ .set I2C2_ER_Handler, Haltproc
+ .set SPI1_Handler, Haltproc
+ .set SPI2_Handler, Haltproc
+ .set USART1_Handler, Haltproc
+ .set USART2_Handler, Haltproc
+ .set EXTI15_10_Handler, Haltproc
+ .set RTC_Alarm_Handler, Haltproc
+ .set OTG_FS_WKUP_Handler, Haltproc
+ .set DMA1_Stream7_Handler, Haltproc
+ .set SDIO_Handler, Haltproc
+ .set TIM5_Handler, Haltproc
+ .set SPI3_Handler, Haltproc
+ .set DMA2_Stream0_Handler, Haltproc
+ .set DMA2_Stream1_Handler, Haltproc
+ .set DMA2_Stream2_Handler, Haltproc
+ .set DMA2_Stream3_Handler, Haltproc
+ .set DMA2_Stream4_Handler, Haltproc
+ .set OTG_FS_Handler, Haltproc
+ .set DMA2_Stream5_Handler, Haltproc
+ .set DMA2_Stream6_Handler, Haltproc
+ .set DMA2_Stream7_Handler, Haltproc
+ .set USART6_Handler, Haltproc
+ .set I2C3_EV_Handler, Haltproc
+ .set I2C3_ER_Handler, Haltproc
+ .set FPU_Handler, Haltproc
+ .set SPI4_Handler, Haltproc
.text
end;
diff --git a/rtl/freertos/arm/stm32g071xx.pp b/rtl/freertos/arm/stm32g071xx.pp
index 68d3839b92..777213f488 100644
--- a/rtl/freertos/arm/stm32g071xx.pp
+++ b/rtl/freertos/arm/stm32g071xx.pp
@@ -1,4 +1,30 @@
unit stm32g071xx;
+(**
+ ******************************************************************************
+ * @file stm32g071xx.h
+ * @author MCD Application Team
+ * @brief CMSIS Cortex-M0+ Device Peripheral Access Layer Header File.
+ * This file contains all the peripheral register's definitions, bits
+ * definitions and memory mapping for stm32g071xx devices.
+ *
+ * This file contains:
+ * - Data structures and the address mapping for all peripherals
+ * - Peripheral's registers declarations and bits definition
+ * - Macros to access peripheral's registers hardware
+ *
+ ******************************************************************************
+ * @attention
+ *
+ * © Copyright (c) 2018 STMicroelectronics.
+ * All rights reserved.
+ *
+ * This software component is licensed by ST under BSD 3-Clause license,
+ * the "License"; You may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ * opensource.org/licenses/BSD-3-Clause
+ *
+ ******************************************************************************
+ *)
interface
{$PACKRECORDS C}
{$GOTO ON}
@@ -588,42 +614,42 @@ var
implementation
-procedure NonMaskableInt_interrupt; external name 'NonMaskableInt_interrupt';
-procedure HardFault_interrupt; external name 'HardFault_interrupt';
-procedure SVC_interrupt; external name 'SVC_interrupt';
-procedure PendSV_interrupt; external name 'PendSV_interrupt';
-procedure SysTick_interrupt; external name 'SysTick_interrupt';
-procedure WWDG_interrupt; external name 'WWDG_interrupt';
-procedure PVD_interrupt; external name 'PVD_interrupt';
-procedure RTC_TAMP_interrupt; external name 'RTC_TAMP_interrupt';
-procedure FLASH_interrupt; external name 'FLASH_interrupt';
-procedure RCC_interrupt; external name 'RCC_interrupt';
-procedure EXTI0_1_interrupt; external name 'EXTI0_1_interrupt';
-procedure EXTI2_3_interrupt; external name 'EXTI2_3_interrupt';
-procedure EXTI4_15_interrupt; external name 'EXTI4_15_interrupt';
-procedure UCPD1_2_interrupt; external name 'UCPD1_2_interrupt';
-procedure DMA1_Channel1_interrupt; external name 'DMA1_Channel1_interrupt';
-procedure DMA1_Channel2_3_interrupt; external name 'DMA1_Channel2_3_interrupt';
-procedure DMA1_Ch4_7_DMAMUX1_OVR_interrupt; external name 'DMA1_Ch4_7_DMAMUX1_OVR_interrupt';
-procedure ADC1_COMP_interrupt; external name 'ADC1_COMP_interrupt';
-procedure TIM1_BRK_UP_TRG_COM_interrupt; external name 'TIM1_BRK_UP_TRG_COM_interrupt';
-procedure TIM1_CC_interrupt; external name 'TIM1_CC_interrupt';
-procedure TIM2_interrupt; external name 'TIM2_interrupt';
-procedure TIM3_interrupt; external name 'TIM3_interrupt';
-procedure TIM6_DAC_LPTIM1_interrupt; external name 'TIM6_DAC_LPTIM1_interrupt';
-procedure TIM7_LPTIM2_interrupt; external name 'TIM7_LPTIM2_interrupt';
-procedure TIM14_interrupt; external name 'TIM14_interrupt';
-procedure TIM15_interrupt; external name 'TIM15_interrupt';
-procedure TIM16_interrupt; external name 'TIM16_interrupt';
-procedure TIM17_interrupt; external name 'TIM17_interrupt';
-procedure I2C1_interrupt; external name 'I2C1_interrupt';
-procedure I2C2_interrupt; external name 'I2C2_interrupt';
-procedure SPI1_interrupt; external name 'SPI1_interrupt';
-procedure SPI2_interrupt; external name 'SPI2_interrupt';
-procedure USART1_interrupt; external name 'USART1_interrupt';
-procedure USART2_interrupt; external name 'USART2_interrupt';
-procedure USART3_4_LPUART1_interrupt; external name 'USART3_4_LPUART1_interrupt';
-procedure CEC_interrupt; external name 'CEC_interrupt';
+procedure NonMaskableInt_Handler; external name 'NonMaskableInt_Handler';
+procedure HardFault_Handler; external name 'HardFault_Handler';
+procedure SVC_Handler; external name 'SVC_Handler';
+procedure PendSV_Handler; external name 'PendSV_Handler';
+procedure SysTick_Handler; external name 'SysTick_Handler';
+procedure WWDG_Handler; external name 'WWDG_Handler';
+procedure PVD_Handler; external name 'PVD_Handler';
+procedure RTC_TAMP_Handler; external name 'RTC_TAMP_Handler';
+procedure FLASH_Handler; external name 'FLASH_Handler';
+procedure RCC_Handler; external name 'RCC_Handler';
+procedure EXTI0_1_Handler; external name 'EXTI0_1_Handler';
+procedure EXTI2_3_Handler; external name 'EXTI2_3_Handler';
+procedure EXTI4_15_Handler; external name 'EXTI4_15_Handler';
+procedure UCPD1_2_Handler; external name 'UCPD1_2_Handler';
+procedure DMA1_Channel1_Handler; external name 'DMA1_Channel1_Handler';
+procedure DMA1_Channel2_3_Handler; external name 'DMA1_Channel2_3_Handler';
+procedure DMA1_Ch4_7_DMAMUX1_OVR_Handler; external name 'DMA1_Ch4_7_DMAMUX1_OVR_Handler';
+procedure ADC1_COMP_Handler; external name 'ADC1_COMP_Handler';
+procedure TIM1_BRK_UP_TRG_COM_Handler; external name 'TIM1_BRK_UP_TRG_COM_Handler';
+procedure TIM1_CC_Handler; external name 'TIM1_CC_Handler';
+procedure TIM2_Handler; external name 'TIM2_Handler';
+procedure TIM3_Handler; external name 'TIM3_Handler';
+procedure TIM6_DAC_LPTIM1_Handler; external name 'TIM6_DAC_LPTIM1_Handler';
+procedure TIM7_LPTIM2_Handler; external name 'TIM7_LPTIM2_Handler';
+procedure TIM14_Handler; external name 'TIM14_Handler';
+procedure TIM15_Handler; external name 'TIM15_Handler';
+procedure TIM16_Handler; external name 'TIM16_Handler';
+procedure TIM17_Handler; external name 'TIM17_Handler';
+procedure I2C1_Handler; external name 'I2C1_Handler';
+procedure I2C2_Handler; external name 'I2C2_Handler';
+procedure SPI1_Handler; external name 'SPI1_Handler';
+procedure SPI2_Handler; external name 'SPI2_Handler';
+procedure USART1_Handler; external name 'USART1_Handler';
+procedure USART2_Handler; external name 'USART2_Handler';
+procedure USART3_4_LPUART1_Handler; external name 'USART3_4_LPUART1_Handler';
+procedure CEC_Handler; external name 'CEC_Handler';
{$i cortexm0_start.inc}
@@ -635,8 +661,8 @@ asm
interrupt_vectors:
.long _stack_top
.long Startup
- .long NonMaskableInt_interrupt
- .long HardFault_interrupt
+ .long NonMaskableInt_Handler
+ .long HardFault_Handler
.long 0
.long 0
.long 0
@@ -644,116 +670,116 @@ asm
.long 0
.long 0
.long 0
- .long SVC_interrupt
+ .long SVC_Handler
.long 0
.long 0
- .long PendSV_interrupt
- .long SysTick_interrupt
- .long WWDG_interrupt
- .long PVD_interrupt
- .long RTC_TAMP_interrupt
- .long FLASH_interrupt
- .long RCC_interrupt
- .long EXTI0_1_interrupt
- .long EXTI2_3_interrupt
- .long EXTI4_15_interrupt
- .long UCPD1_2_interrupt
- .long DMA1_Channel1_interrupt
- .long DMA1_Channel2_3_interrupt
- .long DMA1_Ch4_7_DMAMUX1_OVR_interrupt
- .long ADC1_COMP_interrupt
- .long TIM1_BRK_UP_TRG_COM_interrupt
- .long TIM1_CC_interrupt
- .long TIM2_interrupt
- .long TIM3_interrupt
- .long TIM6_DAC_LPTIM1_interrupt
- .long TIM7_LPTIM2_interrupt
- .long TIM14_interrupt
- .long TIM15_interrupt
- .long TIM16_interrupt
- .long TIM17_interrupt
- .long I2C1_interrupt
- .long I2C2_interrupt
- .long SPI1_interrupt
- .long SPI2_interrupt
- .long USART1_interrupt
- .long USART2_interrupt
- .long USART3_4_LPUART1_interrupt
- .long CEC_interrupt
-
- .weak NonMaskableInt_interrupt
- .weak HardFault_interrupt
- .weak SVC_interrupt
- .weak PendSV_interrupt
- .weak SysTick_interrupt
- .weak WWDG_interrupt
- .weak PVD_interrupt
- .weak RTC_TAMP_interrupt
- .weak FLASH_interrupt
- .weak RCC_interrupt
- .weak EXTI0_1_interrupt
- .weak EXTI2_3_interrupt
- .weak EXTI4_15_interrupt
- .weak UCPD1_2_interrupt
- .weak DMA1_Channel1_interrupt
- .weak DMA1_Channel2_3_interrupt
- .weak DMA1_Ch4_7_DMAMUX1_OVR_interrupt
- .weak ADC1_COMP_interrupt
- .weak TIM1_BRK_UP_TRG_COM_interrupt
- .weak TIM1_CC_interrupt
- .weak TIM2_interrupt
- .weak TIM3_interrupt
- .weak TIM6_DAC_LPTIM1_interrupt
- .weak TIM7_LPTIM2_interrupt
- .weak TIM14_interrupt
- .weak TIM15_interrupt
- .weak TIM16_interrupt
- .weak TIM17_interrupt
- .weak I2C1_interrupt
- .weak I2C2_interrupt
- .weak SPI1_interrupt
- .weak SPI2_interrupt
- .weak USART1_interrupt
- .weak USART2_interrupt
- .weak USART3_4_LPUART1_interrupt
- .weak CEC_interrupt
-
- .set NonMaskableInt_interrupt, Haltproc
- .set HardFault_interrupt, Haltproc
- .set SVC_interrupt, Haltproc
- .set PendSV_interrupt, Haltproc
- .set SysTick_interrupt, Haltproc
- .set WWDG_interrupt, Haltproc
- .set PVD_interrupt, Haltproc
- .set RTC_TAMP_interrupt, Haltproc
- .set FLASH_interrupt, Haltproc
- .set RCC_interrupt, Haltproc
- .set EXTI0_1_interrupt, Haltproc
- .set EXTI2_3_interrupt, Haltproc
- .set EXTI4_15_interrupt, Haltproc
- .set UCPD1_2_interrupt, Haltproc
- .set DMA1_Channel1_interrupt, Haltproc
- .set DMA1_Channel2_3_interrupt, Haltproc
- .set DMA1_Ch4_7_DMAMUX1_OVR_interrupt, Haltproc
- .set ADC1_COMP_interrupt, Haltproc
- .set TIM1_BRK_UP_TRG_COM_interrupt, Haltproc
- .set TIM1_CC_interrupt, Haltproc
- .set TIM2_interrupt, Haltproc
- .set TIM3_interrupt, Haltproc
- .set TIM6_DAC_LPTIM1_interrupt, Haltproc
- .set TIM7_LPTIM2_interrupt, Haltproc
- .set TIM14_interrupt, Haltproc
- .set TIM15_interrupt, Haltproc
- .set TIM16_interrupt, Haltproc
- .set TIM17_interrupt, Haltproc
- .set I2C1_interrupt, Haltproc
- .set I2C2_interrupt, Haltproc
- .set SPI1_interrupt, Haltproc
- .set SPI2_interrupt, Haltproc
- .set USART1_interrupt, Haltproc
- .set USART2_interrupt, Haltproc
- .set USART3_4_LPUART1_interrupt, Haltproc
- .set CEC_interrupt, Haltproc
+ .long PendSV_Handler
+ .long SysTick_Handler
+ .long WWDG_Handler
+ .long PVD_Handler
+ .long RTC_TAMP_Handler
+ .long FLASH_Handler
+ .long RCC_Handler
+ .long EXTI0_1_Handler
+ .long EXTI2_3_Handler
+ .long EXTI4_15_Handler
+ .long UCPD1_2_Handler
+ .long DMA1_Channel1_Handler
+ .long DMA1_Channel2_3_Handler
+ .long DMA1_Ch4_7_DMAMUX1_OVR_Handler
+ .long ADC1_COMP_Handler
+ .long TIM1_BRK_UP_TRG_COM_Handler
+ .long TIM1_CC_Handler
+ .long TIM2_Handler
+ .long TIM3_Handler
+ .long TIM6_DAC_LPTIM1_Handler
+ .long TIM7_LPTIM2_Handler
+ .long TIM14_Handler
+ .long TIM15_Handler
+ .long TIM16_Handler
+ .long TIM17_Handler
+ .long I2C1_Handler
+ .long I2C2_Handler
+ .long SPI1_Handler
+ .long SPI2_Handler
+ .long USART1_Handler
+ .long USART2_Handler
+ .long USART3_4_LPUART1_Handler
+ .long CEC_Handler
+
+ .weak NonMaskableInt_Handler
+ .weak HardFault_Handler
+ .weak SVC_Handler
+ .weak PendSV_Handler
+ .weak SysTick_Handler
+ .weak WWDG_Handler
+ .weak PVD_Handler
+ .weak RTC_TAMP_Handler
+ .weak FLASH_Handler
+ .weak RCC_Handler
+ .weak EXTI0_1_Handler
+ .weak EXTI2_3_Handler
+ .weak EXTI4_15_Handler
+ .weak UCPD1_2_Handler
+ .weak DMA1_Channel1_Handler
+ .weak DMA1_Channel2_3_Handler
+ .weak DMA1_Ch4_7_DMAMUX1_OVR_Handler
+ .weak ADC1_COMP_Handler
+ .weak TIM1_BRK_UP_TRG_COM_Handler
+ .weak TIM1_CC_Handler
+ .weak TIM2_Handler
+ .weak TIM3_Handler
+ .weak TIM6_DAC_LPTIM1_Handler
+ .weak TIM7_LPTIM2_Handler
+ .weak TIM14_Handler
+ .weak TIM15_Handler
+ .weak TIM16_Handler
+ .weak TIM17_Handler
+ .weak I2C1_Handler
+ .weak I2C2_Handler
+ .weak SPI1_Handler
+ .weak SPI2_Handler
+ .weak USART1_Handler
+ .weak USART2_Handler
+ .weak USART3_4_LPUART1_Handler
+ .weak CEC_Handler
+
+ .set NonMaskableInt_Handler, Haltproc
+ .set HardFault_Handler, Haltproc
+ .set SVC_Handler, Haltproc
+ .set PendSV_Handler, Haltproc
+ .set SysTick_Handler, Haltproc
+ .set WWDG_Handler, Haltproc
+ .set PVD_Handler, Haltproc
+ .set RTC_TAMP_Handler, Haltproc
+ .set FLASH_Handler, Haltproc
+ .set RCC_Handler, Haltproc
+ .set EXTI0_1_Handler, Haltproc
+ .set EXTI2_3_Handler, Haltproc
+ .set EXTI4_15_Handler, Haltproc
+ .set UCPD1_2_Handler, Haltproc
+ .set DMA1_Channel1_Handler, Haltproc
+ .set DMA1_Channel2_3_Handler, Haltproc
+ .set DMA1_Ch4_7_DMAMUX1_OVR_Handler, Haltproc
+ .set ADC1_COMP_Handler, Haltproc
+ .set TIM1_BRK_UP_TRG_COM_Handler, Haltproc
+ .set TIM1_CC_Handler, Haltproc
+ .set TIM2_Handler, Haltproc
+ .set TIM3_Handler, Haltproc
+ .set TIM6_DAC_LPTIM1_Handler, Haltproc
+ .set TIM7_LPTIM2_Handler, Haltproc
+ .set TIM14_Handler, Haltproc
+ .set TIM15_Handler, Haltproc
+ .set TIM16_Handler, Haltproc
+ .set TIM17_Handler, Haltproc
+ .set I2C1_Handler, Haltproc
+ .set I2C2_Handler, Haltproc
+ .set SPI1_Handler, Haltproc
+ .set SPI2_Handler, Haltproc
+ .set USART1_Handler, Haltproc
+ .set USART2_Handler, Haltproc
+ .set USART3_4_LPUART1_Handler, Haltproc
+ .set CEC_Handler, Haltproc
.text
end;