Data Structures | Defines | Typedefs

# compiler.h File Reference

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

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: ATmega32U4

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 51 of file compiler.h.

#define bool Bool

Definition at line 67 of file compiler.h.

#define PASS 0

Definition at line 68 of file compiler.h.

#define FAIL 1

Definition at line 69 of file compiler.h.

#define _MEM_TYPE_BIT_

Definition at line 80 of file compiler.h.

#define _MEM_TYPE_FAST_

Definition at line 81 of file compiler.h.

#define _MEM_TYPE_MEDFAST_

Definition at line 82 of file compiler.h.

#define _MEM_TYPE_MEDSLOW_

Definition at line 83 of file compiler.h.

#define _MEM_TYPE_SLOW_

Definition at line 84 of file compiler.h.

#define INTEL_ALIGNMENT LITTLE_ENDIAN

Definition at line 179 of file compiler.h.

#define MOTOROLA_ALIGNMENT BIG_ENDIAN

Definition at line 180 of file compiler.h.

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

Definition at line 184 of file compiler.h.

Referenced by flash_wr_block(), 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 185 of file compiler.h.

Referenced by flash_wr_block(), 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 186 of file compiler.h.

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

Definition at line 187 of file compiler.h.

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

Definition at line 188 of file compiler.h.

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

Definition at line 189 of file compiler.h.

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

Definition at line 190 of file compiler.h.

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

Definition at line 191 of file compiler.h.

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

Definition at line 192 of file compiler.h.

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

Definition at line 193 of file compiler.h.

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

Definition at line 194 of file compiler.h.

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

Definition at line 195 of file compiler.h.

#define Le16 | ( |  | b ) |

Value:

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

Definition at line 212 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 216 of file compiler.h.

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

Definition at line 228 of file compiler.h.

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

Definition at line 229 of file compiler.h.

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

Definition at line 230 of file compiler.h.

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

Definition at line 231 of file compiler.h.

#define ENABLE 1

Definition at line 241 of file compiler.h.

#define ENABLED 1

Definition at line 242 of file compiler.h.

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

#define DISABLED 0

Definition at line 243 of file compiler.h.

Referenced by usb_clear_feature(), and usb_generate_remote_wakeup().

#define DISABLE 0

Definition at line 244 of file compiler.h.

#define FALSE (0==1)

Definition at line 245 of file compiler.h.

Referenced by ADC_Init(), ADC_Wait(), flash_wr_block(), hid_get_hid_descriptor(), hid_get_report_descriptor(), is_mouse_event(), mouse_task(), mouse_task_init(), PWM_DecrementDutyCycle(), PWM_IncrementDutyCycle(), Time_Left(), 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 246 of file compiler.h.

Referenced by ADC_ISR(), flash_wr_block(), hid_get_hid_descriptor(), hid_get_report_descriptor(), is_mouse_event(), mouse_task(), mouse_task_init(), PWM_DecrementDutyCycle(), PWM_IncrementDutyCycle(), spi_init_master(), spi_init_slave(), Time_Left(), 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 247 of file compiler.h.

#define false FALSE

Definition at line 248 of file compiler.h.

#define KO 0

Definition at line 251 of file compiler.h.

#define OK 1

Definition at line 252 of file compiler.h.

#define OFF 0

Definition at line 253 of file compiler.h.

#define ON 1

Definition at line 254 of file compiler.h.

#define NULL 0

Definition at line 256 of file compiler.h.

#define CLR 0

Definition at line 259 of file compiler.h.

#define SET 1

Definition at line 260 of file compiler.h.

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

Definition at line 264 of file compiler.h.

Referenced by flash_wr_block().

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

Definition at line 265 of file compiler.h.

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

Definition at line 266 of file compiler.h.

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

Definition at line 267 of file compiler.h.

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

Definition at line 268 of file compiler.h.

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

Definition at line 269 of file compiler.h.

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

Definition at line 270 of file compiler.h.

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

Definition at line 272 of file compiler.h.

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

Definition at line 273 of file compiler.h.

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

Definition at line 282 of file compiler.h.

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

Definition at line 291 of file compiler.h.

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

Definition at line 300 of file compiler.h.

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

Definition at line 317 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 329 of file compiler.h.

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

Definition at line 339 of file compiler.h.

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

Definition at line 349 of file compiler.h.

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

Definition at line 355 of file compiler.h.

## Typedef Documentation

typedef float Float16

Definition at line 54 of file compiler.h.

typedef unsigned char U8

Definition at line 56 of file compiler.h.

typedef unsigned short U16

Definition at line 57 of file compiler.h.

typedef unsigned long U32

Definition at line 58 of file compiler.h.

typedef signed char S8

Definition at line 59 of file compiler.h.

typedef signed short S16

Definition at line 60 of file compiler.h.

typedef long S32

Definition at line 61 of file compiler.h.

typedef unsigned char Bool

Definition at line 62 of file compiler.h.

typedef U8 Status

Definition at line 65 of file compiler.h.

typedef Bool Status_bool

Definition at line 66 of file compiler.h.

typedef unsigned char Uchar

Definition at line 87 of file compiler.h.

typedef unsigned char Uint8

Definition at line 90 of file compiler.h.

typedef unsigned int Uint16

Definition at line 91 of file compiler.h.

typedef unsigned long int Uint32

Definition at line 92 of file compiler.h.

typedef char Int8

Definition at line 94 of file compiler.h.

typedef int Int16

Definition at line 95 of file compiler.h.

typedef long int Int32

Definition at line 96 of file compiler.h.

typedef unsigned char Byte

Definition at line 98 of file compiler.h.

typedef unsigned int Word

Definition at line 99 of file compiler.h.

typedef unsigned long int DWord

Definition at line 100 of file compiler.h.

typedef char p_uart_ptchar

Definition at line 126 of file compiler.h.

typedef char r_uart_ptchar

Definition at line 127 of file compiler.h.