-
Notifications
You must be signed in to change notification settings - Fork 0
/
DefineXY.h
277 lines (222 loc) · 7.82 KB
/
DefineXY.h
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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
/* ****************************************************************************
* Author Spring.zheng Date 2008/07/31 Comment
*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* Define for the line position ...
*****************************************************************************/
#ifndef _DEFINEXY_H
#define _DEFINEXY_H
#define positionax 2//20
#define positionay 50
#define positionsizex 16
#define positionsizey 32
#define positionmaxx 32
#define positionmaxy 16
#define position 0
#define positionItem 22//20
#define SubjectNameMax 16
#define PlaceMax 16
#define VehicleNoMax 16
#define BadgeNoMax 18 // 驾驶证长度
#define OperatorNameMax 16
#define DepartmentMax 16
#define ItemMax 19
#define RecordSizeMax (256)
#define USE_BACKLIGHT
//#define USE_SLEEP_TIME
#define DISPLAY_BATTERY
#define USE_PIC24FJ256GB110
#define USE_SPI_DataFlash
#define USE_EEPROM_RECORD // For the EEOROM Record
//#define Text_Display //display text on main screen
#define SaveState // for the Check box
#define Use_Print
extern volatile DWORD tick; // tick counter
extern volatile XCHAR Flashbuff[RecordSizeMax];
//#define Use_Old_Test
#define TEM__2 0x6000
#define AD__2 0x600e
#define TEM_05 0x6002
#define AD_05 0x6010
#define TEM_15 0x6004
#define AD_15 0x6012
#define TEM_22 0x6006
#define AD_22 0x6014
#define TEM_28 0x6008
#define AD_28 0x6016
#define TEM_35 0x600a
#define AD_35 0x6018
#define TEM_45 0x600c
#define AD_45 0x601a
#define Markcon 0x6020 //输入的标定浓度 2
#define MarkValue 0x6022 //测量的标定值 2
#define MarkTemperature 0x6024 //标定温度 2
#define PreMarkcon_1_ADDRESS 0x6026
#define PreMarkcon_2_ADDRESS 0x6027
#define PreMarkcon_3_ADDRESS 0x6028
#define PreMarkcon_4_ADDRESS 0x6029
// FOR the ID 机器号
#define ID_JIQIADDRESS (0X6A00)
#define DebugADDRESS (0x6A01)
// FOR the checkbox select
#define ID_CHECKBOXADDRESS (0X7E00)
#define Drygas 0xaa
#define Wetgas 0xbb
#define DryorWetAddress (0x7F0F)
#define WetsignAddress (0x7F10)
#define WetdataAddress (0x7F11)
#define DrysignAddress (0x7F12)
#define DrydataAddress (0x7F13)
// for the RadioButton select
#define Beepsld1Address (0x7F14)
#define Beepsld2Address (0x7F16)
#define RButtonAddress (0x7F18)
#define BackLightAddress (0x7F18)
#define PrintSelectAddress (0x7F1A)
#define ThicknessAddress (0x7F1C)
#define DownloadAddress (0x7F1E)
#define AdjustminAddress (0x7F1F)
#define AdjustAddress (0x7F20)
#define KSelectAddress (0x7F22)
#define BlowTimeAddress (0x7F24)
#define BlowPressAddress (0x7F26)
//#define BackLightAddress (0x7F18)
#define BackLightTimeAddress (0x7F30)
#define BlowTimeDataAddress (0x7F32)
#define BlowPressDataAddress (0x7F34)
#define KSelectDataAddress (0x7F36)
#define AdjustTimesDataAddress (0x7F38) //
#define AdjustYrDataAddress (0x7F3A) // /设置校准地址
#define AdjustMthDataAddress (0x7F3B) // /设置校准地址
#define AdjustDayDataAddress (0x7F3C) // /设置校准地址
#define MarkYrDataAddress (0x7F3D)
#define MarkMthDataAddress (0x7F3E)// 实际校准数据地址
#define MarkDayDataAddress (0x7F3F)
#define TestTimesDataAddress (0x7F40)// 实际校准数据地址0x7F40-0x7f41
#define SettingPasswordAddress (0x7F42)//0x7f42 0x7f43 0x7f44
#define AdvanceSettingPasswordAddress (0x7F45)//0x7f45 0x7f46 0x7f47
#define PasswordsettedAddress (0x7F48)
#define inspectYearAddress (0x7F49)
#define inspectMonthAddress (0x7F4a)
#define inspectDayAddress (0x7F4b)
#define inspectdateSettedAddress (0x7F4c)
#define updateVision (0x7FD9)
// Addresses for calibration and version values in EEPROM
#define EEPROM_Divider 0x7FDA
#define EEPROM_Fn 0x7FDE
#define EEPROM_En 0x7FE2
#define EEPROM_Dn 0x7FE6
#define EEPROM_Cn 0x7FEA
#define EEPROM_Bn 0x7FEE
#define EEPROM_An 0x7FF2
#define EEPROM_YMAX 0x7FF6
#define EEPROM_YMIN 0x7FF8
#define EEPROM_XMAX 0x7FFA
#define EEPROM_XMIN 0x7FFC
#define EEPROM_VERSION 0x7FFE
#define ID_RADIOBUTTONStar 0
#define BackLightSelectMax (4) // 4
#define PrintSelectMax (BackLightSelectMax+3) // 7
#define ThicknessSelectMax (PrintSelectMax+9) // 16
#define DownloadSelcetMax (ThicknessSelectMax+2) // 18
#define AdjustSelectMin (DownloadSelcetMax+4) // 22
#define AdjustSelectMax (AdjustSelectMin+4) // 26
#define KSelectMax (AdjustSelectMax+9)//+1) // 35 // 最后一个必须多加一
#define BlowTimeMax (KSelectMax + 6) // 41
#define BlowPressMax (BlowTimeMax + 6) //47 最后一个必须多加一
#define PeriodsMax (BlowPressMax + 6) // 53
#define NumberMax (PeriodsMax + 6 + 1) //59 最后一个必须多加一
//For the Print times
#define PrintTimesAddress (0x7F10)
// for the DemarcateAddress // 标定保存地址
#define DemarcateAddress (0x6000)
#define ChinaPageMax (5)
#define USE_China
#define DelayRefussTime (30)//拒绝测试 延时时间
// for the Item Byte
#define USE_ITEM
#define Item0Address (0x7040)
#define Item1Address (0x7060)
#define Item2Address (0x7080)
#define Item3Address (0x70a0)
#define Item4Address (0x70c0)
#define Item5Address (0x70e0)
#define Item6Address (0x7100)
#define Item7Address (0x7120)
#define Item8Address (0x7140)
#define Item9Address (0x7160)
#define Item0DataAddress 49
#define Item1DataAddress 68
#define Item2DataAddress 87
#define Item3DataAddress 106
#define Item4DataAddress 125
#define Item5DataAddress 144
#define Item6DataAddress 163
#define Item7DataAddress 182
#define Item8DataAddress 201
#define Item9DataAddress 220
#define pump_pwr PORTFbits.RF0
//#define USE_I2C
# define uch unsigned char // BYTE
# define unint unsigned int // WORD
# define SDA PORTAbits.RA3 //RC4
# define SCL PORTAbits.RA2 //RC3
/*
struct tagRecord_Flag
{
unsigned char b__Effective:1; // 1:FLASH没有记录;0:FLASH有记录
unsigned char b__g100ml:1;
unsigned char b__mgml:1;
unsigned char b__mgL_mgml:1;
unsigned char b_RefuseTest:1; // 拒绝测试标志位 1:拒绝测试
unsigned char b_AutoTest:1; // 1:自动测试;0:被动测试
unsigned char b__Excess:1; // 1:酒精浓度在0-20%;0:酒精浓度在20%以上
unsigned char b__Drunk:1; // 1:酒精浓度在80%以上(醉酒驾驶);0:酒精浓度在20%-80%(饮酒驾驶)
}RECORD_FLAG;
*/
#define ST_REFUSE 0x0002 // Bit for Refuse state.
#define ST_Passive 0x0004 // Bit for Initiative state.
#define ST_Discontinued 0x0008 // Bit for Initiative state.
#define ST_FastTest 0x0010
#define ST_alocholTRUE 0x0020
//#define ST_CENTER_ALIGN 0x0008 // Bit to indicate text is center aligned.
//#define ST_FRAME 0x0010 // Bit to indicate frame is displayed.
//#define ST_DRAW 0x4000 // Bit to indicate static text must be redrawn.
//#define ST_HIDE 0x8000 // Bit to remove object from screen.
//reserve in eeprom
#define EESERIAL_NUMBER 0x0100 //
#define useI2CRTCC // for the I2C RTCC
#define RecordSizeMax (256)
// Battery
#define BatteryMin 1625//1385 // 电池空
#define BatteryMax 1950// // 电池满
#define BatterySize ((BatteryMax-BatteryMin)/8) // 电池格AD值
#define USE_BTN_MSG_RELEASED
#define USE_adcX_adcy
//#define USE_GPS
//#define MasklevelOff 0
//reserve in eeprom
#define EESERIAL_NUMBER 0x0100 //
//max
#define Record_over_16000 0x0102
#define Code_MAX 10000
#define Code_OVER 0xaaaa
//#define TIME_ZONE 0x0102
#define RX4_BUFFLEN 500 //500
#define TX4_BUFFLEN 10
#define U4R_TOUT 200
extern unsigned char rx4_buff[RX4_BUFFLEN],*rx4_ptr;
extern unsigned char tx4_buff[TX4_BUFFLEN],*tx4_ptr,*tx4_ptrend;
extern unsigned int uart4_rtimer,t4len;
extern unsigned char satellite,satellite_cnt;
extern unsigned char longitude[8],latitude[8];
extern unsigned char eeset[100];
extern DATETIMES gps_date,sys_date,old_date;
extern unsigned int sys_clk,USB_sys_clk;
extern unsigned int jhm98;
extern unsigned char I2C_ERROR,i2busy,usbcmd,usbcount;
extern unsigned int I2C_COUNTER,softMS;
extern unsigned char softMin,softSec,timeSet[7];
extern BOOL Unit_Select;
extern unsigned int ST_IRstatus;
extern BOOL alarmON;
#endif