📄 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
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -