11.07.2015 Views

Imagecraft c compiler and development environment for the atmel avr

Imagecraft c compiler and development environment for the atmel avr

Imagecraft c compiler and development environment for the atmel avr

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ICCV8 <strong>for</strong> AVR – C Compiler <strong>for</strong> Atmel AVRMacro Define(s) - When you define macros, separate <strong>the</strong>m by spaces orsemicolons. Each macro definition is in <strong>the</strong> <strong>for</strong>mname[:value] or name[=value]For example:DEBUG=1;PRINT=printfdefines two macros, DEBUG <strong>and</strong> PRINT. DEBUG has <strong>the</strong> value 1 by default <strong>and</strong>PRINT is defined as printf. This is equivalent to writing#define DEBUG 1#define PRINT printfin <strong>the</strong> source code. A common usage is to use conditional preprocessor directivesto include or exclude certain code fragments.The C Preprocessor predefines a number of macros. See Predefined Macros.Macro Undefine(s) - same syntax as Macro Define(s) but with <strong>the</strong> oppositemeaning.Enable MISRA / Lint Checks - See MISRA / Lint Code Checking <strong>for</strong> explanationsof MISRA checks. Available in <strong>the</strong> ADVANCE <strong>and</strong> PROFESSIONAL versionsonly.Enable Cross Module Type Checking - detect inconsistence in <strong>the</strong> definitions<strong>and</strong> declarations of global functions <strong>and</strong> data variables. Available in <strong>the</strong>PROFESSIONAL version only.Since <strong>the</strong> <strong>compiler</strong> encourages <strong>the</strong> use of function prototyping, this check is mostuseful <strong>for</strong> detecting accidental misdeclarations of global variables, which cancause your program to fail.Output File Format - select <strong>the</strong> choice of <strong>the</strong> output <strong>for</strong>mat. Usually a deviceprogrammer requires simple Intel HEX or Motorola S19 <strong>for</strong>mat files. If you wantsymbolic debugging, select one of <strong>the</strong> choices that include <strong>the</strong> debugging output.For example, <strong>the</strong> AVR Studio underst<strong>and</strong>s COFF output <strong>for</strong>matEnable 64-bit “double” - enabled <strong>for</strong> <strong>the</strong> PROFESSIONAL version. Specify <strong>the</strong>size of <strong>the</strong> double data type as 64 bits. See Data Type Sizes. Note that this issignificantly slower <strong>and</strong> requires larger code space than 32-bit float.Optimizations - control <strong>the</strong> levels <strong>and</strong> types of optimizations. Currently, <strong>the</strong>choices areEnable Code Compression - enabled <strong>for</strong> <strong>the</strong> ADVANCED <strong>and</strong> PROFES-SIONAL version. This invokes <strong>the</strong> Code Compressor (tm) optimizer to elimi-59

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!