| Two common micro controllers, the 'PIC' ('Microchip') | | | | programmer circuit. |
| and 'AVR' ('Atmel') are compared for the purpose of | | | | Its 32KB flash program memory is more than |
| making a robot control circuit. | | | | sufficient. Programming codes used in most projects |
| Advantages and disadvantages of the 'AVR': | | | | only take up to 10KB at most. This leaves much |
| - Suitable for high speed applications | | | | balance flash program memory space for further |
| - No programmer needed ('bootloader') | | | | testing and debugging in future in case of the need to |
| - Very user friendly ('Arduino' programming) | | | | do so. |
| - Compiler free | | | | In the 'Arduino' 'IDE' 0018', pulsing the servo motors |
| Advantages & disadvantages of the 'PIC': | | | | every 20ms uses the 8-bit timer (by 'millis()' function). |
| - Easily available in Malaysia | | | | There are other two timers, the 'timer1' (16-bit) and |
| - Lower power consumption at 5V with sleep mode | | | | 'timer0' (8-bit) which are not used. In coding, one must |
| - Programmer needed | | | | declare "'extern' volatile unsigned long |
| - Programming can be a hassle | | | | timer0_overflow_count;" in the beginning if timer0 |
| - Compiler free | | | | (8-bit) is needed. |
| 'AVR Atmega328' micro controller is one of the many | | | | In the end, it is your choice of micro controllers that will |
| micro controllers used in 'Arduino' development board | | | | set you in the right course. Actually, it all depends on |
| configuration. The 'Arduino' 'IDE' 0018' is very much | | | | familiarity. For me, I had used the 'AVR' micro |
| simplified for even a beginner to use, but provides the | | | | controllers for the first time in robotic projects. |
| same programming output flexibility as the compiler for | | | | Therefore, I had leaned more towards the 'AVR' |
| 'PIC'. Codes are uploaded via 'bootloader', which does | | | | types. |
| not require additional purchase of an external | | | | |