What is the difference between Codevision AVR C and Atmel AVR C compiler?
There isn't really much difference there may be some differences in which chips are supported under Codevision so you may want to check for the chip you plan to use.
There are different IDE's available Codevsion has its own IDE and there are different IDE to choose from for Atmel's avr C (like AVR Studio 4) But you could also use WinAVR which is uses GCC, or you could use GCC with another IDE of your choice or you can go without the IDE entirely. If you do use GCC this is a good website to check out AVR Libc. For even more information and tutorials about AVR you should check AVR Freaks.
Overall they're fairly similar
There are a few things that I'm aware of:
- In Codevision you can refer to the individual bits (pins) in a port directly like:
PINA.1rather than shifting them in.
- Storing data in program memory is a little more user friendly in Codevision
- The Codevision compiler supplies a few pseudo registers that you can use to make sure a read from a 16-bit register is atomic.
- Interrupts are installed differently