Some resources for the Atmel AVR
Links checked on 19th September 2013
There are quite a number of web sites that have information on the Atmel AVR, some are very easy to find and some are more obscure. Unfortunately Google does not bring the most useful sites to the fore and the best sites I have found have been from the AVR dedicated forum.
The following are sites that I have found useful.
Assembler
The best way to achieve the fastest operation from any micro-controller is to use assembly language. Interpreted languages are too slow and compilers, whilst being highly optimised do not provide you with the exact program execution timing required for speed critical applications. For non speed critical applications, and in most cases, compilers will be fine, as compilers optimise code as much as possible. However there may be additions in the code that an assembler programmer would not include.
Interpreted languages are great where speed is of no concern.
Assembly programming appears to be very complicated and probably frightens most of us away! But the following tutorials/books may help dispel that fear.
Assembler tutorial and book: This is a great book that starts from the basics - avr-asm-tutorial
Assembler tutorial: Another great source to learn assembler - avrbeginners
Flowchart/Assembler: algrom - this is a very sophisticated flowchart/assembler program that really helps in designing assembler code very quickly. The author is Gennady Gromov - ab(at)algrom.net, and he is very responsive to questions regarding this excellent program.
Arduino
Arduino - this is the home of the Arduino project - Arduino
Arduino Cookbook - loads of ideas and useful code for many types of projects, some very simple and some much more sophisticated - Arduino Cookbook
Forum
This is a great forum where you will find loads of AVR information: AVRFreaks
There are quite a number of web sites that have information on the Atmel AVR, some are very easy to find and some are more obscure. Unfortunately Google does not bring the most useful sites to the fore and the best sites I have found have been from the AVR dedicated forum.
The following are sites that I have found useful.
Assembler
The best way to achieve the fastest operation from any micro-controller is to use assembly language. Interpreted languages are too slow and compilers, whilst being highly optimised do not provide you with the exact program execution timing required for speed critical applications. For non speed critical applications, and in most cases, compilers will be fine, as compilers optimise code as much as possible. However there may be additions in the code that an assembler programmer would not include.
Interpreted languages are great where speed is of no concern.
Assembly programming appears to be very complicated and probably frightens most of us away! But the following tutorials/books may help dispel that fear.
Assembler tutorial and book: This is a great book that starts from the basics - avr-asm-tutorial
Assembler tutorial: Another great source to learn assembler - avrbeginners
Flowchart/Assembler: algrom - this is a very sophisticated flowchart/assembler program that really helps in designing assembler code very quickly. The author is Gennady Gromov - ab(at)algrom.net, and he is very responsive to questions regarding this excellent program.
Arduino
Arduino - this is the home of the Arduino project - Arduino
Arduino Cookbook - loads of ideas and useful code for many types of projects, some very simple and some much more sophisticated - Arduino Cookbook
Forum
This is a great forum where you will find loads of AVR information: AVRFreaks