#ifndef __MAIN_H__ #define __MAIN_H__ #include "type.h" //#define _USB_LOW_SPEED_ // Change this comment to make Full/Low speed // SYSCLK frequency in Hz #define SYSCLK 48000000UL extern __xdata void (*main_loop_prologue)(); extern volatile __xdata u32 global_ms; extern volatile __xdata u32 tickcount; extern volatile __xdata u8 sys_state; #define SYS_PERIODIC_ACTIVE 0x01 #define SYS_POLLING_ACTIVE 0x02 #define SYS_LOG_ACTIVE 0x04 extern volatile u8 timeout_10ms; // Define Endpoint Packet Sizes #ifdef _USB_LOW_SPEED_ // This value can be 8,16,32,64 depending on device speed, see USB spec #define PACKET_SIZE_EP0 0x40 #else #define PACKET_SIZE_EP0 0x40 #endif /* _USB_LOW_SPEED_ */ // Can range 0 - 1024 depending on data and transfer type #define PACKET_SIZE_EP1 0x0010 #define PACKET_SIZE_EP2 0x0040 #define PACKET_SIZE_EP3 0x0040 #define CRITICAL_GLOBAL(func) \ { \ EA = 0; \ { \ func; \ } \ EA = 1; \ } #if (defined(__SDCC_REVISION) && (__SDCC_REVISION > 4818)) \ || (defined(SDCC_REVISION) && (SDCC_REVISION > 4818)) // upper than sdcc-2.7.0? #define USE_ASM_FOR_SFR_MANIP #define SHARP # #endif //#define SPI_DEBUG_BIT_BANG #define FIFO_TYPE char #define FIFO_SIZE_T unsigned char #define FIFO_BUFFER_STORAGE __xdata #endif /* __MAIN_H__ */