Sunday, November 25, 2012

EMBEDDED SYSTEMS TUTORIAL 1- SELECTING A SUITABLE MICROCONTROLLER



Now a days there are mainly two microcontroller families ruling the embedded system ,“PIC” series from Microchip and “AVR” series from Atmel ,both have some advantages and disadvantages. PIC was dominating this field for a long time but now AVR is attracting engineers and hobbyist due to its amazing features. Both the families are amazing and now in this article we will compare both the families to solve the problem of “selecting a suitable microcontroller”.


AVR Vs PIC


 Though both the microcontroller families are just wonderful but I prefer AVR to PIC because of these reasons-


AVR is about 4x faster than the PIC . in case we have to see response speed we have to choose AVR as PIC requires 4 cycle to perform a single execute cycle while the AVR execute most of the instruction in 1 clock cycle so its slower than AVR.
Moreover AVR consists of a lot of advanced features within the chip and its very consistent  and cheap.
In microcontroller the programming is done in assembly language which is an unstructured and tough to understand language instead of using assembly for programming using  ‘c’ is easy and it provides a very nice scope in writing a efficient code. To write programs in ‘c’ for AVR or any other microcontroller we need a c compiler for that MCU. Generally these compilers are priced so high that they are out of reach of hobbyist and small company. But a huge thanx to AVR, fortunately for AVR MCUs there is a very high quality ‘c’ compiler for free. It is GNU C compiler. It is extremely popular and it has a large user base. It is part of the free and open source software revolution that we are witnessing (like Linux, PHP, Apache, OpenOffice.org etc). Providing excellent software at no cost.


VARIOUS AVR MCUS

AVR family is providing a a lot of microcontroller chips with outstanding features. We can use any chip according to our use. Mainly chips provided are

  • AT MEGA8 [28 PIN , 8K Flash , 1KB Ram, 512 Byte EEPROM]
  • AT MEGA16 [ 40 PIN, 16K Flash, 1KB Ram, 512 Byte EEPROM]
  • AT MEGA32 [ 40 PIN, 32K Flash, 2KB Ram, 1KB EEPROM]          and so many other chips. 
In these tutorial series we will use ATMEGA16 because of its advance features and really low cost. AVR family MCUS are providing various advanced features like-

·         TIMER/COUNTER
·         ADC(analog to digital converter)
·         SPI
·         TWI
·         USART
·         Serial communication


If you don’t know about these features , no problem we will discuss on these topics in next posts.
I hope this article was useful for you guys in next article we will start our journey with AVR microcontrollers, we will discuss about hardware and software requirements and we will compile our very first program. U can ask your questions, doubts etc by commenting on this post and of course you can give your critical views too.. your view will be extremely helpful for me…:) 


THNX

No comments:

Post a Comment