ATY_LIB V2_102_230218
ATY_LIB for general devices or ALGO
 
Loading...
Searching...
No Matches
GP22_ATY.h
Go to the documentation of this file.
1
27#ifndef __GP22_ATY_H
28#define __GP22_ATY_H
29
30#include "INCLUDE_ATY.h"
33#include "ALGO_Kalman_ATY.h"
34#include "HW_GPIO_ATY.h"
35#include "HW_SPI_ATY.h"
36
37#include "main.h"
38
39/******************************* For user *************************************/
40// #define __DEBUG_GP22_ATY
41// #define __DEBUG_GP22_OPCODE_ATY
42
43extern uint8_t gp22Mode;
44
45extern uint8_t GP22_Ids[8];
46extern uint32_t GP22_REG[7];
47
48extern uint32_t tofValue[4];
49extern float tempRealValue[2];
50extern float echoTimeDetect[2];
51extern float echoTimeCalc[2];
52extern float speedWave[2];
54
55extern float machineDelayTime;
56extern float usDistance;
57
59extern uint8_t pulseNum;
60extern uint16_t ignoreTime;
62/******************************************************************************/
63
64
65
66/******************************* For board ************************************/
67/*
68The TDC-GP22 does only support the following SPI mode (Motorola specification) *
69Clock Phase Bit = 1 Clock Polarity Bit = 0
70*/
71#define GP22_HSC_FREQ 8 // MHz
72#define GP22_CLKHS_DIV 1
73/* The resulting clock after the predivider has to be in the allowed range of
742 MHz to 8 MHz in single and double resolution and from 2 MHz to 6 MHz in quad resolution */
75#define GP22_CLKHS_FREQ (GP22_HSC_FREQ / (1 << GP22_CLKHS_DIV)) // MHz
76#define GP22_CLKHS_PERIOD 0
77extern float GP22_CALC_CLKHS_FREQ; // MHz
78
79#define GP22_TEMP_REF_RES 10.0 // KOhm
80/******************************************************************************/
81
83
84#define GP22_STEP_RESET 0x01
85#define GP22_STEP_SPI_TEST 0x02
86#define GP22_STEP_REG_INIT 0x04
87#define GP22_STEP_READ_ID 0x08
88#define GP22_STEP_COMPARE_E2 0x10
89#define GP22_STEP_CALC_HSC 0x20
90#define GP22_STEP_START_TEMP 0x40
91#define GP22_STEP_START_TOF 0x80
92
93#define GP22_SIGNAL_H GPIO_SET_H(GP22_SIGNAL_PORT, GP22_SIGNAL_PIN)
94#define GP22_SIGNAL_L GPIO_SET_L(GP22_SIGNAL_PORT, GP22_SIGNAL_PIN)
95#define GP22_SIGNAL_A_H GPIO_SET_H(GP22_SIGNAL_A_PORT, GP22_SIGNAL_A_PIN)
96#define GP22_SIGNAL_A_L GPIO_SET_L(GP22_SIGNAL_A_PORT, GP22_SIGNAL_A_PIN)
97
98/* Device define **************************************************************/
99/* GPIO define outside of spi *************************************************/
100/* IO Info(suit for 5V - 3V MCU and 3.3V - 2.8V GP22, line connect 100R res in series)
101 RSTN PP
102 EN PP
103 CSN PP
104 MOSI PP
105 MISO HI
106 SCLK PP
107 INTN HI(High impedance input)
108*/
109#define GP22_ENABLE GPIO_SET_L(GP22_CSN_PORT, GP22_CSN_PIN)
110#define GP22_DISABLE GPIO_SET_H(GP22_CSN_PORT, GP22_CSN_PIN)
111#define GP22_RESET GPIO_SET_L(GP22_RST_PORT, GP22_RST_PIN)
112#define GP22_NORESET GPIO_SET_H(GP22_RST_PORT, GP22_RST_PIN)
113#define GP22_READ_INT_H GPIO_GET_H(GP22_INT_PORT, GP22_INT_PIN)
114#define GP22_READ_INT_L GPIO_GET_L(GP22_INT_PORT, GP22_INT_PIN)
115
116#define GP22_WAKE \
117do{ \
118 GPIO_SET_H(GP22_EN_PORT, GP22_EN_PIN); \
119 GPIO_SET_H(GP22_INT_PORT, GP22_INT_PIN); \
120} while(0)
121
122#define GP22_SLEEP \
123do{ \
124 SPCTL = 0x00; \
125 GPIO_SET_L(GP22_RST_PORT, GP22_RST_PIN); \
126 GPIO_SET_L(GP22_CSN_PORT, GP22_CSN_PIN); \
127 GPIO_SET_L(GP22_SCLK_PORT, GP22_SCLK_PIN); \
128 GPIO_SET_L(GP22_MOSI_PORT, GP22_MOSI_PIN); \
129 GPIO_SET_L(GP22_EN_PORT, GP22_EN_PIN); \
130 GPIO_SET_L(GP22_MISO_PORT, GP22_MISO_PIN); \
131 GPIO_SET_L(GP22_INT_PORT, GP22_INT_PIN); \
132} while(0)
133
134
135
136/* Opcode define **************************************************************/
137#define GP22_OPCODE_INIT 0x70
138#define GP22_OPCODE_RESET 0x50
139#define GP22_OPCODE_START_TOF 0x01
140#define GP22_OPCODE_START_TEMP 0x02
141#define GP22_OPCODE_CALC_HSC 0x03
142#define GP22_OPCODE_START_CAL_TOF 0x04
143#define GP22_OPCODE_START_TOF2 0x05
144#define GP22_OPCODE_START_TEMP2 0x06
145
146#define GP22_OPCODE_WRITE_REG 0x80
147#define GP22_OPCODE_READ_REG 0xB0
148#define GP22_OPCODE_READ_ID 0xB7
149#define GP22_OPCODE_WRITE_E2 0xC0
150#define GP22_OPCODE_TRANS_E2 0xF0
151#define GP22_OPCODE_COMPARE_E2 0xC6
152
153#define GP22_REGADDR_STATUS 0x04
154#define GP22_REGADDR_TEST 0x05
155#define GP22_REGADDR_PW1ST 0x05
156
157/* Default register values on reset *******************************************/
158#define GP22_CFG_DEFAULT0 0x22066800
159#define GP22_CFG_DEFAULT1 0x55400000
160#define GP22_CFG_DEFAULT2 0x20000000
161#define GP22_CFG_DEFAULT3 0x18000000
162#define GP22_CFG_DEFAULT4 0x20000000
163#define GP22_CFG_DEFAULT5 0x00000000
164#define GP22_CFG_DEFAULT6 0x00000000
165
166/* Blank register values except for the "keep default" values ****************/
167#define GP22_CFG_KEEP_DEFAULT0 0x00000000
168#define GP22_CFG_KEEP_DEFAULT1 0x00400000
169#define GP22_CFG_KEEP_DEFAULT2 0x00000000
170#define GP22_CFG_KEEP_DEFAULT3 0x00000000
171#define GP22_CFG_KEEP_DEFAULT4 0x20000000
172#define GP22_CFG_KEEP_DEFAULT5 0x00000000
173#define GP22_CFG_KEEP_DEFAULT6 0x00000000
174
175
176/* Register definition ********************************************************/
177#define GP22_CFG0_ID0_0 ALGO_BITMASK(0)
178#define GP22_CFG0_ID0_1 ALGO_BITMASK(1)
179#define GP22_CFG0_ID0_2 ALGO_BITMASK(2)
180#define GP22_CFG0_ID0_3 ALGO_BITMASK(3)
181#define GP22_CFG0_ID0_4 ALGO_BITMASK(4)
182#define GP22_CFG0_ID0_5 ALGO_BITMASK(5)
183#define GP22_CFG0_ID0_6 ALGO_BITMASK(6)
184#define GP22_CFG0_ID0_7 ALGO_BITMASK(7)
185#define GP22_CFG0_NEG_START ALGO_BITMASK(8)
186#define GP22_CFG0_NEG_STOP1 ALGO_BITMASK(9)
187#define GP22_CFG0_NEG_STOP2 ALGO_BITMASK(10)
188#define GP22_CFG0_MESSB2 ALGO_BITMASK(11)
189#define GP22_CFG0_NO_CAL_AUTO ALGO_BITMASK(12)
190#define GP22_CFG0_CALIBRATE ALGO_BITMASK(13)
191#define GP22_CFG0_SEL_ECLK_TEMP ALGO_BITMASK(14)
192#define GP22_CFG0_ANZ_FAKE ALGO_BITMASK(15)
193#define GP22_CFG0_TCYCLE ALGO_BITMASK(16)
194#define GP22_CFG0_ANZ_PORT ALGO_BITMASK(17)
195#define GP22_CFG0_START_CLKHS_0 ALGO_BITMASK(18)
196#define GP22_CFG0_START_CLKHS_1 ALGO_BITMASK(19)
197#define GP22_CFG0_DIV_CLKHS_0 ALGO_BITMASK(20)
198#define GP22_CFG0_DIV_CLKHS_1 ALGO_BITMASK(21)
199#define GP22_CFG0_ANZ_PER_CALRES_0 ALGO_BITMASK(22)
200#define GP22_CFG0_ANZ_PER_CALRES_1 ALGO_BITMASK(23)
201#define GP22_CFG0_DIV_FIRE_0 ALGO_BITMASK(24)
202#define GP22_CFG0_DIV_FIRE_1 ALGO_BITMASK(25)
203#define GP22_CFG0_DIV_FIRE_2 ALGO_BITMASK(26)
204#define GP22_CFG0_DIV_FIRE_3 ALGO_BITMASK(27)
205#define GP22_CFG0_ANZ_FIRE_0 ALGO_BITMASK(28)
206#define GP22_CFG0_ANZ_FIRE_1 ALGO_BITMASK(29)
207#define GP22_CFG0_ANZ_FIRE_2 ALGO_BITMASK(30)
208#define GP22_CFG0_ANZ_FIRE_3 ALGO_BITMASK(31)
209
210#define GP22_CFG1_ID1_0 ALGO_BITMASK(0)
211#define GP22_CFG1_ID1_1 ALGO_BITMASK(1)
212#define GP22_CFG1_ID1_2 ALGO_BITMASK(2)
213#define GP22_CFG1_ID1_3 ALGO_BITMASK(3)
214#define GP22_CFG1_ID1_4 ALGO_BITMASK(4)
215#define GP22_CFG1_ID1_5 ALGO_BITMASK(5)
216#define GP22_CFG1_ID1_6 ALGO_BITMASK(6)
217#define GP22_CFG1_ID1_7 ALGO_BITMASK(7)
218#define GP22_CFG1_SEL_TSTO1_0 ALGO_BITMASK(8)
219#define GP22_CFG1_SEL_TSTO1_1 ALGO_BITMASK(9)
220#define GP22_CFG1_SEL_TSTO1_2 ALGO_BITMASK(10)
221#define GP22_CFG1_SEL_TSTO2_0 ALGO_BITMASK(11)
222#define GP22_CFG1_SEL_TSTO2_1 ALGO_BITMASK(12)
223#define GP22_CFG1_SEL_TSTO2_2 ALGO_BITMASK(13)
224#define GP22_CFG1_SEL_START_FIRE ALGO_BITMASK(14)
225#define GP22_CFG1_CURR32K ALGO_BITMASK(15)
226#define GP22_CFG1_HITIN1_0 ALGO_BITMASK(16)
227#define GP22_CFG1_HITIN1_1 ALGO_BITMASK(17)
228#define GP22_CFG1_HITIN1_2 ALGO_BITMASK(18)
229#define GP22_CFG1_HITIN2_0 ALGO_BITMASK(19)
230#define GP22_CFG1_HITIN2_1 ALGO_BITMASK(20)
231#define GP22_CFG1_HITIN2_2 ALGO_BITMASK(21)
232#define GP22_CFG1_KEEP_DEFAULT ALGO_BITMASK(22)
233#define GP22_CFG1_EN_FAST_INIT ALGO_BITMASK(23)
234#define GP22_CFG1_HIT1_0 ALGO_BITMASK(24)
235#define GP22_CFG1_HIT1_1 ALGO_BITMASK(25)
236#define GP22_CFG1_HIT1_2 ALGO_BITMASK(26)
237#define GP22_CFG1_HIT1_3 ALGO_BITMASK(27)
238#define GP22_CFG1_HIT2_0 ALGO_BITMASK(28)
239#define GP22_CFG1_HIT2_1 ALGO_BITMASK(29)
240#define GP22_CFG1_HIT2_2 ALGO_BITMASK(30)
241#define GP22_CFG1_HIT2_3 ALGO_BITMASK(31)
242
243#define GP22_CFG2_ID2_0 ALGO_BITMASK(0)
244#define GP22_CFG2_ID2_1 ALGO_BITMASK(1)
245#define GP22_CFG2_ID2_2 ALGO_BITMASK(2)
246#define GP22_CFG2_ID2_3 ALGO_BITMASK(3)
247#define GP22_CFG2_ID2_4 ALGO_BITMASK(4)
248#define GP22_CFG2_ID2_5 ALGO_BITMASK(5)
249#define GP22_CFG2_ID2_6 ALGO_BITMASK(6)
250#define GP22_CFG2_ID2_7 ALGO_BITMASK(7)
251#define GP22_CFG2_DELVAL1_0 ALGO_BITMASK(8)
252#define GP22_CFG2_DELVAL1_1 ALGO_BITMASK(9)
253#define GP22_CFG2_DELVAL1_2 ALGO_BITMASK(10)
254#define GP22_CFG2_DELVAL1_3 ALGO_BITMASK(11)
255#define GP22_CFG2_DELVAL1_4 ALGO_BITMASK(12)
256#define GP22_CFG2_DELVAL1_5 ALGO_BITMASK(13)
257#define GP22_CFG2_DELVAL1_6 ALGO_BITMASK(14)
258#define GP22_CFG2_DELVAL1_7 ALGO_BITMASK(15)
259#define GP22_CFG2_DELVAL1_8 ALGO_BITMASK(16)
260#define GP22_CFG2_DELVAL1_9 ALGO_BITMASK(17)
261#define GP22_CFG2_DELVAL1_10 ALGO_BITMASK(18)
262#define GP22_CFG2_DELVAL1_11 ALGO_BITMASK(19)
263#define GP22_CFG2_DELVAL1_12 ALGO_BITMASK(20)
264#define GP22_CFG2_DELVAL1_13 ALGO_BITMASK(21)
265#define GP22_CFG2_DELVAL1_14 ALGO_BITMASK(22)
266#define GP22_CFG2_DELVAL1_15 ALGO_BITMASK(23)
267#define GP22_CFG2_DELVAL1_16 ALGO_BITMASK(24)
268#define GP22_CFG2_DELVAL1_17 ALGO_BITMASK(25)
269#define GP22_CFG2_DELVAL1_18 ALGO_BITMASK(26)
270#define GP22_CFG2_RFEDGE1 ALGO_BITMASK(27)
271#define GP22_CFG2_RFEDGE2 ALGO_BITMASK(28)
272#define GP22_CFG2_EN_INT_ALU ALGO_BITMASK(29)
273#define GP22_CFG2_EN_INT_HITS ALGO_BITMASK(30)
274#define GP22_CFG2_EN_INT_TDC_TIMEOUT ALGO_BITMASK(31)
275
276#define GP22_CFG3_ID3_0 ALGO_BITMASK(0)
277#define GP22_CFG3_ID3_1 ALGO_BITMASK(1)
278#define GP22_CFG3_ID3_2 ALGO_BITMASK(2)
279#define GP22_CFG3_ID3_3 ALGO_BITMASK(3)
280#define GP22_CFG3_ID3_4 ALGO_BITMASK(4)
281#define GP22_CFG3_ID3_5 ALGO_BITMASK(5)
282#define GP22_CFG3_ID3_6 ALGO_BITMASK(6)
283#define GP22_CFG3_ID3_7 ALGO_BITMASK(7)
284#define GP22_CFG3_DELVAL2_0 ALGO_BITMASK(8)
285#define GP22_CFG3_DELVAL2_1 ALGO_BITMASK(9)
286#define GP22_CFG3_DELVAL2_2 ALGO_BITMASK(10)
287#define GP22_CFG3_DELVAL2_3 ALGO_BITMASK(11)
288#define GP22_CFG3_DELVAL2_4 ALGO_BITMASK(12)
289#define GP22_CFG3_DELVAL2_5 ALGO_BITMASK(13)
290#define GP22_CFG3_DELVAL2_6 ALGO_BITMASK(14)
291#define GP22_CFG3_DELVAL2_7 ALGO_BITMASK(15)
292#define GP22_CFG3_DELVAL2_8 ALGO_BITMASK(16)
293#define GP22_CFG3_DELVAL2_9 ALGO_BITMASK(17)
294#define GP22_CFG3_DELVAL2_10 ALGO_BITMASK(18)
295#define GP22_CFG3_DELVAL2_11 ALGO_BITMASK(19)
296#define GP22_CFG3_DELVAL2_12 ALGO_BITMASK(20)
297#define GP22_CFG3_DELVAL2_13 ALGO_BITMASK(21)
298#define GP22_CFG3_DELVAL2_14 ALGO_BITMASK(22)
299#define GP22_CFG3_DELVAL2_15 ALGO_BITMASK(23)
300#define GP22_CFG3_DELVAL2_16 ALGO_BITMASK(24)
301#define GP22_CFG3_DELVAL2_17 ALGO_BITMASK(25)
302#define GP22_CFG3_DELVAL2_18 ALGO_BITMASK(26)
303#define GP22_CFG3_SEL_TIMO_MB2_0 ALGO_BITMASK(27)
304#define GP22_CFG3_SEL_TIMO_MB2_1 ALGO_BITMASK(28)
305#define GP22_CFG3_EN_ERR_VAL ALGO_BITMASK(29)
306#define GP22_CFG3_EN_FIRST_WAVE ALGO_BITMASK(30)
307#define GP22_CFG3_EN_AUTOCALC_MB2 ALGO_BITMASK(31)
308
309#define GP22_CFG4_ID4_0 ALGO_BITMASK(0)
310#define GP22_CFG4_ID4_1 ALGO_BITMASK(1)
311#define GP22_CFG4_ID4_2 ALGO_BITMASK(2)
312#define GP22_CFG4_ID4_3 ALGO_BITMASK(3)
313#define GP22_CFG4_ID4_4 ALGO_BITMASK(4)
314#define GP22_CFG4_ID4_5 ALGO_BITMASK(5)
315#define GP22_CFG4_ID4_6 ALGO_BITMASK(6)
316#define GP22_CFG4_ID4_7 ALGO_BITMASK(7)
317#define GP22_CFG4_DELVAL3_0 ALGO_BITMASK(8)
318#define GP22_CFG4_DELVAL3_1 ALGO_BITMASK(9)
319#define GP22_CFG4_DELVAL3_2 ALGO_BITMASK(10)
320#define GP22_CFG4_DELVAL3_3 ALGO_BITMASK(11)
321#define GP22_CFG4_DELVAL3_4 ALGO_BITMASK(12)
322#define GP22_CFG4_DELVAL3_5 ALGO_BITMASK(13)
323#define GP22_CFG4_DELVAL3_6 ALGO_BITMASK(14)
324#define GP22_CFG4_DELVAL3_7 ALGO_BITMASK(15)
325#define GP22_CFG4_DELVAL3_8 ALGO_BITMASK(16)
326#define GP22_CFG4_DELVAL3_9 ALGO_BITMASK(17)
327#define GP22_CFG4_DELVAL3_10 ALGO_BITMASK(18)
328#define GP22_CFG4_DELVAL3_11 ALGO_BITMASK(19)
329#define GP22_CFG4_DELVAL3_12 ALGO_BITMASK(20)
330#define GP22_CFG4_DELVAL3_13 ALGO_BITMASK(21)
331#define GP22_CFG4_DELVAL3_14 ALGO_BITMASK(22)
332#define GP22_CFG4_DELVAL3_15 ALGO_BITMASK(23)
333#define GP22_CFG4_DELVAL3_16 ALGO_BITMASK(24)
334#define GP22_CFG4_DELVAL3_17 ALGO_BITMASK(25)
335#define GP22_CFG4_DELVAL3_18 ALGO_BITMASK(26)
336#define GP22_CFG4_KEEP_DEFAULT_0 ALGO_BITMASK(27)
337#define GP22_CFG4_KEEP_DEFAULT_1 ALGO_BITMASK(28)
338#define GP22_CFG4_KEEP_DEFAULT_2 ALGO_BITMASK(29)
339#define GP22_CFG4_KEEP_DEFAULT_3 ALGO_BITMASK(30)
340#define GP22_CFG4_KEEP_DEFAULT_4 ALGO_BITMASK(31)
341
342#define GP22_CFG3FW_ID3_0 ALGO_BITMASK(0)
343#define GP22_CFG3FW_ID3_1 ALGO_BITMASK(1)
344#define GP22_CFG3FW_ID3_2 ALGO_BITMASK(2)
345#define GP22_CFG3FW_ID3_3 ALGO_BITMASK(3)
346#define GP22_CFG3FW_ID3_4 ALGO_BITMASK(4)
347#define GP22_CFG3FW_ID3_5 ALGO_BITMASK(5)
348#define GP22_CFG3FW_ID3_6 ALGO_BITMASK(6)
349#define GP22_CFG3FW_ID3_7 ALGO_BITMASK(7)
350#define GP22_CFG3FW_DELREL1_0 ALGO_BITMASK(8)
351#define GP22_CFG3FW_DELREL1_1 ALGO_BITMASK(9)
352#define GP22_CFG3FW_DELREL1_2 ALGO_BITMASK(10)
353#define GP22_CFG3FW_DELREL1_3 ALGO_BITMASK(11)
354#define GP22_CFG3FW_DELREL1_4 ALGO_BITMASK(12)
355#define GP22_CFG3FW_DELREL1_5 ALGO_BITMASK(13)
356#define GP22_CFG3FW_DELREL2_0 ALGO_BITMASK(14)
357#define GP22_CFG3FW_DELREL2_1 ALGO_BITMASK(15)
358#define GP22_CFG3FW_DELREL2_2 ALGO_BITMASK(16)
359#define GP22_CFG3FW_DELREL2_3 ALGO_BITMASK(17)
360#define GP22_CFG3FW_DELREL2_4 ALGO_BITMASK(18)
361#define GP22_CFG3FW_DELREL2_5 ALGO_BITMASK(19)
362#define GP22_CFG3FW_DELREL3_0 ALGO_BITMASK(20)
363#define GP22_CFG3FW_DELREL3_1 ALGO_BITMASK(21)
364#define GP22_CFG3FW_DELREL3_2 ALGO_BITMASK(22)
365#define GP22_CFG3FW_DELREL3_3 ALGO_BITMASK(23)
366#define GP22_CFG3FW_DELREL3_4 ALGO_BITMASK(24)
367#define GP22_CFG3FW_DELREL3_5 ALGO_BITMASK(25)
368#define GP22_CFG3FW_KEEP_DEFAULT ALGO_BITMASK(26)
369#define GP22_CFG3FW_SEL_TIMO_MB2_0 ALGO_BITMASK(27)
370#define GP22_CFG3FW_SEL_TIMO_MB2_1 ALGO_BITMASK(28)
371#define GP22_CFG3FW_EN_ERR_VAL ALGO_BITMASK(29)
372#define GP22_CFG3FW_EN_FIRST_WAVE ALGO_BITMASK(30)
373#define GP22_CFG3FW_EN_AUTOCALC_MB2 ALGO_BITMASK(31)
374
375#define GP22_CFG4FW_ID4_0 ALGO_BITMASK(0)
376#define GP22_CFG4FW_ID4_1 ALGO_BITMASK(1)
377#define GP22_CFG4FW_ID4_2 ALGO_BITMASK(2)
378#define GP22_CFG4FW_ID4_3 ALGO_BITMASK(3)
379#define GP22_CFG4FW_ID4_4 ALGO_BITMASK(4)
380#define GP22_CFG4FW_ID4_5 ALGO_BITMASK(5)
381#define GP22_CFG4FW_ID4_6 ALGO_BITMASK(6)
382#define GP22_CFG4FW_ID4_7 ALGO_BITMASK(7)
383#define GP22_CFG4FW_OFFS_0 ALGO_BITMASK(8)
384#define GP22_CFG4FW_OFFS_1 ALGO_BITMASK(9)
385#define GP22_CFG4FW_OFFS_2 ALGO_BITMASK(10)
386#define GP22_CFG4FW_OFFS_3 ALGO_BITMASK(11)
387#define GP22_CFG4FW_OFFS_4 ALGO_BITMASK(12)
388#define GP22_CFG4FW_OFFSRNG1 ALGO_BITMASK(13)
389#define GP22_CFG4FW_OFFSRNG2 ALGO_BITMASK(14)
390#define GP22_CFG4FW_EDGE_FW ALGO_BITMASK(15)
391#define GP22_CFG4FW_DIS_PW ALGO_BITMASK(16)
392#define GP22_CFG4FW_KEEP_DEFAULT_0 ALGO_BITMASK(17)
393#define GP22_CFG4FW_KEEP_DEFAULT_1 ALGO_BITMASK(18)
394#define GP22_CFG4FW_KEEP_DEFAULT_2 ALGO_BITMASK(19)
395#define GP22_CFG4FW_KEEP_DEFAULT_3 ALGO_BITMASK(20)
396#define GP22_CFG4FW_KEEP_DEFAULT_4 ALGO_BITMASK(21)
397#define GP22_CFG4FW_KEEP_DEFAULT_5 ALGO_BITMASK(22)
398#define GP22_CFG4FW_KEEP_DEFAULT_6 ALGO_BITMASK(23)
399#define GP22_CFG4FW_KEEP_DEFAULT_7 ALGO_BITMASK(24)
400#define GP22_CFG4FW_KEEP_DEFAULT_8 ALGO_BITMASK(25)
401#define GP22_CFG4FW_KEEP_DEFAULT_9 ALGO_BITMASK(26)
402#define GP22_CFG4FW_KEEP_DEFAULT_10 ALGO_BITMASK(27)
403#define GP22_CFG4FW_KEEP_DEFAULT_11 ALGO_BITMASK(28)
404#define GP22_CFG4FW_KEEP_DEFAULT_12 ALGO_BITMASK(29)
405#define GP22_CFG4FW_KEEP_DEFAULT_13 ALGO_BITMASK(30)
406#define GP22_CFG4FW_KEEP_DEFAULT_14 ALGO_BITMASK(31)
407
408#define GP22_CFG5_ID5_0 ALGO_BITMASK(0)
409#define GP22_CFG5_ID5_1 ALGO_BITMASK(1)
410#define GP22_CFG5_ID5_2 ALGO_BITMASK(2)
411#define GP22_CFG5_ID5_3 ALGO_BITMASK(3)
412#define GP22_CFG5_ID5_4 ALGO_BITMASK(4)
413#define GP22_CFG5_ID5_5 ALGO_BITMASK(5)
414#define GP22_CFG5_ID5_6 ALGO_BITMASK(6)
415#define GP22_CFG5_ID5_7 ALGO_BITMASK(7)
416#define GP22_CFG5_PHFIRE_0 ALGO_BITMASK(8)
417#define GP22_CFG5_PHFIRE_1 ALGO_BITMASK(9)
418#define GP22_CFG5_PHFIRE_2 ALGO_BITMASK(10)
419#define GP22_CFG5_PHFIRE_3 ALGO_BITMASK(11)
420#define GP22_CFG5_PHFIRE_4 ALGO_BITMASK(12)
421#define GP22_CFG5_PHFIRE_5 ALGO_BITMASK(13)
422#define GP22_CFG5_PHFIRE_6 ALGO_BITMASK(14)
423#define GP22_CFG5_PHFIRE_7 ALGO_BITMASK(15)
424#define GP22_CFG5_PHFIRE_8 ALGO_BITMASK(16)
425#define GP22_CFG5_PHFIRE_9 ALGO_BITMASK(17)
426#define GP22_CFG5_PHFIRE_10 ALGO_BITMASK(18)
427#define GP22_CFG5_PHFIRE_11 ALGO_BITMASK(19)
428#define GP22_CFG5_PHFIRE_12 ALGO_BITMASK(20)
429#define GP22_CFG5_PHFIRE_13 ALGO_BITMASK(21)
430#define GP22_CFG5_PHFIRE_14 ALGO_BITMASK(22)
431#define GP22_CFG5_PHFIRE_15 ALGO_BITMASK(23)
432#define GP22_CFG5_REPEAT_FIRE_0 ALGO_BITMASK(24)
433#define GP22_CFG5_REPEAT_FIRE_1 ALGO_BITMASK(25)
434#define GP22_CFG5_REPEAT_FIRE_2 ALGO_BITMASK(26)
435#define GP22_CFG5_DIS_PHASESHIFT ALGO_BITMASK(27)
436#define GP22_CFG5_EN_STARTNOISE ALGO_BITMASK(28)
437#define GP22_CFG5_CON_FIRE_DOWN ALGO_BITMASK(29)
438#define GP22_CFG5_CON_FIRE_UP ALGO_BITMASK(30)
439#define GP22_CFG5_CON_FIRE_BOTH ALGO_BITMASK(31)
440
441#define GP22_CFG6_ID6_0 ALGO_BITMASK(0)
442#define GP22_CFG6_ID6_1 ALGO_BITMASK(1)
443#define GP22_CFG6_ID6_2 ALGO_BITMASK(2)
444#define GP22_CFG6_ID6_3 ALGO_BITMASK(3)
445#define GP22_CFG6_ID6_4 ALGO_BITMASK(4)
446#define GP22_CFG6_ID6_5 ALGO_BITMASK(5)
447#define GP22_CFG6_ID6_6 ALGO_BITMASK(6)
448#define GP22_CFG6_ID6_7 ALGO_BITMASK(7)
449#define GP22_CFG6_ANZ_FIRE_END_0 ALGO_BITMASK(8)
450#define GP22_CFG6_ANZ_FIRE_END_1 ALGO_BITMASK(9)
451#define GP22_CFG6_ANZ_FIRE_END_2 ALGO_BITMASK(10)
452#define GP22_CFG6_TEMP_PORTDIR ALGO_BITMASK(11)
453#define GP22_CFG6_DOUBLE_RES ALGO_BITMASK(12)
454#define GP22_CFG6_QUAD_RES ALGO_BITMASK(13)
455#define GP22_CFG6_FIREO_DEF ALGO_BITMASK(14)
456#define GP22_CFG6_HZ60 ALGO_BITMASK(15)
457#define GP22_CFG6_CYCLE_TOF_0 ALGO_BITMASK(16)
458#define GP22_CFG6_CYCLE_TOF_1 ALGO_BITMASK(17)
459#define GP22_CFG6_CYCLE_TEMP_0 ALGO_BITMASK(18)
460#define GP22_CFG6_CYCLE_TEMP_1 ALGO_BITMASK(19)
461#define GP22_CFG6_START_CLKHS_END ALGO_BITMASK(20)
462#define GP22_CFG6_EN_INT_END ALGO_BITMASK(21)
463#define GP22_CFG6_TW2_0 ALGO_BITMASK(22)
464#define GP22_CFG6_TW2_1 ALGO_BITMASK(23)
465#define GP22_CFG6_EMPTY_0 ALGO_BITMASK(24)
466#define GP22_CFG6_DA_KORR_0 ALGO_BITMASK(25)
467#define GP22_CFG6_DA_KORR_1 ALGO_BITMASK(26)
468#define GP22_CFG6_DA_KORR_2 ALGO_BITMASK(27)
469#define GP22_CFG6_DA_KORR_3 ALGO_BITMASK(28)
470#define GP22_CFG6_EMPTY_1 ALGO_BITMASK(29)
471#define GP22_CFG6_NEG_STOP_TEMP ALGO_BITMASK(30)
472#define GP22_CFG6_EN_ANALOG ALGO_BITMASK(31)
473
474
475
476#endif /* __GP22_ATY_H */
477
478/******************************** End Of File *********************************/
Familiar functions of base algorithm.
Familiar functions of Kalman.
Familiar functions of NTC or others temperature calc.
float tempRealValue[2]
Definition: GP22_ATY.c:342
float speedWave[2]
Definition: GP22_ATY.c:345
uint32_t GP22_REG[7]
Definition: GP22_ATY.c:339
uint8_t gp22Mode
uint32_t tofValue[4]
Definition: GP22_ATY.c:341
float echoTimeDetect[2]
Definition: GP22_ATY.c:343
uint16_t offsetValue
Definition: GP22_ATY.c:354
uint32_t PW1ST_ValueA
Definition: GP22_ATY.c:346
float machineDelayTime
Definition: GP22_ATY.c:348
float GP22_CALC_CLKHS_FREQ
Definition: GP22_ATY.c:337
uint16_t ignoreTime
Definition: GP22_ATY.c:353
float usDistance
Definition: GP22_ATY.c:349
float echoTimeCalc[2]
Definition: GP22_ATY.c:344
uint8_t pulseNum
Definition: GP22_ATY.c:351
uint8_t GP22_Process_Run(uint8_t cmdCode)
Definition: GP22_ATY.c:535
uint8_t firstWaveEnable
Definition: GP22_ATY.c:352
uint8_t GP22_Ids[8]
Definition: GP22_ATY.c:338
Familiar definition of GPIO for users.
Familiar functions of SPI for all embedded device.
Headers include or defines for all embedded code.
unsigned long uint32_t
Definition: fw_types.h:20
unsigned short uint16_t
Definition: fw_types.h:19
unsigned char uint8_t
Definition: fw_types.h:18