Bootloader for ARM Cortex-M0: No vector table offset register (VTOR) #ARM

Kevin Cuzner writes in Projects & Libraries about the ARM Cortex-M0 microcontroller and a key architectural piece missing from the Cortex-M0 which the M0+ does not have: The vector table offset register (VTOR).
After I purchased the microcontroller for my project (an STM32F042) I discovered that it was a Cortex-M0 and did not have a VTOR. This was a rather unpleasant surprise and now I know that the M0 sucks compared to the M0+. Nonetheless, I was able to overcome this with a fairly simple software shim and that’s what I want to share.
The article explains how to overcome the lack of a VTOR to write a USB bootloader which supports a semi-safe fallback mode.
A good read for lower level programmers. See the full article here.
from Adafruit Industries – Makers, hackers, artists, designers and engineers! https://ift.tt/2DHoDOb
via IFTTT