www.pudn.com > DBus.rar > sysfifo.h
#ifndef __SYS_FIFO_H #define __SYS_FIFO_H /*======================================================* * SYS FIFO Buffer * *======================================================*/ #ifdef SUPPORT_DSA_DEVICE #define DSA_FIFO_SIZE (1024) #define DSARecvFIFO ( (UINT16 *)(FIFO_BUFFER_START + 1024 * 0)) #define DSASendFIFO ( (UINT16 *)(FIFO_BUFFER_START + 1024 * 2)) #endif #ifdef SUPPORT_BUS_DEVICE #define BUS_FIFO_SIZE (1024 / 4) #define BUSRecvFIFO ( (UINT16 *)(FIFO_BUFFER_START + 1024 * 4)) #define BUSSendFIFO ( (UINT16 *)(FIFO_BUFFER_START + 1024 * 4 + 512)) #endif #ifdef SUPPORT_GSM_GUARD #define GSM_FIFO_SIZE (1024 / 4) #define GSMDataFIFO ( (UINT16 *)(FIFO_BUFFER_START + 1024 * 5)) #endif #ifdef SUPPORT_WINBOND_VOICE #define VOICE_FIFO_SIZE (1024) #define VoiceFIFO ( (UINT16 *)(FIFO_BUFFER_START + 1024 * 6)) #endif /*======================================================* * FIFO COMM Buffer * *======================================================*/ #define FIFO_COMM_BUFF_ADDR (FIFO_BUFFER_START + 1024 * 8) #define DSASendFI (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 0)) #define DSASendFO (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 2)) #define DSARecvFI (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 4)) #define DSARecvFO (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 6)) #ifdef SUPPORT_GSM_GUARD #define GSMDataFI (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 8)) #define GSMDataFO (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 10)) #endif #define DSAData (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 12)) #define DSADataBackup (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 14)) #define DSASendDataBackup (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 16)) #define DSAStep (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 18)) #define DSABitCount (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 19)) #define DSABitTimer (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 20)) #define DSATryCount (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 21)) #define DSASendFlag (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 22)) #define DSASendDoneFlag (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 23)) #ifdef SUPPORT_GSM_GUARD #define GSMCommType (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 24)) #define GSMCommSize (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 25)) #define GSMCommAddr (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 26)) #endif #define TestDSAState (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 28)) #define TestDSATimer (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 30)) #ifdef SUPPORT_DBUS_FUNCTION #define DSARecvFlag (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 32)) #define DSARecvType (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 33)) #define DSARecvSize (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 34)) #define DSARecvNext (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 35)) #define DSARecvData (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 36)) #endif #ifdef SUPPORT_GSM_GUARD #define TestGuardState (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 38)) #define TestGuardTimer (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 40)) #define TestGuardCount (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 42)) #endif #if SUPPORT_DSA_VERSION > 19 #define DSAVerHard (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 44)) #define DSAVerSoft (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 46)) #define DSAVerMisc (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 47)) #define DSAFlagVinMulti (DSAVerMisc & (1 << 1)) #define DSAEnCode (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 48)) #define DSADeCode (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 49)) #endif #ifdef SUPPORT_GPRS_CENTER #define DSASendGPRSFlag (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 55)) #define DSASendGPRSTime (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 56)) #endif #define BUSSendFI (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 128)) #define BUSSendFO (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 130)) #define BUSRecvFI (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 132)) #define BUSRecvFO (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 134)) #define BUSData (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 136)) #define BUSDataBackup (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 138)) #define BUSSendDataBackup (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 140)) #define BUSStep (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 142)) #define BUSBitCount (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 143)) #define BUSBitTimer (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 144)) #define BUSTryCount (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 145)) #define BUSSendFlag (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 146)) #define BUSSendDoneFlag (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 147)) #define BUSRecvFlag (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 148)) #define BUSRecvType (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 149)) #define BUSRecvSize (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 150)) #define BUSRecvNext (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 151)) #define BUSRecvData (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 152)) #define TestBUSState (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 153)) #define TestBUSTimer (*(UINT16 *)(FIFO_COMM_BUFF_ADDR + 154)) #ifdef SUPPORT_VCD_HOST #define VCDHostFIFO ( (BYTE *)(FIFO_COMM_BUFF_ADDR + 256)) #define VCDHostFI (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 320)) #define VCDHostFO (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 321)) #define VCDCommStep (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 322)) #define VCDCommData (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 323)) #define VCDCommTimer (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 324)) #define VCDRecvFlag (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 325)) #define VCDRecvData (*(BYTE *)(FIFO_COMM_BUFF_ADDR + 326)) #endif #define COMM_BUFF_MAINS_VAR (FIFO_COMM_BUFF_ADDR + 512) #define COMM_BUFF_FLASH_VAR (FIFO_COMM_BUFF_ADDR + 576) #define COMM_BUFF_VOICE_VAR (FIFO_COMM_BUFF_ADDR + 608) #define COMM_BUFF_GRAPH_VAR (FIFO_COMM_BUFF_ADDR + 640) #define COMM_BUFF_USART_VAR (FIFO_COMM_BUFF_ADDR + 672) #define DSACommBuff ( (BYTE *)(FIFO_COMM_BUFF_ADDR + 704)) #define BUSCommBuff ( (BYTE *)(FIFO_COMM_BUFF_ADDR + 832)) /*======================================================* * Sysmain Comm Buffer * *======================================================*/ #ifdef SUPPORT_FLASH_SERIAL #define TEST_FLASH_OK (1 << 0) #else #define TEST_FLASH_OK (0 << 0) #endif #ifdef SUPPORT_I2C_DEVICE #define TEST_I2C_OK (1 << 1) #else #define TEST_I2C_OK (0 << 1) #endif #ifdef SUPPORT_WINBOND_VOICE #define TEST_VOICE_OK (1 << 2) #else #define TEST_VOICE_OK (0 << 2) #endif #ifdef SUPPORT_DSA_DEVICE #define TEST_DSA_OK (1 << 3) #else #define TEST_DSA_OK (0 << 3) #endif #ifdef SUPPORT_GSM_GUARD #define TEST_GUARD_OK (1 << 4) #else #define TEST_GUARD_OK (0 << 4) #endif #define HARDWARE_OK (TEST_FLASH_OK | TEST_I2C_OK | TEST_VOICE_OK | TEST_DSA_OK | TEST_GUARD_OK) #ifdef SUPPORT_FLASH_SERIAL #define TestFlashOK (*(BYTE *)(COMM_BUFF_MAINS_VAR + 0)) #endif #ifdef SUPPORT_I2C_DEVICE #define TestI2COK (*(BYTE *)(COMM_BUFF_MAINS_VAR + 1)) #endif #ifdef SUPPORT_WINBOND_VOICE #define TestVoiceOK (*(BYTE *)(COMM_BUFF_MAINS_VAR + 2)) #endif #ifdef SUPPORT_DSA_DEVICE #define TestDSAOK (*(BYTE *)(COMM_BUFF_MAINS_VAR + 3)) #endif #if defined(SUPPORT_GSM_GUARD) || defined(SUPPORT_BUS_DEVICE) #define TestGuardOK (*(BYTE *)(COMM_BUFF_MAINS_VAR + 4)) #endif #ifdef SUPPORT_I2C_DEVICE #define TestI2CBank (*(BYTE *)(COMM_BUFF_MAINS_VAR + 5)) #endif #define TestHardwareOK (*(BYTE *)(COMM_BUFF_MAINS_VAR + 8)) /* #define FAT_TYPE_UNKNOWN 0 #define FAT_TYPE_ZERO 1 #define FAT_TYPE_INDEX 2 #define FATType (*(BYTE *)(COMM_BUFF_MAINS_VAR + 11)) #define FATTotal (*(UINT32 *)(COMM_BUFF_MAINS_VAR + 12)) EXTERN FAT_MAIN FATMain; #define FAT_TOTAL_MAX 5 EXTERN FAT_MEMBER FATMember[FAT_TOTAL_MAX]; */ #define MAX_MENU_SCREEN 5 #define OSD_STATUS_REGION 2 EXTERN OSD_INDEX MenuScreen[MAX_MENU_SCREEN]; #define MenuScreenIndex (*(BYTE *)(COMM_BUFF_MAINS_VAR + 13)) #define SwitchSelectState (*(BYTE *)(COMM_BUFF_MAINS_VAR + 14)) #define SwitchSelectSaved (*(BYTE *)(COMM_BUFF_MAINS_VAR + 15)) #define SwitchSelectValid (*(BYTE *)(COMM_BUFF_MAINS_VAR + 16)) #define FlagMuteOn (*(BYTE *)(COMM_BUFF_MAINS_VAR + 17)) #define FlagShowLogo (*(BYTE *)(COMM_BUFF_MAINS_VAR + 18)) #define MENU_SCREEN (1 << 0) #define NAVI_SCREEN (1 << 1) #define IsMenuScreen() (ScreenState & MENU_SCREEN) #define IsNaviScreen() (ScreenState & NAVI_SCREEN) #define SetMenuScreen() (ScreenState = MENU_SCREEN) #define SetNaviScreen() (ScreenState = NAVI_SCREEN) #define ScreenState (*(BYTE *)(COMM_BUFF_MAINS_VAR + 19)) #ifdef TEST_OSD_BUFFER_SIZE EXTERN UINT32 OSD_ByteSize INIT(0); #endif #ifdef SUPPORT_TOUCH_SCREEN #define TSCR_MAP_UINT (44) #define TSCR_MAP_START_X (44) #define TSCR_MAP_START_Y (24) #define TSCR_MAP_END_X (44 * 14 + TSCR_MAP_START_X - 1) #define TSCR_MAP_END_Y (44 * 12 + TSCR_MAP_START_Y - 1) #define TSCR_MAP_WIDTH (TSCR_MAP_END_X - TSCR_MAP_START_X + 1) #define TSCR_MAP_HEIGHT (TSCR_MAP_END_Y - TSCR_MAP_START_Y + 1) EXTERN BYTE TouchScreenFlag INIT(0); EXTERN OSD_POINT TouchScreen; EXTERN BYTE MenuSatellitePrevDirection INIT(20); #endif #ifdef SUPPORT_GPIO_BUS_FUNCTION #define BusLatch1 (*(BYTE *)(COMM_BUFF_MAINS_VAR + 24)) #define BusLatch2 (*(BYTE *)(COMM_BUFF_MAINS_VAR + 25)) #endif #define unDriverFlag (*(UINT16 *)(COMM_BUFF_MAINS_VAR + 26)) #define FlagLastCheck (*(BYTE *)(COMM_BUFF_MAINS_VAR + 29)) #define FlagCarOverSpeed (*(BYTE *)(COMM_BUFF_MAINS_VAR + 30)) #define CarSpeedTimer (*(BYTE *)(COMM_BUFF_MAINS_VAR + 31)) #define GSPValidTimer (*(BYTE *)(COMM_BUFF_MAINS_VAR + 32)) #define WatchDogState (*(BYTE *)(COMM_BUFF_MAINS_VAR + 33)) #define RepeatCount (*(BYTE *)(COMM_BUFF_MAINS_VAR + 34)) #define Timer10mS (*(BYTE *)(COMM_BUFF_MAINS_VAR + 35)) #define ProgramVer ( (BYTE *)(COMM_BUFF_MAINS_VAR + 48)) /*======================================================* * Flash Comm Buffer * *======================================================*/ #define FlashMaker (*(BYTE *)(COMM_BUFF_FLASH_VAR + 0)) #define FlashSizer (*(BYTE *)(COMM_BUFF_FLASH_VAR + 1)) #define FlashLevel (*(BYTE *)(COMM_BUFF_FLASH_VAR + 2)) #define FlashPageBit (*(BYTE *)(COMM_BUFF_FLASH_VAR + 3)) #define FlashPageByte (*(UINT16 *)(COMM_BUFF_FLASH_VAR + 4)) #define FlashBlockPage (*(BYTE *)(COMM_BUFF_FLASH_VAR + 6)) #define FlashTotalBlock (*(UINT16 *)(COMM_BUFF_FLASH_VAR + 8)) #define FlashTotalPage (*(UINT32 *)(COMM_BUFF_FLASH_VAR + 12)) #define FlashBlockNumber (*(BYTE *)(COMM_BUFF_FLASH_VAR + 16)) /*======================================================* * Voice Comm Buffer * *======================================================*/ #define VoiceVolumeLevel (*(BYTE *)(COMM_BUFF_VOICE_VAR + 0)) /*======================================================* * Graph Comm Buffer * *======================================================*/ #define MapFontSize (*(BYTE *)(COMM_BUFF_GRAPH_VAR + 0)) /*======================================================* * Uart Comm Buffer * *======================================================*/ #define UART_RECV_PROC_IDLE 0 #define UART_RECV_PROC_DATA 1 #define UartSendRP (*(UINT16 *)(COMM_BUFF_USART_VAR + 0)) #define UartSendWP (*(UINT16 *)(COMM_BUFF_USART_VAR + 2)) #define UartRecvRP (*(UINT16 *)(COMM_BUFF_USART_VAR + 4)) #define UartRecvWP (*(UINT16 *)(COMM_BUFF_USART_VAR + 6)) #define UartBandRate (*(UINT16 *)(COMM_BUFF_USART_VAR + 8)) #define UartBandDone (*(BYTE *)(COMM_BUFF_USART_VAR + 10)) #define UartBandStep (*(BYTE *)(COMM_BUFF_USART_VAR + 11)) #define UartRecvStep (*(BYTE *)(COMM_BUFF_USART_VAR + 12)) #define UartKeepSize (*(UINT16 *)(COMM_BUFF_USART_VAR + 14)) #define UartDataSize (*(UINT16 *)(COMM_BUFF_USART_VAR + 16)) #define UartUserSize (*(UINT16 *)(COMM_BUFF_USART_VAR + 18)) #define UartBodySize (*(UINT16 *)(COMM_BUFF_USART_VAR + 20)) #define UartBandSize (*(UINT16 *)(COMM_BUFF_USART_VAR + 22)) #define UartTestSize (*(UINT16 *)(COMM_BUFF_USART_VAR + 24)) #endif __SYS_FIFO_H