- Main Page
- Modules
- Data Structures
- Files
- Related Pages

# compiler.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures
union | Union32
union | Union16
## Defines
#define | LITTLE_ENDIAN
#define | bool Bool
#define | PASS 0
#define | FAIL 1
#define | _MEM_TYPE_BIT_
#define | _MEM_TYPE_FAST_
#define | _MEM_TYPE_MEDFAST_
#define | _MEM_TYPE_MEDSLOW_
#define | _MEM_TYPE_SLOW_
#define | INTEL_ALIGNMENT LITTLE_ENDIAN
#define | MOTOROLA_ALIGNMENT BIG_ENDIAN
#define | MSB(u16) (((U8* )&u16)[1])
#define | LSB(u16) (((U8* )&u16)[0])
#define | MSW(u32) (((U16*)&u32)[1])
#define | LSW(u32) (((U16*)&u32)[0])
#define | MSB0(u32) (((U8* )&u32)[3])
#define | MSB1(u32) (((U8* )&u32)[2])
#define | MSB2(u32) (((U8* )&u32)[1])
#define | MSB3(u32) (((U8* )&u32)[0])
#define | LSB0(u32) MSB3(u32)
#define | LSB1(u32) MSB2(u32)
#define | LSB2(u32) MSB1(u32)
#define | LSB3(u32) MSB0(u32)
#define | Le16(b)
#define | Le32(b)
#define | htons(a) Le16(a)
#define | ntohs(a) htons(a)
#define | htonl(a) Le32(a)
#define | ntohl(a) htonl(a)
#define | ENABLE 1
#define | ENABLED 1
#define | DISABLED 0
#define | DISABLE 0
#define | FALSE (0==1)
#define | TRUE (1==1)
#define | true TRUE
#define | false FALSE
#define | KO 0
#define | OK 1
#define | OFF 0
#define | ON 1
#define | NULL 0
#define | CLR 0
#define | SET 1
#define | LOW(U16) ((Uchar)U16)
#define | HIGH(U16) ((Uchar)(U16>>8))
#define | TST_BIT_X(addrx, mask) (*addrx & mask)
#define | SET_BIT_X(addrx, mask) (*addrx = (*addrx | mask))
#define | CLR_BIT_X(addrx, mask) (*addrx = (*addrx & ~mask))
#define | OUT_X(addrx, value) (*addrx = value)
#define | IN_X(addrx) (*addrx)
#define | Max(a, b) ( (a)>(b) ? (a) : (b) )
#define | Min(a, b) ( (a)<(b) ? (a) : (b) )
#define | Upper(val, n) ( ((val)+(n)) & ~((n)-1) )
#define | Align_up(val, n) ( ((val)+(n)-1) & ~((n)-1) )
#define | Align_down(val, n) ( (val) & ~((n)-1) )
#define | Long_call(addr) ((*(void (_ConstType_*)(void))(addr))())
#define | SET_SFR_BIT(sfr_reg, bit_pos, bit_val) { sfr_reg &= ~(1<<(bit_pos)); sfr_reg |= ((bit_val)<<(bit_pos));}
#define | bit_is_clear(PORT, POSITION) ((PORT & (1<<POSITION)) == 0 )
#define | bit_is_set(PORT, POSITION) ((PORT & (1<<POSITION)) != 0 )
#define | TID_GUARD(proc) ((__TID__ & 0x7FF0) != ((90 << 8) | ((proc) << 4)))
## Typedefs
typedef float | Float16
typedef unsigned char | U8
typedef unsigned short | U16
typedef unsigned long | U32
typedef signed char | S8
typedef signed short | S16
typedef long | S32
typedef unsigned char | Bool
typedef U8 | Status
typedef Bool | Status_bool
typedef unsigned char | Uchar
typedef unsigned char | Uint8
typedef unsigned int | Uint16
typedef unsigned long int | Uint32
typedef char | Int8
typedef int | Int16
typedef long int | Int32
typedef unsigned char | Byte
typedef unsigned int | Word
typedef unsigned long int | DWord
typedef char | p_uart_ptchar
typedef char | r_uart_ptchar

## Detailed Description

This file redefines dedicated IAR EWAVR and GNU GCC keywords in order to ensure that any source file can be processed by these compilers.

- Compiler: IAR EWAVR and GNU GCC for AVR
- Supported devices: AT90USB1287, AT90USB1286, AT90USB647, AT90USB646

Author:
  Atmel Corporation: http://www.atmel.com
  Support and FAQ: http://support.atmel.no/

Definition in file compiler.h.

## Define Documentation

#define LITTLE_ENDIAN

Definition at line 49 of file compiler.h.

#define bool Bool

Definition at line 65 of file compiler.h.

#define PASS 0

Definition at line 66 of file compiler.h.

#define FAIL 1

Definition at line 67 of file compiler.h.

#define _MEM_TYPE_BIT_

Definition at line 78 of file compiler.h.

