Hello,
I've just noticed, that our definition of interrupt vectors for stm32
micro controllers is not easy to follow.
Do we get the names and definition of the interrupt vectors from the
data sheet or from some auto-generated xml structures?
As you can see in the previous structure on current master branch there
are differences in definition of interrupt vectors in startup code for
several devices, where not all of them are represented in the current
structure on develop.
The pending problem:
There is the interrupt vector CAN1_TX_IRQHandler, which is called
USB_HP_CAN1_TX_IRQHandler on some devices (may be different inside same
families=targets like connectivity line devices?).
Noticed, unfortunately at runtime, while testing can driver on
STM32F3, which does not fit to interrupt vector names in startup code.
Maybe you have already thought of any automated solutions producing
errors at compile-time and ensuring correctness here?
greetings
Georgi
PS: some file paths
Maybe the more tested and maybe more correct version on master branch
(SHA-1: 21ee647a1900177d71e3722db3846b017790aeb9)
xpcc\src\xpcc\architecture\platform\cortex_m3\stm32\stm32f1\startup\startup.c
xpcc\src\xpcc\architecture\platform\cortex_m3\stm32\stm32f2_f4\startup\startup.c
The current version on develop (SHA-1:
471065ecde15b4983c6633815108ad347eb9524e)
xpcc\src\xpcc\architecture\platform\core\cortex\startup.c.in
xpcc\src\xpcc\architecture\platform\core\cortex\stm32\...
xpcc\src\xpcc\architecture\generated_platform_xxx\core\cortex
xpcc\src\xpcc\architecture\platform\peripheral\can\stm32\can.cpp.in
xpcc\src\xpcc\architecture\generated_platform_stm32f303cc\peripheral\can\stm32\can_1.cpp