- General

A Comparison Between ‘AVR’ and ‘PIC’ Micro Controllers

Two common micro controllers, the ‘PIC’ (‘Microchip’) and ‘AVR’ (‘Atmel’) are compared for the purpose of making a robot control circuit.

Advantages and disadvantages of the ‘AVR’:

– Suitable for high speed applications

– No programmer needed (‘bootloader’)

– Very user friendly (‘Arduino’ programming)

– Compiler free

Advantages & disadvantages of the ‘PIC’:

– Easily available in Malaysia

– Lower power consumption at 5V with sleep mode

– Programmer needed

– Programming can be a hassle

– Compiler free

‘AVR Atmega328’ micro controller is one of the many micro controllers used in ‘Arduino’ development board configuration. The ‘Arduino’ ‘IDE’ 0018′ is very much simplified for even a beginner to use, but provides the same programming output flexibility as the compiler for ‘PIC’. Codes are uploaded via ‘bootloader’, which does not require additional purchase of an external programmer circuit.

Its 32KB flash program memory is more than sufficient. Programming codes used in most projects only take up to 10KB at most. This leaves much balance flash program memory space for further testing and debugging in future in case of the need to do so.

In the ‘Arduino’ ‘IDE’ 0018′, pulsing the servo motors every 20ms uses the 8-bit timer (by ‘millis()’ function). There are other two timers, the ‘timer1’ (16-bit) and ‘timer0’ (8-bit) which are not used. In coding, one must declare “‘extern’ volatile unsigned long timer0_overflow_count;” in the beginning if timer0 (8-bit) is needed.

In the end, it is your choice of micro controllers that will set you in the right course. Actually, it all depends on familiarity. For me, I had used the ‘AVR’ micro controllers for the first time in robotic projects. Therefore, I had leaned more towards the ‘AVR’ types.