ARM Microcontroller


The ARM stands for Advanced RISC Machine and basically it is available as a 32-bit RISC microcontroller. It was first introduced by the Acron Computer’s Organization in 1987. Like other microcontrollers, the ARM is also a family of microcontroller architecture and this patent has been brought by different microcontroller chip designers and they are manufacturing micro-controllers such as ST Microelectronics, Motorola, NXP, etc. Basically the ARM comes with the different versions as each version has its own merit and demerit. The ARM processor family maintains his own design from 1987 when they have started their ARM microcontroller basics design.

The arm microcontroller architecture in embedded systems is a viral terminology for what the embedded software engineers to customers are supposed to tell. Nowadays if you look onto any domestic portable embedded product, 60% of products are made by an arm processor family.

ARM microcontroller architecture
ARM Architecture

The ARM is having different variants available in the commercial market, but the ARM Cortex family which developed by the ARMv7 architecture. This is again divided into 3 subfamilies as:

  • ARM-Cortex Ax-series.
  • ARM-Cortex Rx-series.
  • ARM-Cortex Mx-series.

Since this is famous and used in most of the Embedded devices, Let’s go discuss this.

ARM Cortex-M3 MCU Architecture

The Cortex-M3 processor is a high performance low-cost 32-bit processor. The ARM is a “Harvard Architecture” based processor that offer’s the separate Data and instruction line for communicating with RAM, ROM, etc. This is having consists 3-stage pipeline to fetch, decode, and execute the instructions sequentially. The Cortex series processors are the cost-sensitive device which is used to reduce the processor area and has extensive NVIC interrupt handling, and system debugs capability.

ARM diagram

The Cortex-M3 ARM processors are implemented by the THUMB instruction sets based on THUMB-2  technology. Therefore, it ensures high code density and reduces the program memory requirement. The Cortex-M3 instruction set provides excellent performance due to modern 32-bit architecture. The ARM processor core-m3 is closely integrated to Nested Vector Interrupt Controller (NVIC) to provide a good interrupt performance.

If I will continue the history and all I think it will be difficult to complete and I don’t want to make it difficult. So instead of discussing these concepts better Let’s go take ARM family microcontroller and will discuss it and we will do the coding and projects. Since nowadays we are mostly acquainted with the 32-bit microcontroller, hence let’s take a 32-bit microcontroller as an LPC-2148 microcontroller.

Pipeline arm
ARM Pieline


The LPC-2148 is the widely used microcontroller from the ARM-7 family. It is manufactured by Philips and added with many inbuilt peripherals which making it more efficient and also it is more reliable for both beginners and high-end developers to learn and research.


The ARM-7 is a load and store architecture, where if you want to perform any data processing instructions, then first the data has to move from a memory store into a set of central registers, the data processing instruction has to be executed and then the data again stored back into the memory.

arm load store
ARM Load store

The central set of registers are a bank of 16 registers from R0 – R15. Each of these registers is having 32-bit wide whereas R0 – R12 are user registers and R13 – R15 having some special functions. Where the R13 is called a Stack Pointer (SP), R14 is called Linked Register (LR), and the R15 is the Program Counter (PC).

ARM-7 microcontroller register
ARM Registers

STACK POINTER (SP-R13): The stack pointer is a register called Stack inside the processor which stores the address of the next instruction in the which is going to be executed.

STACK: A stack is a special temporary buffer which stores the data from top-down.

LINKED REGISTER (LR-R14): The R14 is the linked register which stores the return information for subroutines, function calls, and exceptions. On reset, the processor sets the LR value to 0xFFFFFFFF.

PROGRAM COUNTER (PC-R15): The program counter is the R15 register in ARM-7 which contains the current address of the instruction which is executing. On reset, the processor loads the PC with the value of the reset vector, which is at address 0x00000004. Bit[0] of the value is loaded into the EPSR T-bit at reset and must be 1.

Increasingly, embedded systems developers and system-on-chip designers choose specific chip cores and a family of tools, libraries, and ready-to-wear elements to quickly develop new microprocessor-based products and applications. ARM is one of the most important choices out there for embedded system developers.
Over a previous couple of years, the ARM design has become the foremost pervasive 32-bit design within the world, with a large vary of ICs out there from numerous IC makers. ARM processors square measure embedded in product starting from cell/mobile phones to automotive braking systems. A worldwide community of ARM partners and third-party vendors has developed among semiconductor and products style corporations, as well as hardware engineers, system designers, and software system developers.
ARM7 is one of the wide used micro-controller families within the embedded system application. This section could be a humble effort for explaining the essential options of ARM-7.
An ARM could be a family of instruction set designs for pc processors supported a reduced instruction set computing (RISC) architecture developed by British company ARM Holdings.

A RISC-based pc style approach suggests that ARM processors need considerably fewer transistors than typical processors on average computers. This approach reduces prices, heat, and power use. These square measure fascinating traits for lightweight, portable, powered devices–including smartphones, laptops, tablets, and tablet computers), and different embedded systems. an easier style facilitates additional economical multi-core CPUs and better core counts at a lower value, providing higher process power and improved energy potency for servers and supercomputers.

SOME FACTS you need to recognize
In 2005, concerning ninety-eight of all mobile phones sold-out used a minimum of one ARM processor. The low power consumption of ARM processors has created them terribly popular: thirty-seven billion ARM processors are made as of 2013, up from ten billion in 2008. The ARM design (32-bit) is that the most generally used design in mobile devices, and hottest 32-bit one in embedded systems.

