microcontroller programming course in pune
why learn microcontroller programming ?
What is a Microcontroller?
As time progresses, an increasing number of consumer goods contain microcontrollers. With the current cost of basic microcontrollers as low as 30 cents, they are being used as simple solutions to tasks that previously utilized transistor-transistor-logic. With the profusion of these devices being used in industry as well as in hobby electronics the ability to program them can be very useful for any project that may be attempted. This text is written to be an introduction to microcontrollers as well as to take a new user from opening the datasheet for the first time through programming a microcontroller and using a variety of peripheral devices. For a more advanced user this text will provide suggestions on how to make code more readable and put forth good coding practices. While this will focus on a single microcontroller, the ATmega644p, the ideas presented are valid for most microcontrollers available today.
Microprocessors, Microcomputers, Microcontrollers
While microprocessors, microcomputers and microcontrollers all share certain characteristics and the terms are often used interchangeably, there are certain distinctions that are used to classify them into separate categories.
The simplest of the three categories is the microprocessor. Also known as a CPU (Central Processing Unit), these devices are generally found at the heart of a much larger system such as a desktop computer and are primarily used as data processors. They generally consist of an arithmetic logic unit (ALU), an instruction decoder, a number of registers and digital input/output (DIO) lines. Some processors also include memory spaces such as a cache or stack which can be used for more rapid temporary storage and retrieval of data than having to access system memory. Additionally, the processor must connect
to some form of data bus to access the memory and input/output peripherals external to the processor itself.
Figure Basic components of a microprocessor.
Depending on the memory architecture the microprocessor may have only a handful of registers such as a program counter for keeping track of the address of the next instruction and an instruction register for loading and storing the next instruction; or there may be dozens of registers. These additional registers are known as general purpose registers and store data while it is being used.