Blame | Last modification | View Log | RSS feed
/*----------------------------------------------------------------------------*//* in430.h - Intrinsic function prototypes and convenience mapping *//* macros for migrating code from the IAR platform. *//* *//* Ver | dd mmm yyyy | Who | Description of changes *//* =====|=============|======|============================================= *//* 0.01| 06 Apr 2004 | A.D. | First Prototype *//* 0.02| 22 Jun 2004 | A.D. | File reformatted *//* *//*----------------------------------------------------------------------------*/#ifndef __IN430_H#define __IN430_H/*----------------------------------------------------------------------------*//* COMPILER INTRINSIC FUNCTIONS *//*----------------------------------------------------------------------------*/void _enable_interrupts(void);void _disable_interrupts(void);unsigned short _bic_SR_register(unsigned short mask);unsigned short _bic_SR_register_on_exit(unsigned short mask);unsigned short _bis_SR_register(unsigned short mask);unsigned short _bis_SR_register_on_exit(unsigned short mask);unsigned short _get_SR_register(void);unsigned short _get_SR_register_on_exit(void);unsigned short _swap_bytes(unsigned short src);void _nop(void);void _never_executed(void);/*----------------------------------------------------------------------------*//* INTRINSIC MAPPING FOR IAR V1.XX *//*----------------------------------------------------------------------------*/#define _EINT() _enable_interrupts()#define _DINT() _disable_interrupts()#define _BIC_SR(x) _bic_SR_register(x)#define _BIC_SR_IRQ(x) _bic_SR_register_on_exit(x)#define _BIS_SR(x) _bis_SR_register(x)#define _BIS_SR_IRQ(x) _bis_SR_register_on_exit(x)#define _SWAP_BYTES(x) _swap_bytes(x)#define _NOP() _nop()/*----------------------------------------------------------------------------*//* INTRINSIC MAPPING FOR IAR V2.XX/V3.XX *//*----------------------------------------------------------------------------*/#define __enable_interrupt() _enable_interrupts()#define __disable_interrupt() _disable_interrupts()#define __bic_SR_register(x) _bic_SR_register(x)#define __bic_SR_register_on_exit(x) _bic_SR_register_on_exit(x)#define __bis_SR_register(x) _bis_SR_register(x)#define __bis_SR_register_on_exit(x) _bis_SR_register_on_exit(x)#define __get_SR_register() _get_SR_register()#define __get_SR_register_on_exit() _get_SR_register_on_exit()#define __swap_bytes(x) _swap_bytes(x)#define __no_operation() _nop()#endif /* __IN430_H */