So after 30 days in the ARM Cortex world, 30 days of searching, downloading, reading, and trying stuff out, this is a summary of what for me have become go-to resources. I hope someone finds it useful. Please feel free to add what I've missed.
Example codeFrom the community at large: this forum and the stm32 forum are full of usefull code snippets and indispensable advice. I know I would not have working USART DMA code if not for Clive's posts.
From the pros at Nelson Mandela Metropolitan University:All the sample programs you could possibly need to get started. Multiple examples for LCD, UART, VCP, ADC, PWM, servos, sensors, etc. These are pretty complete; for example, the USART code includes printf redirection. I hope ST is sending them money. Just saying.
This is not a complete list of useful documentation, but it does, I think, represent something like a core.
For the F3-Discovery boardUM1570 User manual STM32F3DISCOVERY This one is pretty much essential because it lists the pins that are ''taken'' on-board, as well as those that are unused and available for each peripheral. I haven't found a graphical representation of this data, but you can make your own from Table 6:
STM32F3 Hands-On Workshop MDK-ARMSetting up MDK-ARM for the F3Discovery board; this is the one doc that worked for me:
For the STM32F303 processorTechnical Data Sheet - STM32F303xB STM32F303xC Overview of the pieces that make up the stm32f303. A good read:
Insider's Guide to the STM32 - HitexAnother good read:
UM1581 User manual Standard Peripheral Library V1.1.0
Documents all the function calls for each peripheral:
And finally, the bible:RM0316 Reference manual This one could use a once-over by a technical writer, but we should focus on its essential utility. If someone tells you that you have to set the ADD bits of the CR2 register, what the? This is where you find it: