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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ICCV8 <strong>for</strong> AVR – C Compiler <strong>for</strong> Atmel AVR#pragma <strong>avr</strong>_fuse (fuses0, fuses1, fuses2, fuses3, fuses4, fuses5)Depending on device, <strong>the</strong>re are different numbers of fuse bytes. This pragmastarts with LOW FUSE byte, followed by HIGH <strong>and</strong> EXTENDED FUSE bytes.For XMEGA, fuses3 byte is not used (yet) <strong>and</strong> must be set to 0xFF.#pragma <strong>avr</strong>_lockbits (lockbits)Currently, all AVR devices have just one byte <strong>for</strong> lock bits <strong>and</strong> <strong>the</strong> value 0xFCdisallows reading out <strong>the</strong> memories <strong>and</strong> changing <strong>the</strong> fuses by a hardwareprogrammer.#pragma data:user_signaturesexample:#pragma data:user_signaturesunsigned char a[] = {“Copyright (C) 2013 ImageCraft” };#pragma data:dataXMEGA only: “user signatures” is an extra page of flash memory in <strong>the</strong> xmegadevices, fully accessable by software <strong>and</strong> not deleted by chip erase. Since youcan place a large amount of data, it uses <strong>the</strong> same syntax as <strong>the</strong> #pragmadata:eeprom <strong>for</strong> initialized EEPROM data. There<strong>for</strong>e, you must also end <strong>the</strong>definition with #pragma data:data.115

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

Saved successfully!

Ooh no, something went wrong!