According to ARM Holdings, in 2010 alone, producers of chips supported ARM architectures rumored shipments of vi.1 billion ARM-Based processors, representing ninety-fifth of smartphones, thirty-fifth of digital televisions and set-top boxes and 100 percent of mobile computers. it’s the foremost wide used 32-bit instruction set design in terms of the amount made.

LET’S begin WITH LPC 2148
LPC2148 is that the wide used IC from the ARM-7 family. it’s factory-made by Philips and it’s pre-loaded with several inherent peripherals creating it additional economical and a reliable possibility for the beginners also as a high-end application developer.

Let us bear the options of LPC214x series controllers.
–> eight to forty computer memory unit of on-chip static RAM and thirty-two to 512 computer memory unit of on-chip flash program memory.128-bit wide interface/accelerator permits a high speed of sixty MHz operations.
–> In-System/In-Application Programming (ISP/IAP) via on-chip boot-loader software system. Single flash sector or full chip erase in four hundred ms and programming of 256 bytes in 1ms.
–> EmbeddedICE RT and Embedded Trace interfaces provide a period of time debugging with the on-chip RealMonitor software system and high-speed tracing of execution.
–> USB 2.0 Full Speed compliant Device Controller with a pair of the computer memory unit of endpoint RAM. additionally, the LPC2146/8 provides eight computer memory unit of on-chip RAM accessible to USB by DMA.
–> One or 2 (LPC2141/2 vs. LPC2144/6/8) 10-bit A/D converters give a complete of 6/14analog inputs, with conversion times as low as a pair of.44 America per channel.
–> Single 10-bit D/A device provides a variable analog output.
–> 2 32-bit timers/external event counters (with four capture and 4 compare channels each), PWM unit (six outputs) and watchdog.
–> Low power period of time clock with freelance power and dedicated thirty-two rate clock input.
–> Multiple serial interfaces as well as 2 UARTs (16C550), 2 quick I2C-bus(400 kbit/s), SPI, and SSP with buffering and variable information length capabilities.
–> Vectored interrupt controller with configurable priorities and vector addresses.
–> Up to forty-five of five V tolerant quick all-purpose I/O pins during a small LQFP64 package.
–> Up to 9 edge or level sensitive external interrupt pins out there.
–> The on-chip integrated generator operates with associate external crystal {in a|during a|in associate exceedingly|in a very} vary from one MHz to thirty MHz and with an external generator up to fifty MHz.
–> Power saving modes embrace Idle and Power-down.
–> Individual enable/disable of peripheral functions also as peripheral clock scaling for added power optimization.
–> Processor wake-up from Power-down mode via an associate external interrupt, USB, Brown-Out discover (BOD) or period of time Clock (RTC).
–> Single power offer chip with Power-On Reset (POR) and body circuits:

  • computer hardware operative voltage varies from three.0 V to 3.6 V (3.3 V ? ten %) with five V tolerant I/O pads.
  • adopted from the datasheet of LPC 2148. every inherent peripheral are going to be explained in short in a while.

The list of features is enough to clarify why it’s lined such a large marketplace for high-end applications like mobile phones, tablets, etc.


Here is that the pin configuration of LPC 2148.
Now allow us to begin with the hardware demand of LPC2148.
LPC2148 wants the minimum below listed hardware to figure properly.

  1. Power offer
  2. quartz oscillator
  3. Reset Circuit
  4. RTC quartz oscillator (This isn’t necessary if you’re not mistreatment RTC. but this can be thought of as necessary requirement)
  5. UART
  6. Power offer
    LPC2148 works on three.3 V power offer. luminous flux unit 117 will be used for generating the three.3 V supply. However, basic peripherals like LCD, ULN 2003 (Motor Driver IC), etc. works on 5V. therefore AC mains offer is born-again into 5V mistreatment below-mentioned circuit and subsequently luminous flux unit 117 is employed to convert 5V into three.3V.

Block diagram for a power offer is given below.

Transformer: it’s wont to step down 230V AC to 9V AC offer and provides isolation between power grids gate.

Rectifier: it’s wont to convert AC offer into DC.

Filter: it’s wont to cut back the ripple issue of DC output out there from rectifier finish.

Regulator: it’s wont to regulate DC offer output.
The circuit for this can be as shown below.

Here, Regulator IC 7805 is employed {to provide|to offer|to produce} fix 5V dc supply.

Now we are able to use luminous flux unit 117 for generating three.3V offer from 5V mistreatment below circuit.


  1. Reset Circuit

A button is crucial during a system to avoid programming pitfalls and generally to manually bring back the system to the formatting mode. The circuit diagram for reset is as shown below.

MCP 130T could be a special IC used for providing stable RESET signal to LPC 2148.

  1. generator Circuit
    Oscillations, the heartbeat, square measure provided employing a crystal and square measure necessary for the system to figure.

The value of capacitors C20 & C21 depends upon the frequency of crystal Y3. The general circuit and its equivalent circuit is as shown below.

Recommended values square measure as shown within the table.

We can conjointly use an external generator for providing a system clock. The circuit for this application is as given below.

  1. RTC generator Circuit
    It provides the clock for RTC operation.
  2. UART
    LPC 2148 has inherent ISP which suggests we are able to program it inside the system mistreatment serial communication on COM0. it’s conjointly COM1 for serial communication. Georgia home boy 232/233 IC should be used for voltage logic conversion. connected connections square measure as given below.

Once the above-listed circuit style is prepared, we tend to square measure able to go any.

Notify of
Inline Feedbacks
View all comments
Scroll to Top