What is Microcontroller

ATMega32-Microcontroller.jpg
    A microcontroller in simple words is a small computer on a single IC (Integrated Circuit). So it is also called a microcomputer.

    A computer PC or laptop perhaps in front of you consists of different components or parts that are connected together to form a computer system. These parts are microprocessor (CPU), RAM, hard disk, I/O ports, timers etc. Similarly a microcontroller consists of a microprocessor, RAM, Flash or ROM memories (like hard disk in PC), I/O ports, serial ports and timers. These components may vary from one microcontroller to other but some basic parts such as RAM, ROM or Flash memories and ports are essential part of a microcontroller.

    The main difference between a PC/laptop and microcontroller is that PC and laptop are general purpose computer systems while a microcontroller is a specific purpose computer system on a single chip. Usually a single task is dedicated to a microcontroller while general purpose PC runs different type and number of tasks at one time.

    Microcontroller ROM or flash memory is used to store a program (task) that runs on it. RAM is the place where we can store data or declare variables. I/O ports are used to communicate with external world (devices such as ADC, DAC, serial EEPROMs, external memories, LCDs, keypads etc). In addition some microcontroller contain on chip special components such as serial RS232 channel, I2C, ADC, voltage Comparators etc. Usually programming languages used for developing microcontroller program are Assembly, Basic, C. C ++ is also used specially for microcontrollers having resources like program flash and RAM large in amount.

Applications of Microcontrollers

    In our daily life we see more applications around us in which microcontroller is used than a PC. Microcontroller is used in ovens, split units, digital clocks, in our wrist watch, printers, scanners etc.

Types of Microcontroller

    Some of the types of microcontroller are

  1. 8051
  2. AVR
  3. PIC

Tools & Applications for Microcontroller Based Embedded System Development

    These are some of the tools & applications necessary for microcontroller based embedded system development.

  1. Hardware
  2.     A prototyping board, SBC, Trainer or specially designed electronic board that has target microcontroller installed. There are so many other tools that are used in developing these type of electronic boards.

  3. Compiler or Assembler
  4.     Compiler or assembler to write & compile our program. Usually these compiler or assembler generate hex or binary file as output that is finally transferred through programmer or burner device to the target microcontroller.

  5. Programmer or Burner Device
  6.     This is a hardware device that is used to transfer our compiled program or hex file to the target microcontroller.