Wednesday, May 23, 2012

Robotics: Using Atmega16 Microcontroller - Introduction

What is a Microcontroller?

A microcontroller is a single chip, self-contained computer which incorporates all the basic components of a personal computer on a much smaller scale. Microcontrollers are often referred to as single chip devices or single chip computers. The main consequence of the microcontroller’s small size is that its resources are far more limited than those of a desktop personal computer. 

In functional terms, a microcontroller is a programmable single chip which controls a process or system. Microcontrollers are typically used as embedded controllers where they control part of a larger system such as an appliance, automobile, scientific instrument or a computer peripheral. Microcontrollers are designed to be low cost solutions; therefore using them can drastically reduces part and design costs for a project.

Physically, a microcontroller is an integrated circuit with pins along each side. The pins presented by a microcontroller are used for power, ground, oscillator, I/O ports, interrupt request signals, reset and control. In contrast, the pins exposed by a microprocessor are most often memory bus signals (rather than I/O ports).

A microcontroller has seven main components:
  • Central processing unit (CPU)
  • ROM
  • RAM
  • Input and Output
  • Timer
  • Interrupt circuitry
  • Buses
The Microcontroller we will use is ATMega16 from AVR Family.