STM32 is microprocessor created by STMicroelectronics and it is based on ARM Cortex-M3 core. It is good starting point for both entry level and advanced programmers in embedded systems. Boards and external debuggers are cheap. Some even include JTAG debuggers in device price – like STM32 Discovery or TI lm4f120 with Cortex-M4.

Here I will post some code I made for it.

Drivers for internal peripherals:
1. GPIO
2. USART
3. Timer
4. SPI
5. I2C
6. ADC
7. CAN
8. USB
9. FSMC
…..