Todo depende que tan profundo quieras llegar en el conocimiento y uso de los MCU.
Ver ejemplos ayuda bastante, y estos ejemplos ayudan más si lees el código y la documentación de las librerías y lees las hojas de datos y manuales de referencia.
Si le entiendes al inglés, puedes ver los vídeos del canal de un tal Patrick Hood-Daniel
https://newbiehack.com/categories/newbiehack-ARM-tutorialhttps://www.youtube.com/user/anajonesr/videosDa buenas explicaciones, por ejemplo
Y sólo usa las CMSIS, por lo que podrías ver los vídeos, seguirlos y tener a la mano las manuales de referencia.
Después de aprender la arquitectura del MCU y sus periféricos, el siguiente paso a dar es la de aprender desarrollo de sistemas embebidos, que es un tópico distinto a saber usar y programar el microcontrolador e incluye temas relacionados con Ingeniería de Software, Algoritmos, Estructuras de Datos, entre otros.
Por ejemplo, en las empresas que desarrollan sistemas embebidos hay por lo menos dos equipos de trabajo. Uno se encargan enteramente del Hardware y el otro se encarga del Firmware.
El que se dedica a la parte del Hardware, va a encontrar placentero y didáctico leer todas esas hojas de datos y manuales de referencia. Para el que se dedica sólo al firmware las va a encontrar como una montaña empinada difícil de escalar.
El que se dedica el hardware va a poder programar fácilmente el MCU y sus periféricos, pero le va a resultar casi imposible, o por lo menos una tarea titánica el desarrollar stacks completos de USB, TCP/IP, Diseño de Patrones, optimizar el Firmware, o incluso entender conceptos relacionados con la creación de sistemas robustos y fiables, pruebas unitarias y/o perfilar el sistema embebido para conocer, por ejemplo, los cuellos de botella que provocan que el sistema no se desempeñe como se espera.
En cambio, el que se dedica sólo al Firmware estos conceptos son más fáciles de digerir y aplicar.
Con respecto a lo que comentan de las hojas de datos, que son malas, bueno, eso también depende, ya que no hay una forma, enteramente objetiva que satisfaga todas las formas de leer e interpretar las hojas de datos, y estás están pensadas para que sea leídas e interpretadas por Ingenieros y/o gente especializada con ciertos antecedentes sólidos.