Introduction

The ARM is a 32-bit RISC processor developed by Acorn Computers. ARM processors are typically used in embedded systems, (eg iPhone). The ARM Holdings produces only the core, it sells those cores for other companies that use the ARM processor for microcontroller designs, such as ST and Luminary.

Architecture Features

ARM processors are typically embedded in a hardware form a microcontroller, because of that it has a lot of features used to decrement the object code size, and interrupt latency

Besides the fact that we got an 32bits core, we don't need to know every aspect of the core ,because in practise we will be using some C/C++ compiler, in my experience if you ever need to fight with every aspect of the architecture just to crunch a few more cycles, it would be better to use an FPGA or DSP.

Embedded RTOS

Before we look at some specific examples on our development kit, let's review the concepts of embedded operating systems. For exampole this system will on a Cortex M3 board and aims to control a furnace temperature.

Our system need to control the internal furnace temperature and keep running all local interfaces (Sensors, display, keyboard), and our "external world" interfaces (Ethernet, RS-232 for PDA connection)

Resuming out system will have those parts:

With an RTOS we can split our logic in tasks, for example, the temperature control would be the most priority task. Separating the job in tasks simplifies a lot our project.

What we're going to see

In this tutorial we'll see some examples with the ST32F103ZE and Luminary microcontroller. Both have an ARM Cortex M3 core but the amount of internal peripherals varies widely, for example Luminary LM3S6965 microcontroller, has an embedded hardware controller ethernet network.

Introduction to LM3S6965

Introduction to MCBSTM32E