QuakeGod
2023-02-01 47857ed32cb8737a25f26970b222e29727f1c93b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
/**
  ******************************************************************************
  * @file           : GlobalDef.h
  * @brief          : Header for GlobalDef.c file.
  *                   This file contains the Global defines of the application.
  ******************************************************************************
    */
#ifndef __GLOBALDEF_H__
#define __GLOBALDEF_H__
#include "MyQueue.h"
/*
    0  //old board 4 in 4 out
    1  //old board 8 in 8 out
    2  //Master 16 in16 out
    3  //Slave 8 in 8 out
    4  //New Master 16 in16 out V1.2
    5  //Slave 8 in 8 out V1.2
*/
 
 
#define DefaultUart1Baud 230400
#define DefaultUart2Baud 1000000
 
enum enBOARD_TYPE
{
    BOARD_UNKNOWN =0,
    BOARD_OLD4=1,    // 1  //old board 4 in 4 o
    BOARD_OLD8,        //2   old board 8 in 8 o
    BOARD_MASTER,        //3   Master 16 in16 o
    BOARD_SLAVE,            //4   Slave 8 in 8 o
    BOARD_NEW_MASTER,        //5   New Master 16 in16 o
    BOARD_NEW_SLAVE,        //6   New Slave 8 in 8 o
    BOARD_V4_MASTER,        //7        New V4 Master 16 in16 o
    BOARD_V4_SLAVE,        //8            New V4 Slave 8 in 8 o
    BOARD_V42_MASTER,        //9        New V4.2 Master 16 in16 o
    BOARD_V42_SLAVE,        //10    New V4.2 Slave 8 in 8 o    
    
    BOARD_V30_MINI    =11,        //11  Mini Board
    BOARD_V45_NET = 13,
    BOARD_EXT_FP0 = 14,
    BOARD_V50_RADIO_16 = 15, 
    BOARD_V50_RADIO_8 = 16, 
    
};
 
#define BOARD_TYPE 14
#define BOARD_VER 1
 
#if (BOARD_TYPE == 11)
#define XLAT_FREQ 12
#elif (BOARD_TYPE == 14)
#define XLAT_FREQ 12
#else 
#define XLAT_FREQ 8
#endif
 
#define GetBoardType() (BOARD_TYPE)
 
extern volatile int PendSvCount;
 
typedef struct tagUartStat
{
    volatile int SendBytes;
    volatile int RecvBytes;
    volatile char bInited;
    volatile char bSending;
    volatile char bRecving;
    volatile char bUseAltRecvBuf;
    volatile int IRQCount;
    volatile int RXNECount;
    volatile int TXECount;    
    volatile int PECount;
    volatile int OverRunCount;
    volatile int TcCount;        //Transmit Complete
    volatile int IdelCount;        //RecvIdel
    volatile int LostBytes;
    volatile int DMACount;
    volatile int DMASendLen;
    volatile int DMARecvLen;
    stMyQueue QRx;
    stMyQueue QTx;
    volatile int SentPacket;
    volatile int bPacketRecved;
    volatile int OKPacket;
    volatile int TimeOutErr;
    volatile int NotPacketErr;
    volatile int LengthErr;
    volatile int BCCerr;
}stUartStat;
 
 
extern stUartStat Uart1Stat;
extern stUartStat Uart2Stat;
 
extern unsigned int Uart1Baud;
extern unsigned int Uart2Baud;
 
extern unsigned char Uart1RecvBuf1[128];
extern int Uart1RecvBuf1DataLen;
//extern unsigned char Uart1RecvBuf2[128];
//extern int Uart1RecvBuf2DataLen;
 
extern unsigned char Uart2RecvBuf1[128];
extern int Uart2RecvBuf1DataLen;
//extern unsigned char Uart2RecvBuf2[128];
//extern int Uart2RecvBuf2DataLen;
 
extern volatile int Uart1BaudGot;
extern volatile int Uart1BaudFirstGot;
//extern volatile int Uart2BaudGot;
//extern volatile int Uart2BaudFirstGot;
 
//extern volatile int Uart1DmaInts;
//extern volatile int Uart2DmaInts;
 
struct stSysConfig{
    int bInited:1;
    int bConfiged:1;
    int bKBusMaster:1;
};
 
 
#endif  /* __GLOBALDEF_H__ */