Getting Started with Microcontrollers
Microcontrollers are almost everywhere.They are very popular for their low cost, for on-board features that result in low pin count and component count designs and for their programmability. Lets Get Started!
First, you need select a Microcontroller Family. The most common ones to choose from are C51 and PIC and AVRs.
Locate a reliable source for your ICs and other components. Most electronic component shops will have the very common microcontrollers available. You can also checkout various online courses. (RS Components is available in India but is very costly!).
You will need a good compiler for the language you choose: C, C++, Basic and Assembly are the common options. You can choose assembly if you want to (or have to) and is a good option to learn to program PICs. There are a lot of free or commercial compilers too.
For PIC users: HI-TECH PICC-Lite compiler - A freeware compiler with some limitations. Microchip also has compilers available. Their MPLAB is a good option.
For C51: Kiel is a full commercial product. It has its own IDE and compiler. Evaluation version has many restrictions but can be useful for learning microcontrollers. SDCC is an opensource C compiler. It does not have an IDE or Editor. You will have to enter your programmers using Notepad, Edit etc and compile from the command line.
For Atmel's AVR, check out CodeVision, GCC-avr etc.



