Getting Started With the ARM Cortex-M3 : Preface & The Right Documentation
Thanks to my thesis project I find myself getting started with the ARM Cortex-M3. I personally feel that getting started with this core wasn’t all that easy because the overload of available information.
Two weeks ago I received a KEIL MCBSTM32 Evaluation Board. Since then I’ve had the chance to play around with it. And by “playing around” I basicly wasting a lot of time searching for the wrong documents/information and writing my first ARM programs ever.
With this blog I’m hoping to spare some of you of going through the same troubles as I did. Basicly I’ll try to accomplish this by pointing towards the most relevant information and some stupid mistakes I’ve made along the way.
Preface
Before we get started I’d like to point out that this tutorial will be based upon the KEIL development board and Realview MDK. This board features the STMicroelectronics STM32F103RB device, so some links to certain documents correspond to this device in particular. If you are using another device, possibly even from STM’s competitor Luminary you should try and find the equivalent documents at it’s vendor’s website.
The right documentation
I started studying the Cortex-M3 just after we had ordered the development board at Farnell. You might want to have a go at it yourself to try and find the right documents you’ll need. You will notice the enormous amount of information that’s available. To save you some time browsing through all this info, here’s a list of all documents you SHOULD definitely read or skim through:
- RM0008 Reference Manual : Medium- and High-density STM32F101xx and STM32F103xx advanced ARM-based 32-bit MCUs
- UM0427 User manual : ARM®-based 32-bit MCU STM32F101xx and STM32F103xx firmware library
- STM32F103×6, STM32F103×8, STM32F103xB datasheet
These three documents are really essential for succeeding in your effort to master the Cortex-M3. Beside these documents I also found some other interesting documents. They aren’t really that helpful in the beginning, but it seemed to me they might come in handy later (So that’s why I bookmarked these) :
- Application Note 179 : Cortex™-M3 Embedded Software Development
- Moving from 8- and 16-bit Microcontrollers to ARM Processors
- Cortex-M3 Datasheet (It’s actually more of a flyer)
- Cortex™-M3 Technical Reference Manual
- AN2629 Application note : STM32F101xx and STM32F103xx low-power modes (Since I will be developing a low-power application)
Some other handy links :
- STM32 Family Document Overview
- STM32 Microcontroller Product Training Module provided by Digikey and STMicroelectronics
- Seminar : Developing with the ARM Cortex-M3
- Seminar : Transitioning to Cortex-M3 Based MCUs
A book perhaps?
I also ordered The Definitive Guide to the ARM Cortex-M3 by Joseph Yiu. It only has a 1-star rating at Amazon, though what I’ve read of this book so far is quite decent.
Book Description
Capitalize on the power of the new ARM Cortex family in your embedded designs; this book shows you how!Product Description
This user’s guide does far more than simply outline the ARM Cortex-M3 CPU features; it explains step-by-step how to program and implement the processor in real-world designs. It teaches readers how to utilize the complete and thumb instruction sets in order to obtain the best functionality, efficiency, and reuseability. The author, an ARM engineer who helped develop the core, provides many examples and diagrams that aid understanding. Quick reference appendices make locating specific details a snap!
Whole chapters are dedicated to:
Debugging using the new CoreSight technology
Migrating effectively from the ARM7
The Memory Protection Unit
Interfaces, Exceptions,Interrupts
…and much more!
- The only available guide to programming and using the groundbreaking ARM Cortex-M3 processor
- Easy-to-understand examples, diagrams, quick reference appendices, full instruction and Thumb-2 instruction sets are all included
- The author, an ARM engineer on the M3 development team, teaches end users how to start from the ground up with the M3, and how to migrate from the ARM7
Well, that’s all for today folks…
About this entry
You’re currently reading “Getting Started With the ARM Cortex-M3 : Preface & The Right Documentation,” an entry on tom.verschooten.org
- Published:
- 07.19.08 / 6pm
- Category:
- ARM Cortex-M3, Electronics






3 Comments
Jump to comment form | comments rss [?] | trackback uri [?]