I'm just getting started in the Arm world and I'm trying to get a better understanding of the similarities between various vendor implementations of the Cortex-M0+ at the toolchain level.
I have previously got a 'blinky' program working on an LPC804, using a generic arm-gcc cross-compiler, programmed using the UART boot loader with a command line application. I now have a need to use the ATSAMD21G processor in a project and I'd like to understand how much of the LPC804 workflow I can re-use.
Assuming that no chip-specific peripherals are being used, I presume I can use the same, generic arm-gcc cross-compiler to target the new MCU? Is the boot loader actually part of the Cortex specification? Can I expect the same command line application to upload the binary to any Cortex-M0+ MCU?
I'd be grateful for any pointers to information on the realities of using the Cortex-M0+ across different vendors.
Just compare the reference manuals.