ARM Processor

ARM learning with community...Learn

ARM Tools and Softwares..ARM..

ARM-Step by Step ...Here

ARM System on Chip Architecture by Steve Furber...DOWNLOAD BOOK



 ARM7 Tutorial in c

      Direction control of individual bits
      Separate control of output set and clear
      All I/O default to inputs after reset
ARM 7 has two port named as Port 0 and Port 1. Each port can be used as I/P or O/P. Port 0 has 0-31 pins and Port1 has 16-31 pins.
Each Port can be used as GPIO(general purpose I/p and O/p) or As SFR(Special Function).
1. To use it as GPIO we have to set some register.
    PINSEL0----it must be 0 to use LSB of port 0 as GPIO(0-15)
     PINSEL1---it must be 0 to use MSB of port 0 as  GPIO(16-31)
    PINSEL2---it must be 0 to use Port 1 as GPIO
2. To set the direction of any Port as I/P or O/P we have to SET and 
    CLR a Register named as IODIR
     1---set as o/p
     0---set as i/p           
IO0DIR=0x00000000;   // it means port 0 will act as i/p
IO1DIR=0x000000ff;   // it means lower 8 bit of port 1 will act as o/p
3. Now Lets Put some data on register. For that we are using two register IOSET and IOCLR. As its name shows it can set and clear particular data bit.
    IO0SET=0x00000001;   //it means 0th bit of Port 0 will be set
    IO0CLR=0x00000001;  //it means 0th bit of Port 0 will be cleared
Power supply ckt of ARM

ARM requires two power supply one is for CPU(+1.6 to 1.95v) and other is for I/O(+3 to 3.6v)
Now it’s Time for a “HELLO WORLD Program”
//this is written in Keil uvision v 4.0 and for LPC2124(ARM7 TDMI)//
// I am going to blink a LED, whose anode is connected to Port0.0
#include lpc21xx.h
int main()
  int i;
  PINSEL0=0x00000000; //port 0 set to GPIO
  IO0DIR=0x00000001; // 0th bit of port 0 will act as o/p
      IO0SET=0x00000001;   // LED will glow
           for(i=0;i<100000;i++); //to create some delay
      IO0CLR-0x000000001; //Led will off
          for(i=0;i<100000;i++); //to create some delay
How to check Input in ARM7
To check input in ARM, we can use a register named as IOPIN.  This register can also be used to set output.
if((IO0PIN&0x00000001) = = 0x00000001);
//this statement will execute when the 0th bit of port0 will be high
IO0PIN=0x00000002;// it means 1st bit of  Port 0 set to High (As output)
Lets Do a I/P and O/P program
#include lpc21xx.h
int main()
          if((0x00010000&IO1PIN)==0x00000000) //giving input at p1.16
          IO0PIN=0x00000001; // anode of led is connected to 0th bit of Port0

ckt. Dig of the above code
Download PDF version of above GPIO Tutorial

More tutorials on ARM coming soon...Thanks to embbsys...krishna.

Robotics in Nepal

Embedded Robotics book By Thomas Braunl....

ASIMO, an acronym for Advanced Step inInnovative MObility, is a humanoid robot designed and developed by Honda. Introduced on 21 October 2000, ASIMO was designed to be a multi-functional mobile assistant.  In the USA, ASIMO is part of the Innoventions attraction at Disneyland and has been featured in a 15-minute show called "Say 'Hello' to Honda's ASIMO" since June 2005.The robot has made public appearances around the world, including the Consumer Electronics Show (CES), the Miraikan Museum and Honda Collection Hall in Japan, and the Ars Electronica festival in Austria.

 Artificial Intelligence...
 Download book ray kurzweil..

How to Create a Mind: The Secret of Human Thought Revealed by Ray Kurzweil

16 Free e-Books On Mechatronics & Robotics Download..

How to Create a Mind: The Secret of Human Thought Revealed by Ray Kurzweil

16 Free e-Books On Mechatronics & Robotics Download..

For More details on Robotics in Nepal you can follow:
Robotics Association of Nepal
Robotics Club Institute of Engineering Pulchowk Campus
Nepal Army, MSTC 
Robotics Clubs of Engineering College


  1. Where can i buy ARM 7 processor in nepal? What may be the estimated price?

  2. This comment has been removed by the author.

  3. Really interesting to see your comment.......Digitronix-Nepal is planning for your interest...Price is difference with the processor functions and capabality, may range from 1000 Nrs. for the processor and 5000-10000 Nrs. for Development boards..We can use Dev. boards for programming.

  4. On which ARM processors, you give training? Really interested in CortexA Series processor. If it is available then i would like to join.

  5. I think your post is very good, rather I would have liked to read a bit more about this topic because I think it is more interesting

    six months industrial training