30 lines
785 B
C
30 lines
785 B
C
#ifndef __HAL_DEFINES_H__
|
|
#define __HAL_DEFINES_H__
|
|
|
|
#define EXTERNAL_MEMORY __xdata
|
|
#define EXTERNAL_DATA __data
|
|
#define inline
|
|
|
|
#define sei() { IEN0 |= IEN0_EA; }
|
|
#define cli() { IEN0 &= ~IEN0_EA; }
|
|
|
|
#ifndef NOP
|
|
#define NOP() { __asm nop __endasm; }
|
|
#endif
|
|
#define NOP45() { NOP(); NOP(); NOP(); NOP(); NOP(); NOP(); NOP(); NOP();
|
|
|
|
#define HI(a) (uint8_t) ((uint16_t)(a) >> 8 )
|
|
#define LO(a) (uint8_t) (uint16_t)(a)
|
|
#define SET_WORD(H, L, val) { (H) = HI(val); (L) = LO(val); }
|
|
// necessary for timer registers. todo: check if necessary for others as well...
|
|
#define SET_WORD_LO_FIRST(H, L, val) {(L) = LO(val); (H) = HI(val); }
|
|
|
|
#define UNUSED(x) (void)(x);
|
|
|
|
#define USART0_P0 0
|
|
#define USART0_P1 1
|
|
#define USART1_P0 2
|
|
#define USART1_P1 3
|
|
|
|
#endif // __HAL_DEFINES_H__
|