#define _MEM_TYPE_FAST_

Definition at line 79 of file compiler.h.

#define _MEM_TYPE_MEDFAST_

Definition at line 80 of file compiler.h.

#define _MEM_TYPE_MEDSLOW_

Definition at line 81 of file compiler.h.

#define _MEM_TYPE_SLOW_

Definition at line 82 of file compiler.h.

#define INTEL_ALIGNMENT LITTLE_ENDIAN

Definition at line 194 of file compiler.h.

#define MOTOROLA_ALIGNMENT BIG_ENDIAN

Definition at line 195 of file compiler.h.

#define MSB | ( | u16 |  | ) | (((U8* )&u16)[1])

Definition at line 199 of file compiler.h.

Referenced by hid_get_hid_descriptor(), hid_get_report_descriptor(), usb_get_descriptor(), usb_get_interface(), usb_hid_get_idle(), usb_hid_set_idle(), and usb_set_interface().

#define LSB | ( | u16 |  | ) | (((U8* )&u16)[0])

Definition at line 200 of file compiler.h.

Referenced by hid_get_hid_descriptor(), hid_get_report_descriptor(), usb_get_descriptor(), usb_get_interface(), usb_hid_get_idle(), usb_hid_set_idle(), and usb_set_interface().

#define MSW | ( | u32 |  | ) | (((U16*)&u32)[1])

Definition at line 201 of file compiler.h.

#define LSW | ( | u32 |  | ) | (((U16*)&u32)[0])

Definition at line 202 of file compiler.h.

#define MSB0 | ( | u32 |  | ) | (((U8* )&u32)[3])

Definition at line 203 of file compiler.h.

#define MSB1 | ( | u32 |  | ) | (((U8* )&u32)[2])

Definition at line 204 of file compiler.h.

#define MSB2 | ( | u32 |  | ) | (((U8* )&u32)[1])

Definition at line 205 of file compiler.h.

#define MSB3 | ( | u32 |  | ) | (((U8* )&u32)[0])

Definition at line 206 of file compiler.h.

#define LSB0 | ( | u32 |  | ) | MSB3(u32)

Definition at line 207 of file compiler.h.

#define LSB1 | ( | u32 |  | ) | MSB2(u32)

Definition at line 208 of file compiler.h.

#define LSB2 | ( | u32 |  | ) | MSB1(u32)

Definition at line 209 of file compiler.h.

#define LSB3 | ( | u32 |  | ) | MSB0(u32)

Definition at line 210 of file compiler.h.

#define Le16 | ( | b |  | ) |

Value:

    (  ((U16)(     (b) &   0xFF) << 8)  \
       |  (     ((U16)(b) & 0xFF00) >> 8)  \
       )

Definition at line 227 of file compiler.h.

#define Le32 | ( | b |  | ) |

Value:

    (  ((U32)(     (b) &       0xFF) << 24)  \
       |  ((U32)((U16)(b) &     0xFF00) <<  8)  \
       |  (     ((U32)(b) &   0xFF0000) >>  8)  \
       |  (     ((U32)(b) & 0xFF000000) >> 24)  \
       )

Definition at line 231 of file compiler.h.

#define htons | ( | a |  | ) | Le16(a)

Definition at line 243 of file compiler.h.

#define ntohs | ( | a |  | ) | htons(a)

Definition at line 244 of file compiler.h.

#define htonl | ( | a |  | ) | Le32(a)

Definition at line 245 of file compiler.h.

#define ntohl | ( | a |  | ) | htonl(a)

Definition at line 246 of file compiler.h.

#define ENABLE 1

Definition at line 256 of file compiler.h.

Referenced by usb_general_interrupt().

#define ENABLED 1

Definition at line 257 of file compiler.h.

Referenced by usb_clear_feature(), usb_general_interrupt(), usb_generate_remote_wakeup(), and usb_set_feature().

#define DISABLED 0

Definition at line 258 of file compiler.h.

Referenced by usb_clear_feature(), usb_device_task(), usb_generate_remote_wakeup(), and usb_set_feature().

#define DISABLE 0

Definition at line 259 of file compiler.h.

Referenced by usb_general_interrupt().

#define FALSE (0==1)

Definition at line 260 of file compiler.h.

Referenced by hid_get_hid_descriptor(), hid_get_report_descriptor(), usb_clear_feature(), usb_device_task(), usb_general_interrupt(), usb_generate_remote_wakeup(), usb_get_descriptor(), usb_get_interface(), usb_get_status(), usb_init_device(), usb_set_configuration(), usb_set_feature(), usb_set_interface(), usb_user_get_descriptor(), and usb_user_read_request().

#define TRUE (1==1)

Definition at line 261 of file compiler.h.

Referenced by hid_get_hid_descriptor(), hid_get_report_descriptor(), usb_clear_feature(), usb_device_task(), usb_general_interrupt(), usb_get_descriptor(), usb_get_interface(), usb_get_status(), usb_set_configuration(), usb_set_feature(), usb_set_interface(), usb_user_get_descriptor(), and usb_user_read_request().

