CrossWorks for AVR
Preface
Introduction
What is CrossWorks?
What we dont tell you...
Release notes
Activating your product
Text conventions
Standard syntactic metalanguage
Requesting support and reporting problems
CrossStudio Reference
CrossStudio Tutorial
Creating a project
Managing files in a project
Setting project options
Building projects
Exploring projects
Using the debugger
Low-level debugging
Overview
The title bar
The menu bar
The status bar
The editing workspace
Project management
Overview
Creating a project
Adding existing files to a project
Adding new files to a project
Removing a file, folder, project, or project link
Project properties
Project configurations
Project dependencies and build order
Project macros
Building projects
Source control
Debug expressions
Basic editing
Navigation
Bookmarks
Changing text
Using the clipboard
Drag and drop editing
Undo and redo
Indentation
File management
Find and replace
Regular expressions
Advanced editor features
Code templates
Memory map editor
Package management
Linking and section placement
CrossStudio Windows
Clipboard ring window
Breakpoints window
Call stack window
Execution counts window
Find and replace window
Globals window
Locals window
Memory window
Memory usage window
Register windows
Threads window
Trace window
Watch window
Help window
Output window
Project explorer
Properties window
Source navigator window
Symbol browser
Targets window
Terminal emulator window
Target interfaces
AVR simulator target interface
Atmel JTAG ICE
Atmel JTAGICE mkII
Atmel STK500 High Voltage
Atmel STK500-ISP/AVRISP
Atmel AVRISP mkII
Dialogs
Debug file search editor
Environment Options Dialog
Building options
Debugging options
Environment options
Source Control options
Text Editor options
Language options
CrossStudio menu summary
File menu
New menu
Edit menu
Clipboard menu
Clipboard Ring menu
Macros menu
Edit Selection menu
Bookmarks menu
Advanced menu
View menu
Other Windows menu
Browser menu
Toolbars menu
Search menu
Project menu
Build menu
Debug menu
Debug Control menu
Breakpoint menu
Debug Windows menu
Target menu
Tools menu
Window menu
Help menu
C Compiler Reference
Command line options
-D (Define macro symbol)
-g (Generate debugging information)
-I (Define user include directories)
-J (Define system include directories)
-msd (Treat double as float)
-o (Set output file name)
-O (Optimize code generation)
-Or- (Disable register allocation)
-Org (Register allocation of locals and global addresses)
-Orl (Register allocation of locals)
-Rc (Set default code section name)
-Rd (Set default initialised data section name)
-Rk (Set default read-only data section name)
-Rv (Set default vector section name)
-Rz (Set default zeroed data section name)
-V (Version information)
-w (Suppress warnings)
-we (Treat warnings as errors)
Functions
Interrupt functions
Monitor functions
Top-level functions
Strings
Code-space strings
GSM 03.38 strings
Pragmas
#pragma codeseg
#pragma dataseg
#pragma constseg
#pragma vectorseg
#pragma zeroedseg
#pragma linklib
Data definition
Type-based enumerations
Section reference
Preprocessor
Preprocessor predefined symbols
Assembly language interface
Data representation
External naming convention
Register usage
Parameter passing
Returning values
Examples
Customizing runtime behavior
Floating-point implementation
Customizing putchar
Extending I/O library functions
Diagnostics
Pre-processor warning messages
Pre-processor error messages
Compiler warning messages
Compiler error messages
Extensions summary
Tasking Library Tutorial
Overview
Tasks
Event sets
Semaphores
Message queues
Byte queues
Global interrupts control
Timer support
Interrupt service routines
Memory areas
Library Reference
AVR Library Reference
<ctl_api.h> - Tasking functions
ctl_byte_queue_init
ctl_byte_queue_post
ctl_byte_queue_post_nb
ctl_byte_queue_receive
ctl_byte_queue_receive_nb
ctl_current_time
ctl_events_init
ctl_events_set_clear
ctl_events_wait
ctl_get_current_time
ctl_get_ticks_per_second
ctl_global_interrupts_disable
ctl_global_interrupts_enable
ctl_global_interrupts_re_enable_from_isr
ctl_global_interrupts_set
ctl_global_interrupts_un_re_enable_from_isr
ctl_handle_error
ctl_increment_tick_from_isr
ctl_libc_mutex
ctl_memory_area_allocate
ctl_memory_area_free
ctl_memory_area_init
ctl_message_queue_init
ctl_message_queue_post
ctl_message_queue_post_nb
ctl_message_queue_receive
ctl_message_queue_receive_nb
ctl_semaphore_init
ctl_semaphore_signal
ctl_semaphore_wait
ctl_timeout_wait
ctl_task_die
ctl_task_executing
ctl_task_init
ctl_task_list
ctl_task_remove
ctl_task_reschedule
ctl_task_run
ctl_task_set_priority
ctl_timeout_wait
ctl_timeslice_period
<cruntime.h> - C runtime support library
__int16_asr
__int16_asr_asgn
__int16_div
__int16_div_asgn
__int16_lsl
__int16_lsl_asgn
__int16_lsr
__int16_lsr_asgn
__int16_mod
__int16_mod_asgn
__int16_mul
__int16_mul_asgn
__int16_mul_8x8
__int16_to_float32
__int32_asr
__int32_asr_asgn
__int32_div
__int32_div_asgn
__int32_lsl
__int32_lsl_asgn
__int32_lsr
__int32_lsr_asgn
__int32_mod
__int32_mod_asgn
__int32_mul
__int32_mul_asgn
__int32_mul_16x16
__int32_to_float32
__int64_asr
__int64_asr_asgn
__int64_div
__int64_div_asgn
__int64_lsl
__int64_lsl_asgn
__int64_lsr
__int64_lsr_asgn
__int64_mod
__int64_mod_asgn
__int64_mul
__int64_mul_asgn
__int64_mul_32x32
__int64_to_float32
__float32_add
__float32_add_1
__float32_add_asgn
__float32_div
__float32_div_asgn
__float32_eq
__float32_eq_0
__float32_lt
__float32_lt_0
__float32_mul
__float32_mul_asgn
__float32_neg
__float32_sqr
__float32_sub
__float32_add_asgn
__float32_to_float64
__float32_to_int16
__float32_to_int32
__float32_to_int64
__float32_to_uint16
__float32_to_uint32
__float32_to_uint64
__float64_add
__float64_add_1
__float64_add_asgn
__float64_div
__float64_div_asgn
__float64_eq
__float64_eq_0
__float64_lt
__float64_lt_0
__float64_mul
__float64_mul_asgn
__float64_neg
__float64_sqr
__float64_sub
__float64_add_asgn
__float64_to_float32
__uint16_div
__uint16_div_asgn
__uint16_mod
__uint16_mod_asgn
__uint16_mul_8x8
__uint16_to_float32
__uint32_div
__uint32_div_asgn
__uint32_mod
__uint32_mod_asgn
__uint32_mul_16x16
__uint32_to_float32
__uint64_div
__uint64_div_asgn
__uint64_mod
__uint64_mod_asgn
__uint64_mul_32x32
__uint64_to_float32
<cross_studio_io.h> - Debug I/O library
debug_break
debug_clearerr
debug_exit
debug_fclose
debug_feof
debug_ferror
debug_fflush
debug_fgetc
debug_fgetpos
debug_fgets
debug_filesize
debug_fopen
debug_fprintf
debug_fputc
debug_fputs
debug_fread
debug_freopen
debug_fscanf
debug_fseek
debug_setpos
debug_ftell
debug_fwrite
debug_getargs
debug_getch
debug_getchar
debug_getd
debug_getenv
debug_getf
debug_geti
debug_getl
debug_getll
debug_gets
debug_getu
debug_getul
debug_getull
debug_kbhit
debug_perror
debug_printf
debug_putchar
debug_puts
debug_remove
debug_rename
debug_rewind
debug_runtime_error
debug_scanf
debug_system
debug_time
debug_tmpfile
debug_tmpnam
debug_ungetc
debug_vfprintf
debug_vfscanf
debug_vprintf
debug_vscanf
<ina90.h>-IAR EWA90 compability header
_BREAK
_CLI
_NOP
_OPC
_SEI
_SLEEP
_WDR
<inavr.h>-IAR EWAVR compability header
__bic_SR_register
__bis_SR_register
__breakpoint
__delay_cycles
__disable_interrupt
__enable_interrupt
__insert_opcode
__no_operation
__save_interrupt
__sleep
__swap_bytes
__swap_nibbles
__restore_interrupt
__watchdog_reset
<pgmspace.h>-IAR compatibility header
memcpy_P
memcmp_P
printf_P
puts_P
scanf_P
snprintf_P
sprintf_P
strcat_P
strcmp_P
strcpy_P
strlen_P
strcat_P
strncmp_P
strncpy_P
sscanf_P
vscanf_P
vprintf_P
vsnprintf_P
vsprintf_P
vsscanf_P
<string_c.h> - String handling
memcmp_c
memcpy_c
strcat_c
strcmp_c
strcpy_c
strlen_c
strncat_c
strncmp_c
strncpy_c
<stdio_c.h> - Input/output functions
printf_c
puts_c
scanf_c
snprintf_c
sprintf_c
sscanf_c
vprintf_c
vscanf_c
vsnprintf_c
vsprintf_c
vsscanf_c
AVR Device library
<AT76C.h>
<AT90CAN128.h>
<AT90CAN32.h>
<AT90CAN64.h>
<AT90PWM2.h>
<AT90PWM2B.h>
<AT90PWM3.h>
<AT90PWM3B.h>
<AT90S1200.h>
<AT90S2313.h>
<AT90S2323.h>
<AT90S2343.h>
<AT90S4414.h>
<AT90S4433.h>
<AT90S4434.h>
<AT90S8515.h>
<AT90S8535.h>
<AT90USB1286.h>
<AT90USB1287.h>
<AT90USB162.h>
<AT90USB646.h>
<AT90USB647.h>
<ATmega128.h>
<ATmega1280.h>
<ATmega1281.h>
<ATmega16.h>
<ATmega161.h>
<ATmega162.h>
<ATmega163.h>
<ATmega164P.h>
<ATmega165.h>
<ATmega165P.h>
<ATmega168.h>
<ATmega168P.h>
<ATmega169.h>
<ATmega169P.h>
<ATmega2560.h>
<ATmega2561.h>
<ATmega32.h>
<ATmega323.h>
<ATmega324P.h>
<ATmega325.h>
<ATmega3250.h>
<ATmega3250P.h>
<ATmega325P.h>
<ATmega329.h>
<ATmega3290.h>
<ATmega3290P.h>
<ATmega329P.h>
<ATmega406.h>
<ATmega48.h>
<ATmega48P.h>
<ATmega64.h>
<ATmega640.h>
<ATmega644.h>
<ATmega644P.h>
<ATmega645.h>
<ATmega6450.h>
<ATmega649.h>
<ATmega6490.h>
<ATmega8.h>
<ATmega8515.h>
<ATmega8535.h>
<ATmega88.h>
<ATmega88P.h>
<ATtiny11.h>
<ATtiny12.h>
<ATtiny13.h>
<ATtiny15.h>
<ATtiny22.h>
<ATtiny2313.h>
<ATtiny24.h>
<ATtiny25.h>
<ATtiny26.h>
<ATtiny261.h>
<ATtiny28.h>
<ATtiny44.h>
<ATtiny45.h>
<ATtiny461.h>
<ATtiny84.h>
<ATtiny85.h>
<ATtiny861.h>
Standard C Library Reference
<assert.h> - Diagnostics
assert
<ctype.h> - Character handling
isalnum
isalpha
isblank
iscntrl
isdigit
isgraph
isupper
isprint
ispunct
isspace
isupper
isxdigit
tolower
toupper
<errno.h> - Errors
errno
<float.h> - Float numerical limits
<limits.h> - Integer numerical limits
CHAR_BIT
CHAR_MIN
CHAR_MAX
INT_MIN
INT_MAX
LLONG_MIN
LLONG_MAX