QuakeGod
2024-07-27 842bb64195f958b050867c50db66fc0aa413dafb
提交 | 用户 | age
483170 1 /**
Q 2   ******************************************************************************
3   * @file           : BoardType.h
4   * @brief          : Define of BoardType.
5   *                   This file contains the defines of the BoardType.
6   ******************************************************************************
7     */
8 #ifndef __BOARDTYPE_H__
9 #define __BOARDTYPE_H__
10
11 /*
12     0  //old board 4 in 4 out
13     1  //old board 8 in 8 out
14     2  //Master 16 in16 out
15     3  //Slave 8 in 8 out
16     4  //New Master 16 in16 out V1.2
17     5  //Slave 8 in 8 out V1.2
18 */
19
20 #define USART2_USE_HARDWARE_DE 1
21 #define USART2_DE_ASSERTION_TIME 31
22 #define USART2_DE_DEASSERTION_TIME 31
23
24 enum enBOARD_TYPE
25 {
26     BOARD_UNKNOWN =0,
27     BOARD_OLD4=1,    // 1  //old board 4 in 4 o
28     BOARD_OLD8,        //2   old board 8 in 8 o
29     BOARD_MASTER,        //3   Master 16 in16 o
30     BOARD_SLAVE,            //4   Slave 8 in 8 o
31     BOARD_NEW_MASTER,        //5   New Master 16 in16 o
32     BOARD_NEW_SLAVE,        //6   New Slave 8 in 8 o
33     BOARD_V4_MASTER,        //7        New V4 Master 16 in16 o
34     BOARD_V4_SLAVE,        //8            New V4 Slave 8 in 8 o
35     BOARD_V42_MASTER,        //9        New V4.2 Master 16 in16 o
36     BOARD_V42_SLAVE,        //10    New V4.2 Slave 8 in 8 o    
37     
38     BOARD_V30_MINI    =11,        //11  Mini Board
39     BOARD_V45_NET = 13,
40     BOARD_EXT_FP0 = 14,
41     BOARD_V50_RADIO_16 = 15, 
42     BOARD_V50_RADIO_8 = 16, 
43     
44 };
45
46 #define BOARD_TYPE 14
47 #define BOARD_VER 3
48
49 #if (BOARD_TYPE == 11)
50 #define XLAT_FREQ 12
51 #elif (BOARD_TYPE == 14)
52 #define XLAT_FREQ 12
53   #define HSE_VALUE    ((uint32_t)12000000) /*!< Value of the External oscillator in Hz */
54
55 #else 
56 #define XLAT_FREQ 8
57   #define HSE_VALUE    ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */
58 #endif
59
842bb6 60 #define ENABLE_FPX 1
Q 61 //#define ENABLE_PLC 0
62 //#define ENABLE_RF 0
63 //#define ENABLE_NET 0
483170 64
Q 65 #define GetBoardType() (BOARD_TYPE)
66
67 #if (    BOARD_TYPE == 1)
68 #define DINPUT        4
69 #define DOUTPUT        4
70 #elif     (BOARD_TYPE == 2 || BOARD_TYPE == 4 || BOARD_TYPE == 6 || BOARD_TYPE == 8 || BOARD_TYPE == 10 || BOARD_TYPE == 11 || BOARD_TYPE == 16)
71 #define DINPUT        8
72 #define DOUTPUT        8
73 #elif BOARD_TYPE == 3 || BOARD_TYPE == 5 || BOARD_TYPE == 7 || BOARD_TYPE == 9 || BOARD_TYPE == 13 || BOARD_TYPE == 15 
74 #define DINPUT        16
75 #define DOUTPUT        16
76 #elif  BOARD_TYPE == 14 
77 #define DINPUT        0
78 #define DOUTPUT        6
79 #else 
80 #define DINPUT        0
81 #define DOUTPUT        0
82 #endif
83
842bb6 84 typedef struct tagInfoBlockHdr {
Q 85     unsigned short nBlkSign;                    // 开始标志
86     unsigned short nBlkTypeVer;                // 类型和版本
87     unsigned short nBlkSize;                    // Block 大小, 包括开始和结束标志
88     unsigned short Pad1;
89 }stInfoBlockHdr;
90
91 typedef struct tagInfoBlockTail {
92
93     unsigned short CRC16;
94     unsigned short EndSign;
95 }stInfoBlockTail;
96
97 typedef struct tagBtLdrInfoBlock {
98     stInfoBlockHdr Hdr;
99     unsigned short nBtldrVer;
100     unsigned short nBtldrDevice;
101     unsigned short nBtldrSize;        // 设计大小
102     unsigned short nBtldrDataSize;        //代码大小 
103     unsigned int nBtldr_AppAddr;
104     unsigned int nBtldr_NewAppInfoAddr;
105     unsigned int nBtldr_NewAppAddr;
106     stInfoBlockTail tail;
107 }stBtLdrInfoBlock, *pBtLdrInfoBlock;
108
109 typedef struct tagAppInfoBlock {
110     stInfoBlockHdr Hdr;
111     unsigned short nAppVer;
112     unsigned short nAppDevice;
113     unsigned short nAppSize;        // 代码设计大小
114     unsigned short nAppDataSize;        //实际代码大小 
115     unsigned int nAppStartAddr;
116     unsigned int nAppStartOffset;
117     unsigned int nApp;
118     stInfoBlockTail tail;
119 }stAppInfoBlock, * pAppInfoBlock;
120
483170 121
Q 122 #endif  /* __BOARDTYPE_H__ */