We see and use this things everyday but, the question here is how much do we know about them. Let me give you an example, we see the Television every day, How many of us really know how it works. We use our laptops (Net books, Personal computer) how many of us know how it works. I am very glad to say that almost the whole world runs on micro controllers. Ranging from the Mobile telephony systems we use to the most powerful robots. The Intel company is one of the largest producer of micro controllers. I remember myself using the Intel Celeron processor five years ago, now i am using Dual core-inside. The technology is changing according to the needs of people. Intel launched the ie3, ie5 and ie7 for high speed computing.
What is a Micro controller?
A micro controller is the device that performs the desired functionality of any system according to the given inputs. A micro controller is not just a Hardware tool, it also involves a lot of coding according to the specified algorithms, for example, a washing machine has a lot of hardware parts, it has a micro controller that has a large number of devices like transistors, and resistors built in it. But when you press a button how does the system know what to do? The answer to this question is that, a pre written algorithm is present in the micro controller that executes the operations according to the given inputs. Many operations go on unnoticed by the user inside the Micro controller.
Before talking about micro controllers let us talk about microprocessors. The basic difference between a microprocessor and a micro controller is that a microcontroller has a inbuilt features of additional circuitry like analog to digital converter, RAM, Flash memory, serial communication and so on along with the main microprocessor…. A microprocessor on the other hand contains only the main processor that executes the relative code.
Ranging from the 4 bit processor that came into the market to the today’s micro controllers of 32 and 64 bits, there is a lot of change.8085 microprocessor and 8086 microprocessor were considered the biggest breakthrough in the technology world once upon a time. Then came the 8051 micro controller. The technology changed as preferences of the people changed. We can categorize Micro controllers based on many aspects like
1. Number of bits (4 bits, 8bits, 16bits, 32 bits or 64 bits)
2. Application specific (like the DSP processors are only used for mathematical analysis of signals)
3. Size, power consumption, speed (like the ARM processors use very low power)
And so on..
How is the coding done..
The coding is done using kits that are connected to the empty processor; the programmer writes the code according to the specified algorithm, the programmer defines all the inputs and outputs to the pins according to the data sheets. Before dumping he finally checks it and then finally dumps it to perform the specified operation.
The code is a bit more different, The commands vary with processors..
Few commands are
MOV A, B (specifies that the contents of B register are to be moved to A)
ADD A, B (specifies that that the contents of B register has to be added to that of A register and the result has to be saved to A register)
The commands can be given differently depending on addressing modes. I do not want to explain any architecture or addressing modes here or instruction set here..
MOV A, B
MOV A, 30H (for 8085 microprocessor)
MOV A, #30H (for 8051 micro controller)
(30h is the data in both cases)
The way we code changes with processors.
With the advent of VLSI, a larger circuit is available as a small chip; compare our traditional computer desktop systems motherboard and that of a latest Net book or laptop.
(Image courtesy from various site with help of google)