1.¿Es una buena idea comenzar con Cortex-M4? (debido a ARMv7, Harvard mem arch, etc.)
Sí, ¿por qué no? Si está programando en lenguaje C, creo que no sentirá la diferencia (solo lo hará el compilador). Por otro lado, si está programando en ensamblaje, hay diferencias, por supuesto.
2. entre MCU basadas en NXP, ST y TI Cortex-M4, ¿cuál es mejor para empezar? (según los requisitos anteriores)
De esos MCU, solo conozco el TI Tiva MCU. Usted puede comprar el bajo costo Tiva C Series TM4C123G LaunchPad. Este Launchpad tiene dos MCU en él. Una de ellas funciona como programador y usted podría usarlo, si lo desea, para programar / depurar una MCU externa de Tiva C.
Puedes usar un IDE de programación similar a Arduino llamado Energia para programar aplicaciones simples muy rápidamente. Para aplicaciones complejas, debe usar Code Composer Studio (CCS), que es gratuito bajo ciertas condiciones (uno de ellos lo está usando con programadores de baja velocidad como el del Launchpad). El CCS actual (versión 6) permite instalar fácilmente bibliotecas y ejemplos. Las bibliotecas gratuitas permiten trabajar "fácilmente" (esto es, por supuesto, relativo) con periféricos dentro de la MCU, interactuar con periféricos externos o tener un RTOS (sistema operativo en tiempo real).