#define true TRUE

Definition at line 262 of file compiler.h.

#define false FALSE

Definition at line 263 of file compiler.h.

#define KO 0

Definition at line 266 of file compiler.h.

#define OK 1

Definition at line 267 of file compiler.h.

#define OFF 0

Definition at line 268 of file compiler.h.

#define ON 1

Definition at line 269 of file compiler.h.

#define NULL 0

Definition at line 271 of file compiler.h.

#define CLR 0

Definition at line 274 of file compiler.h.

#define SET 1

Definition at line 275 of file compiler.h.

#define LOW | ( | U16 |  | ) | ((Uchar)U16)

Definition at line 279 of file compiler.h.

#define HIGH | ( | U16 |  | ) | ((Uchar)(U16>>8))

Definition at line 280 of file compiler.h.

#define TST_BIT_X | ( | addrx,
|  | mask |  | ) | (*addrx & mask)

Definition at line 281 of file compiler.h.

#define SET_BIT_X | ( | addrx,
|  | mask |  | ) | (*addrx = (*addrx | mask))

Definition at line 282 of file compiler.h.

#define CLR_BIT_X | ( | addrx,
|  | mask |  | ) | (*addrx = (*addrx & ~mask))

Definition at line 283 of file compiler.h.

#define OUT_X | ( | addrx,
|  | value |  | ) | (*addrx = value)

Definition at line 284 of file compiler.h.

#define IN_X | ( | addrx |  | ) | (*addrx)

Definition at line 285 of file compiler.h.

#define Max | ( | a,
|  | b |  | ) | ( (a)>(b) ? (a) : (b) )

Definition at line 287 of file compiler.h.

#define Min | ( | a,
|  | b |  | ) | ( (a)<(b) ? (a) : (b) )

Definition at line 288 of file compiler.h.

#define Upper | ( | val,
|  | n |  | ) | ( ((val)+(n)) & ~((n)-1) )

Definition at line 297 of file compiler.h.

#define Align_up | ( | val,
|  | n |  | ) | ( ((val)+(n)-1) & ~((n)-1) )

Definition at line 306 of file compiler.h.

#define Align_down | ( | val,
|  | n |  | ) | ( (val) & ~((n)-1) )

Definition at line 315 of file compiler.h.

#define Long_call | ( | addr |  | ) | ((*(void (_ConstType_*)(void))(addr))())

Definition at line 332 of file compiler.h.

#define SET_SFR_BIT | ( | sfr_reg,
|  | bit_pos,
|  | bit_val |  | ) | { sfr_reg &= ~(1<<(bit_pos)); sfr_reg |= ((bit_val)<<(bit_pos));}

Definition at line 344 of file compiler.h.

#define bit_is_clear | ( | PORT,
|  | POSITION |  | ) | ((PORT & (1<<POSITION)) == 0 )

Definition at line 354 of file compiler.h.

#define bit_is_set | ( | PORT,
|  | POSITION |  | ) | ((PORT & (1<<POSITION)) != 0 )

Definition at line 364 of file compiler.h.

#define TID_GUARD | ( | proc |  | ) | ((__TID__ & 0x7FF0) != ((90 << 8) | ((proc) << 4)))

Definition at line 370 of file compiler.h.

## Typedef Documentation

typedef float Float16

Definition at line 52 of file compiler.h.

typedef unsigned char U8

Definition at line 54 of file compiler.h.

typedef unsigned short U16

Definition at line 55 of file compiler.h.

typedef unsigned long U32

Definition at line 56 of file compiler.h.

typedef signed char S8

Definition at line 57 of file compiler.h.

typedef signed short S16

Definition at line 58 of file compiler.h.

typedef long S32

Definition at line 59 of file compiler.h.

typedef unsigned char Bool

Definition at line 60 of file compiler.h.

typedef U8 Status

Definition at line 63 of file compiler.h.

typedef Bool Status_bool

Definition at line 64 of file compiler.h.

typedef unsigned char Uchar

Definition at line 85 of file compiler.h.

typedef unsigned char Uint8

Definition at line 88 of file compiler.h.

typedef unsigned int Uint16

Definition at line 89 of file compiler.h.

typedef unsigned long int Uint32

Definition at line 90 of file compiler.h.

typedef char Int8

Definition at line 92 of file compiler.h.

typedef int Int16

Definition at line 93 of file compiler.h.

typedef long int Int32

Definition at line 94 of file compiler.h.

typedef unsigned char Byte

Definition at line 96 of file compiler.h.

typedef unsigned int Word

Definition at line 97 of file compiler.h.

typedef unsigned long int DWord

Definition at line 98 of file compiler.h.

typedef char p_uart_ptchar

Definition at line 124 of file compiler.h.

typedef char r_uart_ptchar

Definition at line 125 of file compiler.h.