brushless25  2.1.0.0
brushless25.h
Go to the documentation of this file.
1 /****************************************************************************
2 ** Copyright (C) 2020 MikroElektronika d.o.o.
3 ** Contact: https://www.mikroe.com/contact
4 **
5 ** Permission is hereby granted, free of charge, to any person obtaining a copy
6 ** of this software and associated documentation files (the "Software"), to deal
7 ** in the Software without restriction, including without limitation the rights
8 ** to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 ** copies of the Software, and to permit persons to whom the Software is
10 ** furnished to do so, subject to the following conditions:
11 ** The above copyright notice and this permission notice shall be
12 ** included in all copies or substantial portions of the Software.
13 **
14 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
16 ** OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
18 ** DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT
19 ** OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
20 ** USE OR OTHER DEALINGS IN THE SOFTWARE.
21 ****************************************************************************/
22 
28 #ifndef BRUSHLESS25_H
29 #define BRUSHLESS25_H
30 
31 #ifdef __cplusplus
32 extern "C"{
33 #endif
34 
35 #include "mikrosdk_version.h"
36 
37 #ifdef __GNUC__
38 #if mikroSDK_GET_VERSION < 20800ul
39 #include "rcu_delays.h"
40 #else
41 #include "delays.h"
42 #endif
43 #endif
44 
45 #include "drv_digital_out.h"
46 #include "drv_digital_in.h"
47 #include "drv_i2c_master.h"
48 #include "drv_spi_master.h"
49 #include "spi_specifics.h"
50 #include "drv_pwm.h"
51 
72 #define BRUSHLESS25_REG_ISD_CONFIG 0x80
73 #define BRUSHLESS25_REG_MOTOR_STARTUP1 0x82
74 #define BRUSHLESS25_REG_MOTOR_STARTUP2 0x84
75 #define BRUSHLESS25_REG_CLOSED_LOOP1 0x86
76 #define BRUSHLESS25_REG_CLOSED_LOOP2 0x88
77 #define BRUSHLESS25_REG_CLOSED_LOOP3 0x8A
78 #define BRUSHLESS25_REG_CLOSED_LOOP4 0x8C
79 #define BRUSHLESS25_REG_CONST_SPEED 0x8E
80 #define BRUSHLESS25_REG_CONST_PWR 0x90
81 #define BRUSHLESS25_REG_FAULT_CONFIG1 0x92
82 #define BRUSHLESS25_REG_FAULT_CONFIG2 0x94
83 #define BRUSHLESS25_REG_TRAP_CONFIG1 0x9A
84 #define BRUSHLESS25_REG_TRAP_CONFIG2 0x9C
85 #define BRUSHLESS25_REG_150_DEG_TWO_PH_PROFILE 0x96
86 #define BRUSHLESS25_REG_150_DEG_THREE_PH_PROFILE 0x98
87 #define BRUSHLESS25_REG_PIN_CONFIG1 0xA4
88 #define BRUSHLESS25_REG_PIN_CONFIG2 0xA6
89 #define BRUSHLESS25_REG_DEVICE_CONFIG 0xA8
90 #define BRUSHLESS25_REG_PERIPH_CONFIG 0xAA
91 #define BRUSHLESS25_REG_GD_CONFIG1 0xAC
92 #define BRUSHLESS25_REG_GD_CONFIG2 0xAE
93 #define BRUSHLESS25_REG_GATE_DRIVER_FAULT_STATUS 0xE0
94 #define BRUSHLESS25_REG_CONTROLLER_FAULT_STATUS 0xE2
95 #define BRUSHLESS25_REG_SYS_STATUS1 0xE4
96 #define BRUSHLESS25_REG_SYS_STATUS2 0xEA
97 #define BRUSHLESS25_REG_SYS_STATUS3 0xEC
98 #define BRUSHLESS25_REG_ALGO_CTRL1 0xE6
99 #define BRUSHLESS25_REG_DEVICE_CTRL 0xE8
100 
105 #define BRUSHLESS25_MEM_SEC 0x00
106 #define BRUSHLESS25_MEM_PAGE 0x00
107 
108 
109  // brushless25_reg
111 
131 #define BRUSHLESS25_ISD_EN 0x40000000ul
132 #define BRUSHLESS25_BRAKE_EN 0x20000000ul
133 #define BRUSHLESS25_HIZ_EN 0x10000000ul
134 #define BRUSHLESS25_RVS_DR_EN 0x08000000ul
135 #define BRUSHLESS25_RESYNC_EN 0x04000000ul
136 #define BRUSHLESS25_STAT_BRK_EN 0x02000000ul
137 #define BRUSHLESS25_STAT_DETECT_THR_5mV 0x00000000ul
138 #define BRUSHLESS25_STAT_DETECT_THR_10mV 0x00400000ul
139 #define BRUSHLESS25_STAT_DETECT_THR_15mV 0x00800000ul
140 #define BRUSHLESS25_STAT_DETECT_THR_20mV 0x00C00000ul
141 #define BRUSHLESS25_STAT_DETECT_THR_25mV 0x01000000ul
142 #define BRUSHLESS25_STAT_DETECT_THR_30mV 0x01400000ul
143 #define BRUSHLESS25_STAT_DETECT_THR_50mV 0x01800000ul
144 #define BRUSHLESS25_STAT_DETECT_THR_1000mV 0x01C00000ul
145 #define BRUSHLESS25_LOW_SIDE_BRAKE 0x00000000ul
146 #define BRUSHLESS25_HIGH_SIDE_BRAKE 0x00200000ul
147 #define BRUSHLESS25_BRK_CURR_THR_USED 0x00100000ul
148 #define BRUSHLESS25_BRK_CURR_THR_5mV 0x00000000ul
149 #define BRUSHLESS25_BRK_CURR_THR_10mV 0x00020000ul
150 #define BRUSHLESS25_BRK_CURR_THR_15mV 0x00040000ul
151 #define BRUSHLESS25_BRK_CURR_THR_20mV 0x00060000ul
152 #define BRUSHLESS25_BRK_CURR_THR_25mV 0x00080000ul
153 #define BRUSHLESS25_BRK_CURR_THR_30mV 0x000A0000ul
154 #define BRUSHLESS25_BRK_CURR_THR_50mV 0x000C0000ul
155 #define BRUSHLESS25_BRK_CURR_THR_100mV 0x000E0000ul
156 #define BRUSHLESS25_BRK_TIME_10mS 0x00000000ul
157 #define BRUSHLESS25_BRK_TIME_50mS 0x00002000ul
158 #define BRUSHLESS25_BRK_TIME_100mS 0x00004000ul
159 #define BRUSHLESS25_BRK_TIME_200mS 0x00006000ul
160 #define BRUSHLESS25_BRK_TIME_300mS 0x00008000ul
161 #define BRUSHLESS25_BRK_TIME_400mS 0x0000A000ul
162 #define BRUSHLESS25_BRK_TIME_500mS 0x0000C000ul
163 #define BRUSHLESS25_BRK_TIME_750mS 0x0000E000ul
164 #define BRUSHLESS25_BRK_TIME_1S 0x00010000ul
165 #define BRUSHLESS25_BRK_TIME_2S 0x00012000ul
166 #define BRUSHLESS25_BRK_TIME_3S 0x00014000ul
167 #define BRUSHLESS25_BRK_TIME_4S 0x00016000ul
168 #define BRUSHLESS25_BRK_TIME_5S 0x00018000ul
169 #define BRUSHLESS25_BRK_TIME_7S5 0x0001A000ul
170 #define BRUSHLESS25_BRK_TIME_10S 0x0001C000ul
171 #define BRUSHLESS25_BRK_TIME_15S 0x0001E000ul
172 #define BRUSHLESS25_HIZ_TIME_10mS 0x00000000ul
173 #define BRUSHLESS25_HIZ_TIME_50mS 0x00000200ul
174 #define BRUSHLESS25_HIZ_TIME_100mS 0x00000400ul
175 #define BRUSHLESS25_HIZ_TIME_200mS 0x00000600ul
176 #define BRUSHLESS25_HIZ_TIME_300mS 0x00000800ul
177 #define BRUSHLESS25_HIZ_TIME_400mS 0x00000A00ul
178 #define BRUSHLESS25_HIZ_TIME_500mS 0x00000C00ul
179 #define BRUSHLESS25_HIZ_TIME_750mS 0x00000E00ul
180 #define BRUSHLESS25_HIZ_TIME_1S 0x00001000ul
181 #define BRUSHLESS25_HIZ_TIME_2S 0x00001200ul
182 #define BRUSHLESS25_HIZ_TIME_3S 0x00001600ul
183 #define BRUSHLESS25_HIZ_TIME_4S 0x00001800ul
184 #define BRUSHLESS25_HIZ_TIME_5S 0x00001A00ul
185 #define BRUSHLESS25_HIZ_TIME_7S5 0x00001C00ul
186 #define BRUSHLESS25_HIZ_TIME_10S 0x00001E00ul
187 #define BRUSHLESS25_HIZ_TIME_15S 0x00000000ul
188 #define BRUSHLESS25_STARTUP_BRK_TIME_1mS 0x00000000ul
189 #define BRUSHLESS25_STARTUP_BRK_TIME_10mS 0x00000040ul
190 #define BRUSHLESS25_STARTUP_BRK_TIME_25mS 0x00000080ul
191 #define BRUSHLESS25_STARTUP_BRK_TIME_50mS 0x000000C0ul
192 #define BRUSHLESS25_STARTUP_BRK_TIME_100mS 0x00000100ul
193 #define BRUSHLESS25_STARTUP_BRK_TIME_250mS 0x00000140ul
194 #define BRUSHLESS25_STARTUP_BRK_TIME_500mS 0x00000180ul
195 #define BRUSHLESS25_STARTUP_BRK_TIME_1000mS 0x000001C0ul
196 #define BRUSHLESS25_RESYNC_MIN_THRESHOLD_MIN_DUTY 0x00000000ul
197 #define BRUSHLESS25_RESYNC_MIN_THRESHOLD_300mV 0x00000008ul
198 #define BRUSHLESS25_RESYNC_MIN_THRESHOLD_400mV 0x00000010ul
199 #define BRUSHLESS25_RESYNC_MIN_THRESHOLD_500mV 0x00000018ul
200 #define BRUSHLESS25_RESYNC_MIN_THRESHOLD_600mV 0x00000020ul
201 #define BRUSHLESS25_RESYNC_MIN_THRESHOLD_800mV 0x00000028ul
202 #define BRUSHLESS25_RESYNC_MIN_THRESHOLD_1V 0x00000030ul
203 #define BRUSHLESS25_RESYNC_MIN_THRESHOLD_1V25 0x00000038ul
204 
209 #define BRUSHLESS25_MTR_STARTUP_ALIGN 0x00000000ul
210 #define BRUSHLESS25_MTR_STARTUP_DUBLE_ALIGN 0x20000000ul
211 #define BRUSHLESS25_MTR_STARTUP_IPN 0x40000000ul
212 #define BRUSHLESS25_MTR_STARTUP_SLOW_FIRST_CYCLE 0x60000000ul
213 #define BRUSHLESS25_ALIGN_RAMP_RATE_POINT1_V_PER_S 0x00000000ul
214 #define BRUSHLESS25_ALIGN_RAMP_RATE_POINT2_V_PER_S 0x02000000ul
215 #define BRUSHLESS25_ALIGN_RAMP_RATE_POINT5_V_PER_S 0x04000000ul
216 #define BRUSHLESS25_ALIGN_RAMP_RATE_1_V_PER_S 0x06000000ul
217 #define BRUSHLESS25_ALIGN_RAMP_RATE_2V5_V_PER_S 0x08000000ul
218 #define BRUSHLESS25_ALIGN_RAMP_RATE_5_V_PER_S 0x0A000000ul
219 #define BRUSHLESS25_ALIGN_RAMP_RATE_7V5_V_PER_S 0x0C000000ul
220 #define BRUSHLESS25_ALIGN_RAMP_RATE_10_V_PER_S 0x0E000000ul
221 #define BRUSHLESS25_ALIGN_RAMP_RATE_25_V_PER_S 0x10000000ul
222 #define BRUSHLESS25_ALIGN_RAMP_RATE_50_V_PER_S 0x12000000ul
223 #define BRUSHLESS25_ALIGN_RAMP_RATE_75_V_PER_S 0x14000000ul
224 #define BRUSHLESS25_ALIGN_RAMP_RATE_100_V_PER_S 0x16000000ul
225 #define BRUSHLESS25_ALIGN_RAMP_RATE_250_V_PER_S 0x18000000ul
226 #define BRUSHLESS25_ALIGN_RAMP_RATE_500_V_PER_S 0x1A000000ul
227 #define BRUSHLESS25_ALIGN_RAMP_RATE_750_V_PER_S 0x1C000000ul
228 #define BRUSHLESS25_ALIGN_RAMP_RATE_1000_V_PER_S 0x1E000000ul
229 #define BRUSHLESS25_ALIGN_TIME_5_mS 0x00000000ul
230 #define BRUSHLESS25_ALIGN_TIME_10_mS 0x00200000ul
231 #define BRUSHLESS25_ALIGN_TIME_25_mS 0x00400000ul
232 #define BRUSHLESS25_ALIGN_TIME_50_mS 0x00600000ul
233 #define BRUSHLESS25_ALIGN_TIME_75_mS 0x00800000ul
234 #define BRUSHLESS25_ALIGN_TIME_100_mS 0x00A00000ul
235 #define BRUSHLESS25_ALIGN_TIME_200_mS 0x00C00000ul
236 #define BRUSHLESS25_ALIGN_TIME_400_mS 0x00E00000ul
237 #define BRUSHLESS25_ALIGN_TIME_600_mS 0x01000000ul
238 #define BRUSHLESS25_ALIGN_TIME_800_mS 0x01200000ul
239 #define BRUSHLESS25_ALIGN_TIME_1_S 0x01400000ul
240 #define BRUSHLESS25_ALIGN_TIME_2_S 0x01600000ul
241 #define BRUSHLESS25_ALIGN_TIME_4_S 0x01800000ul
242 #define BRUSHLESS25_ALIGN_TIME_6_S 0x01A00000ul
243 #define BRUSHLESS25_ALIGN_TIME_8_S 0x01C00000ul
244 #define BRUSHLESS25_ALIGN_TIME_10_S 0x01E00000ul
245 #define BRUSHLESS25_ALIGN_CURR_THR_NA 0x00000000ul
246 #define BRUSHLESS25_ALIGN_CURR_THR_POINT1_V 0x00020000ul
247 #define BRUSHLESS25_ALIGN_CURR_THR_POINT2_V 0x00040000ul
248 #define BRUSHLESS25_ALIGN_CURR_THR_POINT3_V 0x00060000ul
249 #define BRUSHLESS25_ALIGN_CURR_THR_POINT4_V 0x00080000ul
250 #define BRUSHLESS25_ALIGN_CURR_THR_POINT5_V 0x000A0000ul
251 #define BRUSHLESS25_ALIGN_CURR_THR_POINT6_V 0x000C0000ul
252 #define BRUSHLESS25_ALIGN_CURR_THR_POINT7_V 0x000E0000ul
253 #define BRUSHLESS25_ALIGN_CURR_THR_POINT8_V 0x00100000ul
254 #define BRUSHLESS25_ALIGN_CURR_THR_POINT9_V 0x00120000ul
255 #define BRUSHLESS25_ALIGN_CURR_THR_1_V 0x00140000ul
256 #define BRUSHLESS25_ALIGN_CURR_THR_1POINT1_V 0x00160000ul
257 #define BRUSHLESS25_ALIGN_CURR_THR_1POINT2_V 0x00180000ul
258 #define BRUSHLESS25_ALIGN_CURR_THR_1POINT3_V 0x001A0000ul
259 #define BRUSHLESS25_ALIGN_CURR_THR_1POINT4_V 0x001C0000ul
260 #define BRUSHLESS25_ALIGN_CURR_THR_1POINT5_V 0x001E0000ul
261 #define BRUSHLESS25_IPD_CLK_FREQ_50Hz 0x00000000ul
262 #define BRUSHLESS25_IPD_CLK_FREQ_100Hz 0x00004000ul
263 #define BRUSHLESS25_IPD_CLK_FREQ_250Hz 0x00008000ul
264 #define BRUSHLESS25_IPD_CLK_FREQ_500Hz 0x0000C000ul
265 #define BRUSHLESS25_IPD_CLK_FREQ_1000Hz 0x00010000ul
266 #define BRUSHLESS25_IPD_CLK_FREQ_2000Hz 0x00014000ul
267 #define BRUSHLESS25_IPD_CLK_FREQ_5000Hz 0x00018000ul
268 #define BRUSHLESS25_IPD_CLK_FREQ_10000Hz 0x0001C000ul
269 #define BRUSHLESS25_IPD_CURR_THR_POINT1_V 0x00000000ul
270 #define BRUSHLESS25_IPD_CURR_THR_POINT2_V 0x00000400ul
271 #define BRUSHLESS25_IPD_CURR_THR_POINT3_V 0x00000800ul
272 #define BRUSHLESS25_IPD_CURR_THR_POINT4_V 0x00000C00ul
273 #define BRUSHLESS25_IPD_CURR_THR_POINT5_V 0x00001400ul
274 #define BRUSHLESS25_IPD_CURR_THR_POINT6_V 0x00001800ul
275 #define BRUSHLESS25_IPD_CURR_THR_POINT7_V 0x00001C00ul
276 #define BRUSHLESS25_IPD_CURR_THR_POINT8_V 0x00002000ul
277 #define BRUSHLESS25_IPD_CURR_THR_POINT9_V 0x00002400ul
278 #define BRUSHLESS25_IPD_CURR_THR_1_V 0x00002800ul
279 #define BRUSHLESS25_IPD_CURR_THR_1POINT1_V 0x00002C00ul
280 #define BRUSHLESS25_IPD_CURR_THR_1POINT2_V 0x00003000ul
281 #define BRUSHLESS25_IPD_CURR_THR_1POINT3_V 0x00003400ul
282 #define BRUSHLESS25_IPD_CURR_THR_1POINT4_V 0x00003800ul
283 #define BRUSHLESS25_IPD_CURR_THR_1POINT5_V 0x00003C00ul
284 #define BRUSHLESS25_IPD_RLS_MODE_BRAKE 0x00000000ul
285 #define BRUSHLESS25_IPD_RLS_MODE_TRISTATE 0x00000100ul
286 #define BRUSHLESS25_IPD_ADV_ANGLE_0DEG 0x00000000ul
287 #define BRUSHLESS25_IPD_ADV_ANGLE_30DEG 0x00000040ul
288 #define BRUSHLESS25_IPD_ADV_ANGLE_60DEG 0x00000080ul
289 #define BRUSHLESS25_IPD_ADV_ANGLE_90DEG 0x000000C0ul
290 #define BRUSHLESS25_IPD_REPEAT_ONE 0x00000000ul
291 #define BRUSHLESS25_IPD_REPEAT_AVERAGE_OF_2 0x00000010ul
292 #define BRUSHLESS25_IPD_REPEAT_AVERAGE_OF_3 0x00000020ul
293 #define BRUSHLESS25_IPD_REPEAT_AVERAGE_OF_4 0x00000030ul
294 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_POINT05_Hz 0x00000000ul
295 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_POINT1_Hz 0x00000001ul
296 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_POINT25_Hz 0x00000002ul
297 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_POINT5_Hz 0x00000003ul
298 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_1_Hz 0x00000004ul
299 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_2_Hz 0x00000005ul
300 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_3_Hz 0x00000006ul
301 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_5_Hz 0x00000007ul
302 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_10_Hz 0x00000008ul
303 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_15_Hz 0x00000009ul
304 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_25_Hz 0x0000000Bul
305 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_50_Hz 0x0000000Cul
306 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_100_Hz 0x0000000Dul
307 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_150_Hz 0x0000000Eul
308 #define BRUSHLESS25_SLOW_FIRST_CYC_FREQ_200_Hz 0x0000000Ful
309 
314 #define BRUSHLESS25_OL_LIMIT_CONFIG_EN 0x00000000ul
315 #define BRUSHLESS25_OL_ILIMIT_CONFIG_EN 0x40000000ul
316 #define BRUSHLESS25_OL_DUTY_10_PERCENT 0x00000000ul
317 #define BRUSHLESS25_OL_DUTY_15_PERCENT 0x08000000ul
318 #define BRUSHLESS25_OL_DUTY_20_PERCENT 0x10000000ul
319 #define BRUSHLESS25_OL_DUTY_25_PERCENT 0x18000000ul
320 #define BRUSHLESS25_OL_DUTY_30_PERCENT 0x20000000ul
321 #define BRUSHLESS25_OL_DUTY_40_PERCENT 0x28000000ul
322 #define BRUSHLESS25_OL_DUTY_50_PERCENT 0x30000000ul
323 #define BRUSHLESS25_OL_DUTY_100_PERCENT 0x38000000ul
324 #define BRUSHLESS25_OL_LIMIT_NA 0x00000000ul
325 #define BRUSHLESS25_OL_LIMIT_POINT1_v 0x00800000ul
326 #define BRUSHLESS25_OL_LIMIT_POINT2_v 0x01000000ul
327 #define BRUSHLESS25_OL_LIMIT_POINT3_v 0x01800000ul
328 #define BRUSHLESS25_OL_LIMIT_POINT4_v 0x02000000ul
329 #define BRUSHLESS25_OL_LIMIT_POINT5_v 0x02800000ul
330 #define BRUSHLESS25_OL_LIMIT_POINT6_v 0x03000000ul
331 #define BRUSHLESS25_OL_LIMIT_POINT7_v 0x03800000ul
332 #define BRUSHLESS25_OL_LIMIT_POINT8_v 0x04000000ul
333 #define BRUSHLESS25_OL_LIMIT_POINT9_v 0x04800000ul
334 #define BRUSHLESS25_OL_LIMIT_1_v 0x05000000ul
335 #define BRUSHLESS25_OL_LIMIT_1V1_v 0x05800000ul
336 #define BRUSHLESS25_OL_LIMIT_1V2_v 0x06000000ul
337 #define BRUSHLESS25_OL_LIMIT_1V3_v 0x06800000ul
338 #define BRUSHLESS25_OL_LIMIT_1V4_v 0x07000000ul
339 #define BRUSHLESS25_OL_LIMIT_1V5_v 0x07800000ul
340 #define BRUSHLESS25_OL_ACC_A1_0POINT005_Hz_S 0x00000000ul
341 #define BRUSHLESS25_OL_ACC_A1_0POINT01_Hz_S 0x00040000ul
342 #define BRUSHLESS25_OL_ACC_A1_0POINT025_Hz_S 0x00080000ul
343 #define BRUSHLESS25_OL_ACC_A1_0POINT05_Hz_S 0x000C0000ul
344 #define BRUSHLESS25_OL_ACC_A1_0POINT1_Hz_S 0x00100000ul
345 #define BRUSHLESS25_OL_ACC_A1_0POINT25_Hz_S 0x00140000ul
346 #define BRUSHLESS25_OL_ACC_A1_0POINT5_Hz_S 0x00180000ul
347 #define BRUSHLESS25_OL_ACC_A1_1_Hz_S 0x001C0000ul
348 #define BRUSHLESS25_OL_ACC_A1_2POINT5_Hz_S 0x00200000ul
349 #define BRUSHLESS25_OL_ACC_A1_5_Hz_S 0x00240000ul
350 #define BRUSHLESS25_OL_ACC_A1_7POINT5_Hz_S 0x00280000ul
351 #define BRUSHLESS25_OL_ACC_A1_10_Hz_S 0x002C0000ul
352 #define BRUSHLESS25_OL_ACC_A1_12POINT5_Hz_S 0x00300000ul
353 #define BRUSHLESS25_OL_ACC_A1_15_Hz_S 0x00340000ul
354 #define BRUSHLESS25_OL_ACC_A1_20_Hz_S 0x00380000ul
355 #define BRUSHLESS25_OL_ACC_A1_30_Hz_S 0x003C0000ul
356 #define BRUSHLESS25_OL_ACC_A1_40_Hz_S 0x00400000ul
357 #define BRUSHLESS25_OL_ACC_A1_50_Hz_S 0x00440000ul
358 #define BRUSHLESS25_OL_ACC_A1_60_Hz_S 0x00480000ul
359 #define BRUSHLESS25_OL_ACC_A1_75_Hz_S 0x004C0000ul
360 #define BRUSHLESS25_OL_ACC_A1_100_Hz_S 0x00500000ul
361 #define BRUSHLESS25_OL_ACC_A1_125_Hz_S 0x00540000ul
362 #define BRUSHLESS25_OL_ACC_A1_150_Hz_S 0x00580000ul
363 #define BRUSHLESS25_OL_ACC_A1_175_Hz_S 0x005C0000ul
364 #define BRUSHLESS25_OL_ACC_A1_200_Hz_S 0x00600000ul
365 #define BRUSHLESS25_OL_ACC_A1_250_Hz_S 0x00640000ul
366 #define BRUSHLESS25_OL_ACC_A1_300_Hz_S 0x00680000ul
367 #define BRUSHLESS25_OL_ACC_A1_400_Hz_S 0x006C0000ul
368 #define BRUSHLESS25_OL_ACC_A1_500_Hz_S 0x00700000ul
369 #define BRUSHLESS25_OL_ACC_A1_750_Hz_S 0x00740000ul
370 #define BRUSHLESS25_OL_ACC_A1_1000_Hz_S 0x00780000ul
371 #define BRUSHLESS25_OL_ACC_A1_NO_LIMIT 0x007C0000ul
372 #define BRUSHLESS25_OL_ACC_A2_0POINT005_Hz_S 0x00000000ul
373 #define BRUSHLESS25_OL_ACC_A2_0POINT01_Hz_S 0x00002000ul
374 #define BRUSHLESS25_OL_ACC_A2_0POINT025_Hz_S 0x00004000ul
375 #define BRUSHLESS25_OL_ACC_A2_0POINT05_Hz_S 0x00006000ul
376 #define BRUSHLESS25_OL_ACC_A2_0POINT1_Hz_S 0x00008000ul
377 #define BRUSHLESS25_OL_ACC_A2_0POINT25_Hz_S 0x0000A000ul
378 #define BRUSHLESS25_OL_ACC_A2_0POINT5_Hz_S 0x0000C000ul
379 #define BRUSHLESS25_OL_ACC_A2_1_Hz_S 0x0000E000ul
380 #define BRUSHLESS25_OL_ACC_A2_2POINT5_Hz_S 0x00010000ul
381 #define BRUSHLESS25_OL_ACC_A2_5_Hz_S 0x00012000ul
382 #define BRUSHLESS25_OL_ACC_A2_7POINT5_Hz_S 0x00014000ul
383 #define BRUSHLESS25_OL_ACC_A2_10_Hz_S 0x00016000ul
384 #define BRUSHLESS25_OL_ACC_A2_12POINT5_Hz_S 0x00018000ul
385 #define BRUSHLESS25_OL_ACC_A2_15_Hz_S 0x0001A000ul
386 #define BRUSHLESS25_OL_ACC_A2_20_Hz_S 0x0001C000ul
387 #define BRUSHLESS25_OL_ACC_A2_30_Hz_S 0x0001E000ul
388 #define BRUSHLESS25_OL_ACC_A2_40_Hz_S 0x00020000ul
389 #define BRUSHLESS25_OL_ACC_A2_50_Hz_S 0x00022000ul
390 #define BRUSHLESS25_OL_ACC_A2_60_Hz_S 0x00024000ul
391 #define BRUSHLESS25_OL_ACC_A2_75_Hz_S 0x00026000ul
392 #define BRUSHLESS25_OL_ACC_A2_100_Hz_S 0x00028000ul
393 #define BRUSHLESS25_OL_ACC_A2_125_Hz_S 0x0002A000ul
394 #define BRUSHLESS25_OL_ACC_A2_150_Hz_S 0x0002C000ul
395 #define BRUSHLESS25_OL_ACC_A2_175_Hz_S 0x0002E000ul
396 #define BRUSHLESS25_OL_ACC_A2_200_Hz_S 0x00030000ul
397 #define BRUSHLESS25_OL_ACC_A2_250_Hz_S 0x00032000ul
398 #define BRUSHLESS25_OL_ACC_A2_300_Hz_S 0x00034000ul
399 #define BRUSHLESS25_OL_ACC_A2_400_Hz_S 0x00036000ul
400 #define BRUSHLESS25_OL_ACC_A2_500_Hz_S 0x00038000ul
401 #define BRUSHLESS25_OL_ACC_A2_750_Hz_S 0x0003A000ul
402 #define BRUSHLESS25_OL_ACC_A2_1000_Hz_S 0x0003C000ul
403 #define BRUSHLESS25_OL_ACC_A2_NO_LIMIT 0x0003E000ul
404 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_1Hz 0x00000000ul
405 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_4Hz 0x00000100ul
406 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_8Hz 0x00000200ul
407 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_12Hz 0x00000300ul
408 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_16Hz 0x00000400ul
409 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_20Hz 0x00000500ul
410 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_24Hz 0x00000600ul
411 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_28Hz 0x00000700ul
412 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_32Hz 0x00000800ul
413 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_36Hz 0x00000900ul
414 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_40Hz 0x00000A00ul
415 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_45Hz 0x00000B00ul
416 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_50Hz 0x00000C00ul
417 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_55Hz 0x00000D00ul
418 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_60Hz 0x00000E00ul
419 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_65Hz 0x00000F00ul
420 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_70Hz 0x00001000ul
421 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_75Hz 0x00001100ul
422 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_80Hz 0x00001200ul
423 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_85Hz 0x00001300ul
424 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_90Hz 0x00001400ul
425 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_100Hz 0x00001500ul
426 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_150Hz 0x00001600ul
427 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_200Hz 0x00001700ul
428 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_250Hz 0x00001800ul
429 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_300Hz 0x00001900ul
430 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_350Hz 0x00001A00ul
431 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_400Hz 0x00001B00ul
432 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_450Hz 0x00001C00ul
433 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_500Hz 0x00001D00ul
434 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_550Hz 0x00001E00ul
435 #define BRUSHLESS25_OPN_CL_HANDOFF_THE_600Hz 0x00001F00ul
436 #define BRUSHLESS25_AUTO_HANDOFF_ENABLE 0x00000080ul
437 #define BRUSHLESS25_FIRST_CYCLE_FREQ_SEL_0_Hz 0x00000040ul
438 #define BRUSHLESS25_MIN_DUTY_1POINT5_PERCENT 0x00000000ul
439 #define BRUSHLESS25_MIN_DUTY_2_PERCENT 0x00000004ul
440 #define BRUSHLESS25_MIN_DUTY_3_PERCENT 0x00000008ul
441 #define BRUSHLESS25_MIN_DUTY_4_PERCENT 0x0000000Cul
442 #define BRUSHLESS25_MIN_DUTY_5_PERCENT 0x00000010ul
443 #define BRUSHLESS25_MIN_DUTY_6_PERCENT 0x00000014ul
444 #define BRUSHLESS25_MIN_DUTY_7_PERCENT 0x00000018ul
445 #define BRUSHLESS25_MIN_DUTY_8_PERCENT 0x0000001Cul
446 #define BRUSHLESS25_MIN_DUTY_9_PERCENT 0x00000020ul
447 #define BRUSHLESS25_MIN_DUTY_10_PERCENT 0x00000024ul
448 #define BRUSHLESS25_MIN_DUTY_12_PERCENT 0x00000028ul
449 #define BRUSHLESS25_MIN_DUTY_15_PERCENT 0x0000002Cul
450 #define BRUSHLESS25_MIN_DUTY_17POINT5_PERCENT 0x00000030ul
451 #define BRUSHLESS25_MIN_DUTY_20_PERCENT 0x00000034ul
452 #define BRUSHLESS25_MIN_DUTY_25_PERCENT 0x00000038ul
453 #define BRUSHLESS25_MIN_DUTY_30_PERCENT 0x0000003Cul
454 
459 #define BRUSHLESS25_COMM_CONTROL_120_DEG 0x00000000ul
460 #define BRUSHLESS25_COMM_CONTROL_120_TO_150_DEG 0x20000000ul
461 #define BRUSHLESS25_CL_ACC_0POINT005_V_S 0x00000000ul
462 #define BRUSHLESS25_CL_ACC_0POINT01_V_S 0x01000000ul
463 #define BRUSHLESS25_CL_ACC_0POINT025_V_S 0x02000000ul
464 #define BRUSHLESS25_CL_ACC_0POINT05_V_S 0x03000000ul
465 #define BRUSHLESS25_CL_ACC_0POINT1_V_S 0x04000000ul
466 #define BRUSHLESS25_CL_ACC_0POINT25_V_S 0x05000000ul
467 #define BRUSHLESS25_CL_ACC_0POINT5_V_S 0x06000000ul
468 #define BRUSHLESS25_CL_ACC_1_V_S 0x07000000ul
469 #define BRUSHLESS25_CL_ACC_2POINT5_V_S 0x08000000ul
470 #define BRUSHLESS25_CL_ACC_5_V_S 0x09000000ul
471 #define BRUSHLESS25_CL_ACC_7POINT5_V_S 0x0A000000ul
472 #define BRUSHLESS25_CL_ACC_10_V_S 0x0B000000ul
473 #define BRUSHLESS25_CL_ACC_12POINT5_V_S 0x0C000000ul
474 #define BRUSHLESS25_CL_ACC_15_V_S 0x0D000000ul
475 #define BRUSHLESS25_CL_ACC_20_V_S 0x0E000000ul
476 #define BRUSHLESS25_CL_ACC_30_V_S 0x0F000000ul
477 #define BRUSHLESS25_CL_ACC_40_V_S 0x10000000ul
478 #define BRUSHLESS25_CL_ACC_50_V_S 0x11000000ul
479 #define BRUSHLESS25_CL_ACC_60_V_S 0x12000000ul
480 #define BRUSHLESS25_CL_ACC_75_V_S 0x13000000ul
481 #define BRUSHLESS25_CL_ACC_100_V_S 0x14000000ul
482 #define BRUSHLESS25_CL_ACC_125_V_S 0x15000000ul
483 #define BRUSHLESS25_CL_ACC_150_V_S 0x16000000ul
484 #define BRUSHLESS25_CL_ACC_175_V_S 0x17000000ul
485 #define BRUSHLESS25_CL_ACC_200_V_S 0x18000000ul
486 #define BRUSHLESS25_CL_ACC_250_V_S 0x19000000ul
487 #define BRUSHLESS25_CL_ACC_300_V_S 0x1A000000ul
488 #define BRUSHLESS25_CL_ACC_400_V_S 0x1B000000ul
489 #define BRUSHLESS25_CL_ACC_500_V_S 0x1C000000ul
490 #define BRUSHLESS25_CL_ACC_750_V_S 0x1D000000ul
491 #define BRUSHLESS25_CL_ACC_1000_V_S 0x1E000000ul
492 #define BRUSHLESS25_CL_ACC_32767_V_S 0x1F000000ul
493 #define BRUSHLESS25_CL_DEC_CONFIG_BY_CL_DEC 0x00000000ul
494 #define BRUSHLESS25_CL_DEC_CONFIG_BY_CL_ACC 0x00800000ul
495 #define BRUSHLESS25_CL_DEC_0POINT005_V_S 0x00000000ul
496 #define BRUSHLESS25_CL_DEC_0POINT01_V_S 0x00040000ul
497 #define BRUSHLESS25_CL_DEC_0POINT025_V_S 0x00080000ul
498 #define BRUSHLESS25_CL_DEC_0POINT05_V_S 0x000C0000ul
499 #define BRUSHLESS25_CL_DEC_0POINT1_V_S 0x00100000ul
500 #define BRUSHLESS25_CL_DEC_0POINT25_V_S 0x00140000ul
501 #define BRUSHLESS25_CL_DEC_0POINT5_V_S 0x00180000ul
502 #define BRUSHLESS25_CL_DEC_1_V_S 0x001C0000ul
503 #define BRUSHLESS25_CL_DEC_2POINT5_V_S 0x00200000ul
504 #define BRUSHLESS25_CL_DEC_5_V_S 0x00240000ul
505 #define BRUSHLESS25_CL_DEC_7POINT5_V_S 0x00280000ul
506 #define BRUSHLESS25_CL_DEC_10_V_S 0x002C0000ul
507 #define BRUSHLESS25_CL_DEC_12POINT5_V_S 0x00300000ul
508 #define BRUSHLESS25_CL_DEC_15_V_S 0x00340000ul
509 #define BRUSHLESS25_CL_DEC_20_V_S 0x00380000ul
510 #define BRUSHLESS25_CL_DEC_30_V_S 0x003C0000ul
511 #define BRUSHLESS25_CL_DEC_40_V_S 0x00400000ul
512 #define BRUSHLESS25_CL_DEC_50_V_S 0x00440000ul
513 #define BRUSHLESS25_CL_DEC_60_V_S 0x00480000ul
514 #define BRUSHLESS25_CL_DEC_75_V_S 0x004C0000ul
515 #define BRUSHLESS25_CL_DEC_100_V_S 0x00500000ul
516 #define BRUSHLESS25_CL_DEC_125_V_S 0x00540000ul
517 #define BRUSHLESS25_CL_DEC_150_V_S 0x00580000ul
518 #define BRUSHLESS25_CL_DEC_175_V_S 0x005C0000ul
519 #define BRUSHLESS25_CL_DEC_200_V_S 0x00600000ul
520 #define BRUSHLESS25_CL_DEC_250_V_S 0x00640000ul
521 #define BRUSHLESS25_CL_DEC_300_V_S 0x00680000ul
522 #define BRUSHLESS25_CL_DEC_400_V_S 0x006C0000ul
523 #define BRUSHLESS25_CL_DEC_500_V_S 0x00700000ul
524 #define BRUSHLESS25_CL_DEC_750_V_S 0x00740000ul
525 #define BRUSHLESS25_CL_DEC_1000_V_S 0x00780000ul
526 #define BRUSHLESS25_CL_DEC_32767_V_S 0x007C0000ul
527 #define BRUSHLESS25_PWM_FREQ_OUT_5_KHz 0x00000000ul
528 #define BRUSHLESS25_PWM_FREQ_OUT_6_KHz 0x00002000ul
529 #define BRUSHLESS25_PWM_FREQ_OUT_7_KHz 0x00004000ul
530 #define BRUSHLESS25_PWM_FREQ_OUT_8_KHz 0x00006000ul
531 #define BRUSHLESS25_PWM_FREQ_OUT_9_KHz 0x00008000ul
532 #define BRUSHLESS25_PWM_FREQ_OUT_10_KHz 0x0000A000ul
533 #define BRUSHLESS25_PWM_FREQ_OUT_11_KHz 0x0000C000ul
534 #define BRUSHLESS25_PWM_FREQ_OUT_12_KHz 0x0000E000ul
535 #define BRUSHLESS25_PWM_FREQ_OUT_13_KHz 0x00010000ul
536 #define BRUSHLESS25_PWM_FREQ_OUT_14_KHz 0x00012000ul
537 #define BRUSHLESS25_PWM_FREQ_OUT_15_KHz 0x00014000ul
538 #define BRUSHLESS25_PWM_FREQ_OUT_16_KHz 0x00016000ul
539 #define BRUSHLESS25_PWM_FREQ_OUT_17_KHz 0x00018000ul
540 #define BRUSHLESS25_PWM_FREQ_OUT_18_KHz 0x0001A000ul
541 #define BRUSHLESS25_PWM_FREQ_OUT_19_KHz 0x0001C000ul
542 #define BRUSHLESS25_PWM_FREQ_OUT_20_KHz 0x0001E000ul
543 #define BRUSHLESS25_PWM_FREQ_OUT_25_KHz 0x00020000ul
544 #define BRUSHLESS25_PWM_FREQ_OUT_30_KHz 0x00022000ul
545 #define BRUSHLESS25_PWM_FREQ_OUT_35_KHz 0x00024000ul
546 #define BRUSHLESS25_PWM_FREQ_OUT_40_KHz 0x00026000ul
547 #define BRUSHLESS25_PWM_FREQ_OUT_45_KHz 0x00028000ul
548 #define BRUSHLESS25_PWM_FREQ_OUT_50_KHz 0x0002A000ul
549 #define BRUSHLESS25_PWM_FREQ_OUT_55_KHz 0x0002C000ul
550 #define BRUSHLESS25_PWM_FREQ_OUT_60_KHz 0x0002E000ul
551 #define BRUSHLESS25_PWM_FREQ_OUT_65_KHz 0x00030000ul
552 #define BRUSHLESS25_PWM_FREQ_OUT_70_KHz 0x00032000ul
553 #define BRUSHLESS25_PWM_FREQ_OUT_75_KHz 0x00034000ul
554 #define BRUSHLESS25_PWM_FREQ_OUT_80_KHz 0x00036000ul
555 #define BRUSHLESS25_PWM_FREQ_OUT_85_KHz 0x00038000ul
556 #define BRUSHLESS25_PWM_FREQ_OUT_90_KHz 0x0003A000ul
557 #define BRUSHLESS25_PWM_FREQ_OUT_95_KHz 0x0003C000ul
558 #define BRUSHLESS25_PWM_FREQ_OUT_100_KHz 0x0003E000ul
559 #define BRUSHLESS25_PWM_MODUL_HIGH_SIDE_MODULATION 0x00000000ul
560 #define BRUSHLESS25_PWM_MODUL_LOW_SIDE_MODULATION 0x00000800ul
561 #define BRUSHLESS25_PWM_MODUL_MIXED_MODULATION 0x00001000ul
562 #define BRUSHLESS25_PWM_MODE_SINGLE_ENDED_MODE 0x00000000ul
563 #define BRUSHLESS25_PWM_MODE_COMPLEMENTARY_MODE 0x00000400ul
564 #define BRUSHLESS25_LD_ANGLE_POLARITY_NEGATICE 0x00000000ul
565 #define BRUSHLESS25_LD_ANGLE_POLARITY_POSITIVE 0x00000200ul
566 
571 #define BRUSHLESS25_FG_OPEN_IN_OL_AND_CL 0x00000000ul
572 #define BRUSHLESS25_FG_OPEN_ONLY_IN_CL 0x20000000ul
573 #define BRUSHLESS25_FG_OPEN_FOR_FIRS_TRY 0x40000000ul
574 #define BRUSHLESS25_DIV_IS_3_NO_OF_POLES_2 0x00000000ul
575 #define BRUSHLESS25_DIV_IS_1_NO_OF_POLES_2 0x02000000ul
576 #define BRUSHLESS25_DIV_IS_2_NO_OF_POLES_4 0x04000000ul
577 #define BRUSHLESS25_DIV_IS_3_NO_OF_POLES_6 0x06000000ul
578 #define BRUSHLESS25_DIV_IS_4_NO_OF_POLES_8 0x08000000ul
579 #define BRUSHLESS25_DIV_IS_5_NO_OF_POLES_10 0x0A000000ul
580 #define BRUSHLESS25_DIV_IS_6_NO_OF_POLES_12 0x0C000000ul
581 #define BRUSHLESS25_DIV_IS_7_NO_OF_POLES_14 0x0E000000ul
582 #define BRUSHLESS25_DIV_IS_8_NO_OF_POLES_16 0x10000000ul
583 #define BRUSHLESS25_DIV_IS_9_NO_OF_POLES_18 0x12000000ul
584 #define BRUSHLESS25_DIV_IS_10_NO_OF_POLES_20 0x14000000ul
585 #define BRUSHLESS25_DIV_IS_11_NO_OF_POLES_22 0x16000000ul
586 #define BRUSHLESS25_DIV_IS_12_NO_OF_POLES_24 0x18000000ul
587 #define BRUSHLESS25_DIV_IS_13_NO_OF_POLES_26 0x1A000000ul
588 #define BRUSHLESS25_DIV_IS_14_NO_OF_POLES_28 0x1C000000ul
589 #define BRUSHLESS25_DIV_IS_15_NO_OF_POLES_30 0x1E000000ul
590 #define BRUSHLESS25_FG_ACTIVE_UNTILL_SPEED_DROPS 0x00000000ul
591 #define BRUSHLESS25_FG_ACTIVE_WHEN_MOTOR_IS_RUNNING 0x01000000ul
592 #define BRUSHLESS25_FG_BEMF_THR_1_mV 0x00000000ul
593 #define BRUSHLESS25_FG_BEMF_THR_2_mV 0x00200000ul
594 #define BRUSHLESS25_FG_BEMF_THR_5_mV 0x00400000ul
595 #define BRUSHLESS25_FG_BEMF_THR_10_mV 0x00600000ul
596 #define BRUSHLESS25_FG_BEMF_THR_20_mV 0x00800000ul
597 #define BRUSHLESS25_FG_BEMF_THR_30_mV 0x00A00000ul
598 #define BRUSHLESS25_MTR_STOP_HI_Z 0x00000000ul
599 #define BRUSHLESS25_MTR_STOP_RECIRCULATION 0x00040000ul
600 #define BRUSHLESS25_MTR_STOP_LOW_SIDE_BRAKING 0x00080000ul
601 #define BRUSHLESS25_MTR_STOP_HIGH_SIDE_BRAKING 0x000C0000ul
602 #define BRUSHLESS25_MTR_STOP_ACTIVE_SPIN_DOWN 0x00100000ul
603 #define BRUSHLESS25_MTR_STOP_BRK_TIME_1_mS 0x00000000ul
604 #define BRUSHLESS25_MTR_STOP_BRK_TIME_2_mS 0x00004000ul
605 #define BRUSHLESS25_MTR_STOP_BRK_TIME_5_mS 0x00008000ul
606 #define BRUSHLESS25_MTR_STOP_BRK_TIME_10_mS 0x0000C000ul
607 #define BRUSHLESS25_MTR_STOP_BRK_TIME_15_mS 0x00010000ul
608 #define BRUSHLESS25_MTR_STOP_BRK_TIME_25_mS 0x00014000ul
609 #define BRUSHLESS25_MTR_STOP_BRK_TIME_50_mS 0x00018000ul
610 #define BRUSHLESS25_MTR_STOP_BRK_TIME_75_mS 0x0001C000ul
611 #define BRUSHLESS25_MTR_STOP_BRK_TIME_100_mS 0x00020000ul
612 #define BRUSHLESS25_MTR_STOP_BRK_TIME_250_mS 0x00024000ul
613 #define BRUSHLESS25_MTR_STOP_BRK_TIME_500_mS 0x00028000ul
614 #define BRUSHLESS25_MTR_STOP_BRK_TIME_1000_mS 0x0002C000ul
615 #define BRUSHLESS25_MTR_STOP_BRK_TIME_2500_mS 0x00030000ul
616 #define BRUSHLESS25_MTR_STOP_BRK_TIME_5000_mS 0x00034000ul
617 #define BRUSHLESS25_MTR_STOP_BRK_TIME_10000_mS 0x00038000ul
618 #define BRUSHLESS25_MTR_STOP_BRK_TIME_15000_mS 0x0003C000ul
619 #define BRUSHLESS25_ACT_SPIN_BRK_THR_IMMEDIATE 0x00000000ul
620 #define BRUSHLESS25_ACT_SPIN_BRK_THR_50_PERCENT 0x00000800ul
621 #define BRUSHLESS25_ACT_SPIN_BRK_THR_25_PERCENT 0x00001000ul
622 #define BRUSHLESS25_ACT_SPIN_BRK_THR_15_PERCENT 0x00001800ul
623 #define BRUSHLESS25_ACT_SPIN_BRK_THR_10_PERCENT 0x00002000ul
624 #define BRUSHLESS25_ACT_SPIN_BRK_THR_7_PERCENT_5 0x00002800ul
625 #define BRUSHLESS25_ACT_SPIN_BRK_THR_5_PERCENT 0x00003000ul
626 #define BRUSHLESS25_ACT_SPIN_BRK_THR_2_PERCENT_5 0x00003800ul
627 #define BRUSHLESS25_BRAKE_DUTY_THR_IMMEDIATE 0x00000000ul
628 #define BRUSHLESS25_BRAKE_DUTY_THR_50_PERCENT 0x00000100ul
629 #define BRUSHLESS25_BRAKE_DUTY_THR_25_PERCENT 0x00000200ul
630 #define BRUSHLESS25_BRAKE_DUTY_THR_15_PERCENT 0x00000300ul
631 #define BRUSHLESS25_BRAKE_DUTY_THR_10_PERCENT 0x00000400ul
632 #define BRUSHLESS25_BRAKE_DUTY_THR_7_PERCENT_5 0x00000500ul
633 #define BRUSHLESS25_BRAKE_DUTY_THR_5_PERCENT 0x00000600ul
634 #define BRUSHLESS25_BRAKE_DUTY_THR_2_PERCENT_5 0x00000700ul
635 #define BRUSHLESS25_AVS_EN 0x00000080ul
636 #define BRUSHLESS25_CBC_LIMIT_NA 0x00000000ul
637 #define BRUSHLESS25_CBC_LIMIT_0_POINT_1_V 0x00000008ul
638 #define BRUSHLESS25_CBC_LIMIT_0_POINT_2_V 0x00000010ul
639 #define BRUSHLESS25_CBC_LIMIT_0_POINT_3_V 0x00000018ul
640 #define BRUSHLESS25_CBC_LIMIT_0_POINT_4_V 0x00000020ul
641 #define BRUSHLESS25_CBC_LIMIT_0_POINT_5_V 0x00000028ul
642 #define BRUSHLESS25_CBC_LIMIT_0_POINT_6_V 0x00000030ul
643 #define BRUSHLESS25_CBC_LIMIT_0_POINT_7_V 0x00000038ul
644 #define BRUSHLESS25_CBC_LIMIT_0_POINT_8_V 0x00000040ul
645 #define BRUSHLESS25_CBC_LIMIT_0_POINT_9_V 0x00000048ul
646 #define BRUSHLESS25_CBC_LIMIT_1_V 0x00000050ul
647 #define BRUSHLESS25_CBC_LIMIT_1_POINT_1_V 0x00000058ul
648 #define BRUSHLESS25_CBC_LIMIT_1_POINT_2_V 0x00000060ul
649 #define BRUSHLESS25_CBC_LIMIT_1_POINT_3_V 0x00000068ul
650 #define BRUSHLESS25_CBC_LIMIT_1_POINT_4_V 0x00000070ul
651 #define BRUSHLESS25_CBC_LIMIT_1_POINT_5_V 0x00000078ul
652 
657 #define BRUSHLESS25_DYN_DGS_FILT_COUNT_2 0x00000000ul
658 #define BRUSHLESS25_DYN_DGS_FILT_COUNT_3 0x20000000ul
659 #define BRUSHLESS25_DYN_DGS_FILT_COUNT_4 0x40000000ul
660 #define BRUSHLESS25_DYN_DGS_FILT_COUNT_5 0x60000000ul
661 #define BRUSHLESS25_DGS_UPPER_LMT_VM_SUB_90_mV 0x00000000ul
662 #define BRUSHLESS25_DGS_UPPER_LMT_VM_SUB_120_mV 0x08000000ul
663 #define BRUSHLESS25_DGS_UPPER_LMT_VM_SUB_150_mV 0x10000000ul
664 #define BRUSHLESS25_DGS_UPPER_LMT_VM_SUB_180_mV 0x18000000ul
665 #define BRUSHLESS25_DYN_DGS_LOWER_LMT_30_mV 0x00000000ul
666 #define BRUSHLESS25_DYN_DGS_LOWER_LMT_60_mV 0x02000000ul
667 #define BRUSHLESS25_DYN_DGS_LOWER_LMT_90_mV 0x04000000ul
668 #define BRUSHLESS25_DYN_DGS_LOWER_LMT_120_mV 0x06000000ul
669 #define BRUSHLESS25_INTEG_CYCL_THR_LOW_3 0x00000000ul
670 #define BRUSHLESS25_INTEG_CYCL_THR_LOW_4 0x00800000ul
671 #define BRUSHLESS25_INTEG_CYCL_THR_LOW_6 0x01000000ul
672 #define BRUSHLESS25_INTEG_CYCL_THR_LOW_8 0x01800000ul
673 #define BRUSHLESS25_INTEG_CYCL_THR_HIGH_4 0x00000000ul
674 #define BRUSHLESS25_INTEG_CYCL_THR_HIGH_6 0x00200000ul
675 #define BRUSHLESS25_INTEG_CYCL_THR_HIGH_8 0x00400000ul
676 #define BRUSHLESS25_INTEG_CYCL_THR_HIGH_10 0x00600000ul
677 #define BRUSHLESS25_INTEG_DUTY_THR_LOW_12_PERCENT 0x00000000ul
678 #define BRUSHLESS25_INTEG_DUTY_THR_LOW_15_PERCENT 0x00080000ul
679 #define BRUSHLESS25_INTEG_DUTY_THR_LOW_18_PERCENT 0x00100000ul
680 #define BRUSHLESS25_INTEG_DUTY_THR_LOW_20_PERCENT 0x00180000ul
681 #define BRUSHLESS25_INTEG_DUTY_THR_HIGH_12_PERCENT 0x00000000ul
682 #define BRUSHLESS25_INTEG_DUTY_THR_HIGH_15_PERCENT 0x00020000ul
683 #define BRUSHLESS25_INTEG_DUTY_THR_HIGH_18_PERCENT 0x00040000ul
684 #define BRUSHLESS25_INTEG_DUTY_THR_HIGH_20_PERCENT 0x00060000ul
685 #define BRUSHLESS25_BEMF_THRESHOLD2_0 0x00000000ul
686 #define BRUSHLESS25_BEMF_THRESHOLD2_25 0x00000800ul
687 #define BRUSHLESS25_BEMF_THRESHOLD2_50 0x00001000ul
688 #define BRUSHLESS25_BEMF_THRESHOLD2_75 0x00001800ul
689 #define BRUSHLESS25_BEMF_THRESHOLD2_100 0x00002000ul
690 #define BRUSHLESS25_BEMF_THRESHOLD2_125 0x00002800ul
691 #define BRUSHLESS25_BEMF_THRESHOLD2_150 0x00003000ul
692 #define BRUSHLESS25_BEMF_THRESHOLD2_175 0x00003800ul
693 #define BRUSHLESS25_BEMF_THRESHOLD2_200 0x00004000ul
694 #define BRUSHLESS25_BEMF_THRESHOLD2_225 0x00004800ul
695 #define BRUSHLESS25_BEMF_THRESHOLD2_250 0x00005000ul
696 #define BRUSHLESS25_BEMF_THRESHOLD2_275 0x00005800ul
697 #define BRUSHLESS25_BEMF_THRESHOLD2_300 0x00006000ul
698 #define BRUSHLESS25_BEMF_THRESHOLD2_325 0x00006800ul
699 #define BRUSHLESS25_BEMF_THRESHOLD2_350 0x00007000ul
700 #define BRUSHLESS25_BEMF_THRESHOLD2_375 0x00007800ul
701 #define BRUSHLESS25_BEMF_THRESHOLD2_400 0x00008000ul
702 #define BRUSHLESS25_BEMF_THRESHOLD2_425 0x00008800ul
703 #define BRUSHLESS25_BEMF_THRESHOLD2_450 0x00009000ul
704 #define BRUSHLESS25_BEMF_THRESHOLD2_475 0x00009800ul
705 #define BRUSHLESS25_BEMF_THRESHOLD2_500 0x0000A000ul
706 #define BRUSHLESS25_BEMF_THRESHOLD2_525 0x0000A800ul
707 #define BRUSHLESS25_BEMF_THRESHOLD2_550 0x0000B000ul
708 #define BRUSHLESS25_BEMF_THRESHOLD2_575 0x0000B800ul
709 #define BRUSHLESS25_BEMF_THRESHOLD2_600 0x0000C000ul
710 #define BRUSHLESS25_BEMF_THRESHOLD2_625 0x0000C800ul
711 #define BRUSHLESS25_BEMF_THRESHOLD2_650 0x0000D000ul
712 #define BRUSHLESS25_BEMF_THRESHOLD2_675 0x0000D800ul
713 #define BRUSHLESS25_BEMF_THRESHOLD2_700 0x0000E000ul
714 #define BRUSHLESS25_BEMF_THRESHOLD2_725 0x0000E800ul
715 #define BRUSHLESS25_BEMF_THRESHOLD2_750 0x0000F000ul
716 #define BRUSHLESS25_BEMF_THRESHOLD2_775 0x0000F800ul
717 #define BRUSHLESS25_BEMF_THRESHOLD2_800 0x00010000ul
718 #define BRUSHLESS25_BEMF_THRESHOLD2_850 0x00010800ul
719 #define BRUSHLESS25_BEMF_THRESHOLD2_900 0x00011000ul
720 #define BRUSHLESS25_BEMF_THRESHOLD2_950 0x00011800ul
721 #define BRUSHLESS25_BEMF_THRESHOLD2_1000 0x00012000ul
722 #define BRUSHLESS25_BEMF_THRESHOLD2_1050 0x00012800ul
723 #define BRUSHLESS25_BEMF_THRESHOLD2_1100 0x00013000ul
724 #define BRUSHLESS25_BEMF_THRESHOLD2_1150 0x00013800ul
725 #define BRUSHLESS25_BEMF_THRESHOLD2_1200 0x00014000ul
726 #define BRUSHLESS25_BEMF_THRESHOLD2_1250 0x00014800ul
727 #define BRUSHLESS25_BEMF_THRESHOLD2_1300 0x00015000ul
728 #define BRUSHLESS25_BEMF_THRESHOLD2_1350 0x00015800ul
729 #define BRUSHLESS25_BEMF_THRESHOLD2_1400 0x00016000ul
730 #define BRUSHLESS25_BEMF_THRESHOLD2_1450 0x00016800ul
731 #define BRUSHLESS25_BEMF_THRESHOLD2_1500 0x00017000ul
732 #define BRUSHLESS25_BEMF_THRESHOLD2_1550 0x00017800ul
733 #define BRUSHLESS25_BEMF_THRESHOLD2_1600 0x00018000ul
734 #define BRUSHLESS25_BEMF_THRESHOLD2_1700 0x00018800ul
735 #define BRUSHLESS25_BEMF_THRESHOLD2_1800 0x00019000ul
736 #define BRUSHLESS25_BEMF_THRESHOLD2_1900 0x00019800ul
737 #define BRUSHLESS25_BEMF_THRESHOLD2_2000 0x0001A000ul
738 #define BRUSHLESS25_BEMF_THRESHOLD2_2100 0x0001A800ul
739 #define BRUSHLESS25_BEMF_THRESHOLD2_2200 0x0001B000ul
740 #define BRUSHLESS25_BEMF_THRESHOLD2_2300 0x0001B800ul
741 #define BRUSHLESS25_BEMF_THRESHOLD2_2400 0x0001C000ul
742 #define BRUSHLESS25_BEMF_THRESHOLD2_2600 0x0001C800ul
743 #define BRUSHLESS25_BEMF_THRESHOLD2_2800 0x0001D000ul
744 #define BRUSHLESS25_BEMF_THRESHOLD2_3000 0x0001D800ul
745 #define BRUSHLESS25_BEMF_THRESHOLD2_3200 0x0001E000ul
746 #define BRUSHLESS25_BEMF_THRESHOLD2_3400 0x0001E800ul
747 #define BRUSHLESS25_BEMF_THRESHOLD2_3600 0x0001F000ul
748 #define BRUSHLESS25_BEMF_THRESHOLD2_3800 0x0001F800ul
749 #define BRUSHLESS25_BEMF_THRESHOLD1_0 0x00000000ul
750 #define BRUSHLESS25_BEMF_THRESHOLD1_25 0x00000020ul
751 #define BRUSHLESS25_BEMF_THRESHOLD1_50 0x00000040ul
752 #define BRUSHLESS25_BEMF_THRESHOLD1_75 0x00000060ul
753 #define BRUSHLESS25_BEMF_THRESHOLD1_100 0x00000080ul
754 #define BRUSHLESS25_BEMF_THRESHOLD1_125 0x000000A0ul
755 #define BRUSHLESS25_BEMF_THRESHOLD1_150 0x000000C0ul
756 #define BRUSHLESS25_BEMF_THRESHOLD1_175 0x000000E0ul
757 #define BRUSHLESS25_BEMF_THRESHOLD1_200 0x00000100ul
758 #define BRUSHLESS25_BEMF_THRESHOLD1_225 0x00000120ul
759 #define BRUSHLESS25_BEMF_THRESHOLD1_250 0x00000140ul
760 #define BRUSHLESS25_BEMF_THRESHOLD1_275 0x00000160ul
761 #define BRUSHLESS25_BEMF_THRESHOLD1_300 0x00000180ul
762 #define BRUSHLESS25_BEMF_THRESHOLD1_325 0x000001A0ul
763 #define BRUSHLESS25_BEMF_THRESHOLD1_350 0x000001C0ul
764 #define BRUSHLESS25_BEMF_THRESHOLD1_375 0x000001E0ul
765 #define BRUSHLESS25_BEMF_THRESHOLD1_400 0x00000200ul
766 #define BRUSHLESS25_BEMF_THRESHOLD1_425 0x00000220ul
767 #define BRUSHLESS25_BEMF_THRESHOLD1_450 0x00000240ul
768 #define BRUSHLESS25_BEMF_THRESHOLD1_475 0x00000260ul
769 #define BRUSHLESS25_BEMF_THRESHOLD1_500 0x00000280ul
770 #define BRUSHLESS25_BEMF_THRESHOLD1_525 0x000002A0ul
771 #define BRUSHLESS25_BEMF_THRESHOLD1_550 0x000002C0ul
772 #define BRUSHLESS25_BEMF_THRESHOLD1_575 0x000002E0ul
773 #define BRUSHLESS25_BEMF_THRESHOLD1_600 0x00000300ul
774 #define BRUSHLESS25_BEMF_THRESHOLD1_625 0x00000320ul
775 #define BRUSHLESS25_BEMF_THRESHOLD1_650 0x00000340ul
776 #define BRUSHLESS25_BEMF_THRESHOLD1_675 0x00000360ul
777 #define BRUSHLESS25_BEMF_THRESHOLD1_700 0x00000380ul
778 #define BRUSHLESS25_BEMF_THRESHOLD1_725 0x000003A0ul
779 #define BRUSHLESS25_BEMF_THRESHOLD1_750 0x000003C0ul
780 #define BRUSHLESS25_BEMF_THRESHOLD1_775 0x000003E0ul
781 #define BRUSHLESS25_BEMF_THRESHOLD1_800 0x00000400ul
782 #define BRUSHLESS25_BEMF_THRESHOLD1_850 0x00000420ul
783 #define BRUSHLESS25_BEMF_THRESHOLD1_900 0x00000440ul
784 #define BRUSHLESS25_BEMF_THRESHOLD1_950 0x00000460ul
785 #define BRUSHLESS25_BEMF_THRESHOLD1_1000 0x00000480ul
786 #define BRUSHLESS25_BEMF_THRESHOLD1_1050 0x000004A0ul
787 #define BRUSHLESS25_BEMF_THRESHOLD1_1100 0x000004C0ul
788 #define BRUSHLESS25_BEMF_THRESHOLD1_1150 0x000004E0ul
789 #define BRUSHLESS25_BEMF_THRESHOLD1_1200 0x00000500ul
790 #define BRUSHLESS25_BEMF_THRESHOLD1_1250 0x00000520ul
791 #define BRUSHLESS25_BEMF_THRESHOLD1_1300 0x00000540ul
792 #define BRUSHLESS25_BEMF_THRESHOLD1_1350 0x00000560ul
793 #define BRUSHLESS25_BEMF_THRESHOLD1_1400 0x00000580ul
794 #define BRUSHLESS25_BEMF_THRESHOLD1_1450 0x000005A0ul
795 #define BRUSHLESS25_BEMF_THRESHOLD1_1500 0x000005C0ul
796 #define BRUSHLESS25_BEMF_THRESHOLD1_1550 0x000005E0ul
797 #define BRUSHLESS25_BEMF_THRESHOLD1_1600 0x00000600ul
798 #define BRUSHLESS25_BEMF_THRESHOLD1_1700 0x00000620ul
799 #define BRUSHLESS25_BEMF_THRESHOLD1_1800 0x00000640ul
800 #define BRUSHLESS25_BEMF_THRESHOLD1_1900 0x00000660ul
801 #define BRUSHLESS25_BEMF_THRESHOLD1_2000 0x00000680ul
802 #define BRUSHLESS25_BEMF_THRESHOLD1_2100 0x000006A0ul
803 #define BRUSHLESS25_BEMF_THRESHOLD1_2200 0x000006C0ul
804 #define BRUSHLESS25_BEMF_THRESHOLD1_2300 0x000006E0ul
805 #define BRUSHLESS25_BEMF_THRESHOLD1_2400 0x00000700ul
806 #define BRUSHLESS25_BEMF_THRESHOLD1_2600 0x00000720ul
807 #define BRUSHLESS25_BEMF_THRESHOLD1_2800 0x00000740ul
808 #define BRUSHLESS25_BEMF_THRESHOLD1_3000 0x00000760ul
809 #define BRUSHLESS25_BEMF_THRESHOLD1_3200 0x00000780ul
810 #define BRUSHLESS25_BEMF_THRESHOLD1_3400 0x000007A0ul
811 #define BRUSHLESS25_BEMF_THRESHOLD1_3600 0x000007C0ul
812 #define BRUSHLESS25_BEMF_THRESHOLD1_3800 0x000007E0ul
813 #define BRUSHLESS25_INTEG_ZC_METHOD_ZC 0x00000000ul
814 #define BRUSHLESS25_INTEG_ZC_INTEGRATION 0x00000010ul
815 #define BRUSHLESS25_DEGAUSS_MAX_WIN_22POINT5_DEG 0x00000000ul
816 #define BRUSHLESS25_DEGAUSS_MAX_WIN_10_DEG 0x00000002ul
817 #define BRUSHLESS25_DEGAUSS_MAX_WIN_15_DEG 0x00000004ul
818 #define BRUSHLESS25_DEGAUSS_MAX_WIN_18_DEG 0x00000006ul
819 #define BRUSHLESS25_DEGAUSS_MAX_WIN_30_DEG 0x00000008ul
820 #define BRUSHLESS25_DEGAUSS_MAX_WIN_37POINT5_DEG 0x0000000Aul
821 #define BRUSHLESS25_DEGAUSS_MAX_WIN_45_DEG 0x0000000Cul
822 #define BRUSHLESS25_DEGAUSS_MAX_WIN_60_DEG 0x0000000Eul
823 #define BRUSHLESS25_DYN_DEGAUSS_EN 0x00000001ul
824 
829 #define BRUSHLESS25_WCOMP_BLANK_EN 0x00080000ul
830 #define BRUSHLESS25_FAST_DEC_DUTY_WIN_0_PER 0x00000000ul
831 #define BRUSHLESS25_FAST_DEC_DUTY_WIN_2POINT5_PER 0x00010000ul
832 #define BRUSHLESS25_FAST_DEC_DUTY_WIN_5_PER 0x00020000ul
833 #define BRUSHLESS25_FAST_DEC_DUTY_WIN_7POINT5_PER 0x00030000ul
834 #define BRUSHLESS25_FAST_DEC_DUTY_WIN_10_PER 0x00040000ul
835 #define BRUSHLESS25_FAST_DEC_DUTY_WIN_15_PER 0x00050000ul
836 #define BRUSHLESS25_FAST_DEC_DUTY_WIN_20_PER 0x00060000ul
837 #define BRUSHLESS25_FAST_DEC_DUTY_WIN_25_PER 0x00070000ul
838 #define BRUSHLESS25_FAST_DEC_DUTY_THR_100_PER 0x00000000ul
839 #define BRUSHLESS25_FAST_DEC_DUTY_THR_95_PER 0x00002000ul
840 #define BRUSHLESS25_FAST_DEC_DUTY_THR_90_PER 0x00004000ul
841 #define BRUSHLESS25_FAST_DEC_DUTY_THR_85_PER 0x00006000ul
842 #define BRUSHLESS25_FAST_DEC_DUTY_THR_80_PER 0x00008000ul
843 #define BRUSHLESS25_FAST_DEC_DUTY_THR_75_PER 0x0000A000ul
844 #define BRUSHLESS25_FAST_DEC_DUTY_THR_70_PER 0x0000C000ul
845 #define BRUSHLESS25_FAST_DEC_DUTY_THR_65_PER 0x0000E000ul
846 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_NA 0x00000000ul
847 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_100_mv 0x00000200ul
848 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_200_mv 0x00000400ul
849 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_300_mv 0x00000600ul
850 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_400_mv 0x00000800ul
851 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_500_mv 0x00000A00ul
852 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_600_mv 0x00000C00ul
853 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_700_mv 0x00000E00ul
854 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_800_mv 0x00001000ul
855 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_900_mv 0x00001200ul
856 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_1000_mv 0x00001400ul
857 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_1100_mv 0x00001600ul
858 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_1200_mv 0x00001800ul
859 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_1300_mv 0x00001A00ul
860 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_1400_mv 0x00001C00ul
861 #define BRUSHLESS25_DYN_BRK_CURR_LOW_LIM_1500_mv 0x00001E00ul
862 #define BRUSHLESS25_DYNAMIC_BRK_CURR_EN 0x00000100ul
863 #define BRUSHLESS25_DYNAMIC_FAST_DECEL_EN 0x00000080ul
864 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_NA 0x00000000ul
865 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_100_mV 0x00000008ul
866 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_200_mV 0x00000010ul
867 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_300_mV 0x00000018ul
868 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_400_mV 0x00000020ul
869 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_500_mV 0x00000028ul
870 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_600_mV 0x00000030ul
871 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_700_mV 0x00000038ul
872 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_800_mV 0x00000040ul
873 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_900_mV 0x00000048ul
874 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_1000_mV 0x00000050ul
875 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_1100_mV 0x00000058ul
876 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_1200_mV 0x00000060ul
877 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_1300_mV 0x00000068ul
878 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_1400_mV 0x00000070ul
879 #define BRUSHLESS25_FAST_DECEL_CURR_LIM_1500_mV 0x00000078ul
880 #define BRUSHLESS25_FAST_BRK_DELTA_0POINT5_PERCENT 0x00000000ul
881 #define BRUSHLESS25_FAST_BRK_DELTA_1_PERCENT 0x00000001ul
882 #define BRUSHLESS25_FAST_BRK_DELTA_1POINT5_PERCENT 0x00000002ul
883 #define BRUSHLESS25_FAST_BRK_DELTA_2_PERCENT 0x00000003ul
884 #define BRUSHLESS25_FAST_BRK_DELTA_2POINT5_PERCENT 0x00000004ul
885 #define BRUSHLESS25_FAST_BRK_DELTA_3_PERCENT 0x00000005ul
886 #define BRUSHLESS25_FAST_BRK_DELTA_4_PERCENT 0x00000006ul
887 #define BRUSHLESS25_FAST_BRK_DELTA_5_PERCENT 0x00000007ul
888 
893 #define BRUSHLESS25_SPD_POWER_V_MAX_100_PERCENT 0x00000000ul
894 #define BRUSHLESS25_SPD_POWER_V_MAX_95_PERCENT 0x00000020ul
895 #define BRUSHLESS25_SPD_POWER_V_MAX_90_PERCENT 0x00000040ul
896 #define BRUSHLESS25_SPD_POWER_V_MAX_85_PERCENT 0x00000060ul
897 #define BRUSHLESS25_SPD_POWER_V_MAX_80_PERCENT 0x00000080ul
898 #define BRUSHLESS25_SPD_POWER_V_MAX_75_PERCENT 0x000000A0ul
899 #define BRUSHLESS25_SPD_POWER_V_MAX_70_PERCENT 0x000000C0ul
900 #define BRUSHLESS25_SPD_POWER_V_MAX_65_PERCENT 0x000000E0ul
901 #define BRUSHLESS25_SPD_POWER_V_MIN_0_PERCENT 0x00000000ul
902 #define BRUSHLESS25_SPD_POWER_V_MIN_2POINT5_PERCENT 0x00000004ul
903 #define BRUSHLESS25_SPD_POWER_V_MIN_5_PERCENT 0x00000008ul
904 #define BRUSHLESS25_SPD_POWER_V_MIN_7POINT5_PERCENT 0x0000000Cul
905 #define BRUSHLESS25_SPD_POWER_V_MIN_10_PERCENT 0x00000010ul
906 #define BRUSHLESS25_SPD_POWER_V_MIN_15_PERCENT 0x00000014ul
907 #define BRUSHLESS25_SPD_POWER_V_MIN_20_PERCENT 0x00000018ul
908 #define BRUSHLESS25_SPD_POWER_V_MIN_25_PERCENT 0x0000001Cul
909 #define BRUSHLESS25_CLOSED_LOOP_MODE_DISABLED 0x00000000ul
910 #define BRUSHLESS25_CLOSED_LOOP_MODE_SPEED_LOOP 0x00000001ul
911 #define BRUSHLESS25_CLOSED_LOOP_MODE_POWER_LOOP 0x00000002ul
912 
917 #define BRUSHLESS25_DEADTIME_COMP_EN 0x00004000ul
918 #define BRUSHLESS25_CONST_POWER_LIMIT_HYST_5 0x00000000ul
919 #define BRUSHLESS25_CONST_POWER_LIMIT_HYST_7POINT5 0x00000004ul
920 #define BRUSHLESS25_CONST_POWER_LIMIT_HYST_10 0x00000008ul
921 #define BRUSHLESS25_CONST_POWER_LIMIT_HYST_12POINT5 0x0000000Cul
922 #define BRUSHLESS25_CONST_POWER_MODE_DISABLED 0x00000000ul
923 #define BRUSHLESS25_CONST_POWER_MODE_CL_POWER 0x00000001ul
924 #define BRUSHLESS25_CONST_POWER_MODE_POWER_LIMIT 0x00000002ul
925 
930 #define BRUSHLESS25_TWOPH_STEP0_0_PERCENT 0x00000000ul
931 #define BRUSHLESS25_TWOPH_STEP0_50_PERCENT 0x10000000ul
932 #define BRUSHLESS25_TWOPH_STEP0_75_PERCENT 0x20000000ul
933 #define BRUSHLESS25_TWOPH_STEP0_83_PERCENT 0x30000000ul
934 #define BRUSHLESS25_TWOPH_STEP0_87_PERCENT 0x40000000ul
935 #define BRUSHLESS25_TWOPH_STEP0_93_PERCENT 0x50000000ul
936 #define BRUSHLESS25_TWOPH_STEP0_97_PERCENT 0x60000000ul
937 #define BRUSHLESS25_TWOPH_STEP0_99_PERCENT 0x70000000ul
938 #define BRUSHLESS25_TWOPH_STEP1_0_PERCENT 0x00000000ul
939 #define BRUSHLESS25_TWOPH_STEP1_50_PERCENT 0x02000000ul
940 #define BRUSHLESS25_TWOPH_STEP1_75_PERCENT 0x04000000ul
941 #define BRUSHLESS25_TWOPH_STEP1_83_PERCENT 0x06000000ul
942 #define BRUSHLESS25_TWOPH_STEP1_87_PERCENT 0x08000000ul
943 #define BRUSHLESS25_TWOPH_STEP1_93_PERCENT 0x0A000000ul
944 #define BRUSHLESS25_TWOPH_STEP1_97_PERCENT 0x0C000000ul
945 #define BRUSHLESS25_TWOPH_STEP1_99_PERCENT 0x0E000000ul
946 #define BRUSHLESS25_TWOPH_STEP2_0_PERCENT 0x00000000ul
947 #define BRUSHLESS25_TWOPH_STEP2_50_PERCENT 0x00400000ul
948 #define BRUSHLESS25_TWOPH_STEP2_75_PERCENT 0x00800000ul
949 #define BRUSHLESS25_TWOPH_STEP2_83_PERCENT 0x00C00000ul
950 #define BRUSHLESS25_TWOPH_STEP2_87_PERCENT 0x01000000ul
951 #define BRUSHLESS25_TWOPH_STEP2_93_PERCENT 0x01400000ul
952 #define BRUSHLESS25_TWOPH_STEP2_97_PERCENT 0x01800000ul
953 #define BRUSHLESS25_TWOPH_STEP2_99_PERCENT 0x01C00000ul
954 #define BRUSHLESS25_TWOPH_STEP3_0_PERCENT 0x00000000ul
955 #define BRUSHLESS25_TWOPH_STEP3_50_PERCENT 0x00080000ul
956 #define BRUSHLESS25_TWOPH_STEP3_75_PERCENT 0x00100000ul
957 #define BRUSHLESS25_TWOPH_STEP3_83_PERCENT 0x00180000ul
958 #define BRUSHLESS25_TWOPH_STEP3_87_PERCENT 0x00200000ul
959 #define BRUSHLESS25_TWOPH_STEP3_93_PERCENT 0x00280000ul
960 #define BRUSHLESS25_TWOPH_STEP3_97_PERCENT 0x00300000ul
961 #define BRUSHLESS25_TWOPH_STEP3_99_PERCENT 0x00380000ul
962 #define BRUSHLESS25_TWOPH_STEP4_0_PERCENT 0x00000000ul
963 #define BRUSHLESS25_TWOPH_STEP4_50_PERCENT 0x00010000ul
964 #define BRUSHLESS25_TWOPH_STEP4_75_PERCENT 0x00020000ul
965 #define BRUSHLESS25_TWOPH_STEP4_83_PERCENT 0x00030000ul
966 #define BRUSHLESS25_TWOPH_STEP4_87_PERCENT 0x00040000ul
967 #define BRUSHLESS25_TWOPH_STEP4_93_PERCENT 0x00050000ul
968 #define BRUSHLESS25_TWOPH_STEP4_97_PERCENT 0x00060000ul
969 #define BRUSHLESS25_TWOPH_STEP4_99_PERCENT 0x00070000ul
970 #define BRUSHLESS25_TWOPH_STEP5_0_PERCENT 0x00000000ul
971 #define BRUSHLESS25_TWOPH_STEP5_50_PERCENT 0x00002000ul
972 #define BRUSHLESS25_TWOPH_STEP5_75_PERCENT 0x00004000ul
973 #define BRUSHLESS25_TWOPH_STEP5_83_PERCENT 0x00006000ul
974 #define BRUSHLESS25_TWOPH_STEP5_87_PERCENT 0x00008000ul
975 #define BRUSHLESS25_TWOPH_STEP5_93_PERCENT 0x0000A000ul
976 #define BRUSHLESS25_TWOPH_STEP5_97_PERCENT 0x0000C000ul
977 #define BRUSHLESS25_TWOPH_STEP5_99_PERCENT 0x0000E000ul
978 #define BRUSHLESS25_TWOPH_STEP6_0_PERCENT 0x00000000ul
979 #define BRUSHLESS25_TWOPH_STEP6_50_PERCENT 0x00000400ul
980 #define BRUSHLESS25_TWOPH_STEP6_75_PERCENT 0x00000800ul
981 #define BRUSHLESS25_TWOPH_STEP6_83_PERCENT 0x00000C00ul
982 #define BRUSHLESS25_TWOPH_STEP6_87_PERCENT 0x00001000ul
983 #define BRUSHLESS25_TWOPH_STEP6_93_PERCENT 0x00001400ul
984 #define BRUSHLESS25_TWOPH_STEP6_97_PERCENT 0x00001800ul
985 #define BRUSHLESS25_TWOPH_STEP6_99_PERCENT 0x00001C00ul
986 #define BRUSHLESS25_TWOPH_STEP7_0_PERCENT 0x00000000ul
987 #define BRUSHLESS25_TWOPH_STEP7_50_PERCENT 0x00000080ul
988 #define BRUSHLESS25_TWOPH_STEP7_75_PERCENT 0x00000100ul
989 #define BRUSHLESS25_TWOPH_STEP7_83_PERCENT 0x00000180ul
990 #define BRUSHLESS25_TWOPH_STEP7_87_PERCENT 0x00000200ul
991 #define BRUSHLESS25_TWOPH_STEP7_93_PERCENT 0x00000280ul
992 #define BRUSHLESS25_TWOPH_STEP7_97_PERCENT 0x00000300ul
993 #define BRUSHLESS25_TWOPH_STEP7_99_PERCENT 0x00000380ul
994 
999 #define BRUSHLESS25_THREEPH_STEP0_0_PERCENT 0x00000000ul
1000 #define BRUSHLESS25_THREEPH_STEP0_50_PERCENT 0x10000000ul
1001 #define BRUSHLESS25_THREEPH_STEP0_75_PERCENT 0x20000000ul
1002 #define BRUSHLESS25_THREEPH_STEP0_83_PERCENT 0x30000000ul
1003 #define BRUSHLESS25_THREEPH_STEP0_87_PERCENT 0x40000000ul
1004 #define BRUSHLESS25_THREEPH_STEP0_93_PERCENT 0x50000000ul
1005 #define BRUSHLESS25_THREEPH_STEP0_97_PERCENT 0x60000000ul
1006 #define BRUSHLESS25_THREEPH_STEP0_99_PERCENT 0x70000000ul
1007 #define BRUSHLESS25_THREEPH_STEP1_0_PERCENT 0x00000000ul
1008 #define BRUSHLESS25_THREEPH_STEP1_50_PERCENT 0x02000000ul
1009 #define BRUSHLESS25_THREEPH_STEP1_75_PERCENT 0x04000000ul
1010 #define BRUSHLESS25_THREEPH_STEP1_83_PERCENT 0x06000000ul
1011 #define BRUSHLESS25_THREEPH_STEP1_87_PERCENT 0x08000000ul
1012 #define BRUSHLESS25_THREEPH_STEP1_93_PERCENT 0x0A000000ul
1013 #define BRUSHLESS25_THREEPH_STEP1_97_PERCENT 0x0C000000ul
1014 #define BRUSHLESS25_THREEPH_STEP1_99_PERCENT 0x0E000000ul
1015 #define BRUSHLESS25_THREEPH_STEP2_0_PERCENT 0x00000000ul
1016 #define BRUSHLESS25_THREEPH_STEP2_50_PERCENT 0x00400000ul
1017 #define BRUSHLESS25_THREEPH_STEP2_75_PERCENT 0x00800000ul
1018 #define BRUSHLESS25_THREEPH_STEP2_83_PERCENT 0x00C00000ul
1019 #define BRUSHLESS25_THREEPH_STEP2_87_PERCENT 0x01000000ul
1020 #define BRUSHLESS25_THREEPH_STEP2_93_PERCENT 0x01400000ul
1021 #define BRUSHLESS25_THREEPH_STEP2_97_PERCENT 0x01800000ul
1022 #define BRUSHLESS25_THREEPH_STEP2_99_PERCENT 0x01C00000ul
1023 #define BRUSHLESS25_THREEPH_STEP3_0_PERCENT 0x00000000ul
1024 #define BRUSHLESS25_THREEPH_STEP3_50_PERCENT 0x00080000ul
1025 #define BRUSHLESS25_THREEPH_STEP3_75_PERCENT 0x00100000ul
1026 #define BRUSHLESS25_THREEPH_STEP3_83_PERCENT 0x00180000ul
1027 #define BRUSHLESS25_THREEPH_STEP3_87_PERCENT 0x00200000ul
1028 #define BRUSHLESS25_THREEPH_STEP3_93_PERCENT 0x00280000ul
1029 #define BRUSHLESS25_THREEPH_STEP3_97_PERCENT 0x00300000ul
1030 #define BRUSHLESS25_THREEPH_STEP3_99_PERCENT 0x00380000ul
1031 #define BRUSHLESS25_THREEPH_STEP4_0_PERCENT 0x00000000ul
1032 #define BRUSHLESS25_THREEPH_STEP4_50_PERCENT 0x00010000ul
1033 #define BRUSHLESS25_THREEPH_STEP4_75_PERCENT 0x00020000ul
1034 #define BRUSHLESS25_THREEPH_STEP4_83_PERCENT 0x00030000ul
1035 #define BRUSHLESS25_THREEPH_STEP4_87_PERCENT 0x00040000ul
1036 #define BRUSHLESS25_THREEPH_STEP4_93_PERCENT 0x00050000ul
1037 #define BRUSHLESS25_THREEPH_STEP4_97_PERCENT 0x00060000ul
1038 #define BRUSHLESS25_THREEPH_STEP4_99_PERCENT 0x00070000ul
1039 #define BRUSHLESS25_THREEPH_STEP5_0_PERCENT 0x00000000ul
1040 #define BRUSHLESS25_THREEPH_STEP5_50_PERCENT 0x00002000ul
1041 #define BRUSHLESS25_THREEPH_STEP5_75_PERCENT 0x00004000ul
1042 #define BRUSHLESS25_THREEPH_STEP5_83_PERCENT 0x00006000ul
1043 #define BRUSHLESS25_THREEPH_STEP5_87_PERCENT 0x00008000ul
1044 #define BRUSHLESS25_THREEPH_STEP5_93_PERCENT 0x0000A000ul
1045 #define BRUSHLESS25_THREEPH_STEP5_97_PERCENT 0x0000C000ul
1046 #define BRUSHLESS25_THREEPH_STEP5_99_PERCENT 0x0000E000ul
1047 #define BRUSHLESS25_THREEPH_STEP6_0_PERCENT 0x00000000ul
1048 #define BRUSHLESS25_THREEPH_STEP6_50_PERCENT 0x00000400ul
1049 #define BRUSHLESS25_THREEPH_STEP6_75_PERCENT 0x00000800ul
1050 #define BRUSHLESS25_THREEPH_STEP6_83_PERCENT 0x00000C00ul
1051 #define BRUSHLESS25_THREEPH_STEP6_87_PERCENT 0x00001000ul
1052 #define BRUSHLESS25_THREEPH_STEP6_93_PERCENT 0x00001400ul
1053 #define BRUSHLESS25_THREEPH_STEP6_97_PERCENT 0x00001800ul
1054 #define BRUSHLESS25_THREEPH_STEP6_99_PERCENT 0x00001C00ul
1055 #define BRUSHLESS25_THREEPH_STEP7_0_PERCENT 0x00000000ul
1056 #define BRUSHLESS25_THREEPH_STEP7_50_PERCENT 0x00000080ul
1057 #define BRUSHLESS25_THREEPH_STEP7_75_PERCENT 0x00000100ul
1058 #define BRUSHLESS25_THREEPH_STEP7_83_PERCENT 0x00000180ul
1059 #define BRUSHLESS25_THREEPH_STEP7_87_PERCENT 0x00000200ul
1060 #define BRUSHLESS25_THREEPH_STEP7_93_PERCENT 0x00000280ul
1061 #define BRUSHLESS25_THREEPH_STEP7_97_PERCENT 0x00000300ul
1062 #define BRUSHLESS25_THREEPH_STEP7_99_PERCENT 0x00000380ul
1063 #define BRUSHLESS25_LEAD_ANGLE_150DEG_ADV_0_DEG 0x00000000ul
1064 #define BRUSHLESS25_LEAD_ANGLE_150DEG_ADV_5_DEG 0x00000020ul
1065 #define BRUSHLESS25_LEAD_ANGLE_150DEG_ADV_10_DEG 0x00000040ul
1066 #define BRUSHLESS25_LEAD_ANGLE_150DEG_ADV_15_DEG 0x00000060ul
1067 
1072 #define BRUSHLESS25_OL_HANDOFF_CYCLES_3 0x00000000ul
1073 #define BRUSHLESS25_OL_HANDOFF_CYCLES_6 0x00400000ul
1074 #define BRUSHLESS25_OL_HANDOFF_CYCLES_12 0x00800000ul
1075 #define BRUSHLESS25_OL_HANDOFF_CYCLES_24 0x00C00000ul
1076 #define BRUSHLESS25_AVS_NEG_CURR_LIMIT_0 0x00000000ul
1077 #define BRUSHLESS25_AVS_NEG_CURR_LIMIT_NEG40 0x00010000ul
1078 #define BRUSHLESS25_AVS_NEG_CURR_LIMIT_NEG30 0x00020000ul
1079 #define BRUSHLESS25_AVS_NEG_CURR_LIMIT_NEG20 0x00030000ul
1080 #define BRUSHLESS25_AVS_NEG_CURR_LIMIT_NEG10 0x00040000ul
1081 #define BRUSHLESS25_AVS_NEG_CURR_LIMIT_10 0x00050000ul
1082 #define BRUSHLESS25_AVS_NEG_CURR_LIMIT_20 0x00060000ul
1083 #define BRUSHLESS25_AVS_NEG_CURR_LIMIT_30 0x00070000ul
1084 #define BRUSHLESS25_AVS_LIMIT_HYST_20 0x00000000ul
1085 #define BRUSHLESS25_AVS_LIMIT_HYST_10 0x00008000ul
1086 #define BRUSHLESS25_ISD_BEMF_THR_0 0x00000000ul
1087 #define BRUSHLESS25_ISD_BEMF_THR_200 0x00000400ul
1088 #define BRUSHLESS25_ISD_BEMF_THR_400 0x00000800ul
1089 #define BRUSHLESS25_ISD_BEMF_THR_600 0x00000C00ul
1090 #define BRUSHLESS25_ISD_BEMF_THR_800 0x00001000ul
1091 #define BRUSHLESS25_ISD_BEMF_THR_1000 0x00001400ul
1092 #define BRUSHLESS25_ISD_BEMF_THR_1200 0x00001800ul
1093 #define BRUSHLESS25_ISD_BEMF_THR_1400 0x00001C00ul
1094 #define BRUSHLESS25_ISD_BEMF_THR_1600 0x00002000ul
1095 #define BRUSHLESS25_ISD_BEMF_THR_1800 0x00002400ul
1096 #define BRUSHLESS25_ISD_BEMF_THR_2000 0x00002800ul
1097 #define BRUSHLESS25_ISD_BEMF_THR_2200 0x00002C00ul
1098 #define BRUSHLESS25_ISD_BEMF_THR_2400 0x00003000ul
1099 #define BRUSHLESS25_ISD_BEMF_THR_2600 0x00003400ul
1100 #define BRUSHLESS25_ISD_BEMF_THR_2800 0x00003800ul
1101 #define BRUSHLESS25_ISD_BEMF_THR_3000 0x00003C00ul
1102 #define BRUSHLESS25_ISD_BEMF_THR_3200 0x00004000ul
1103 #define BRUSHLESS25_ISD_BEMF_THR_3400 0x00004400ul
1104 #define BRUSHLESS25_ISD_BEMF_THR_3600 0x00004800ul
1105 #define BRUSHLESS25_ISD_BEMF_THR_3800 0x00004C00ul
1106 #define BRUSHLESS25_ISD_BEMF_THR_4000 0x00005000ul
1107 #define BRUSHLESS25_ISD_BEMF_THR_4200 0x00005400ul
1108 #define BRUSHLESS25_ISD_BEMF_THR_4400 0x00005800ul
1109 #define BRUSHLESS25_ISD_BEMF_THR_4600 0x00005C00ul
1110 #define BRUSHLESS25_ISD_BEMF_THR_4800 0x00006000ul
1111 #define BRUSHLESS25_ISD_BEMF_THR_5000 0x00006400ul
1112 #define BRUSHLESS25_ISD_BEMF_THR_5200 0x00006800ul
1113 #define BRUSHLESS25_ISD_BEMF_THR_5400 0x00006C00ul
1114 #define BRUSHLESS25_ISD_BEMF_THR_5600 0x00007000ul
1115 #define BRUSHLESS25_ISD_BEMF_THR_5800 0x00007400ul
1116 #define BRUSHLESS25_ISD_BEMF_THR_6000 0x00007800ul
1117 #define BRUSHLESS25_ISD_BEMF_THR_6200 0x00007C00ul
1118 #define BRUSHLESS25_ISD_CYCLE_THR_2 0x00000000ul
1119 #define BRUSHLESS25_ISD_CYCLE_THR_5 0x00000080ul
1120 #define BRUSHLESS25_ISD_CYCLE_THR_8 0x00000100ul
1121 #define BRUSHLESS25_ISD_CYCLE_THR_11 0x00000180ul
1122 #define BRUSHLESS25_ISD_CYCLE_THR_14 0x00000200ul
1123 #define BRUSHLESS25_ISD_CYCLE_THR_17 0x00000280ul
1124 #define BRUSHLESS25_ISD_CYCLE_THR_20 0x00000300ul
1125 #define BRUSHLESS25_ISD_CYCLE_THR_22 0x00000380ul
1126 #define BRUSHLESS25_ZC_ANGLE_OL_THR_5_DEG 0x00000000ul
1127 #define BRUSHLESS25_ZC_ANGLE_OL_THR_8_DEG 0x00000004ul
1128 #define BRUSHLESS25_ZC_ANGLE_OL_THR_12_DEG 0x00000008ul
1129 #define BRUSHLESS25_ZC_ANGLE_OL_THR_15_DEG 0x0000000Cul
1130 #define BRUSHLESS25_FAST_STARTUP_DIV_FACTOR_1 0x00000000ul
1131 #define BRUSHLESS25_FAST_STARTUP_DIV_FACTOR_2 0x00000001ul
1132 #define BRUSHLESS25_FAST_STARTUP_DIV_FACTOR_4 0x00000002ul
1133 #define BRUSHLESS25_FAST_STARTUP_DIV_FACTOR_8 0x00000003ul
1134 
1139 #define BRUSHLESS25_TBLANK_0_uS 0x00000000ul
1140 #define BRUSHLESS25_TBLANK_1_uS 0x08000000ul
1141 #define BRUSHLESS25_TBLANK_2_uS 0x10000000ul
1142 #define BRUSHLESS25_TBLANK_3_uS 0x18000000ul
1143 #define BRUSHLESS25_TBLANK_4_uS 0x20000000ul
1144 #define BRUSHLESS25_TBLANK_5_uS 0x28000000ul
1145 #define BRUSHLESS25_TBLANK_6_uS 0x30000000ul
1146 #define BRUSHLESS25_TBLANK_7_uS 0x38000000ul
1147 #define BRUSHLESS25_TBLANK_8_uS 0x40000000ul
1148 #define BRUSHLESS25_TBLANK_9_uS 0x48000000ul
1149 #define BRUSHLESS25_TBLANK_10_uS 0x50000000ul
1150 #define BRUSHLESS25_TBLANK_11_uS 0x58000000ul
1151 #define BRUSHLESS25_TBLANK_12_uS 0x60000000ul
1152 #define BRUSHLESS25_TBLANK_13_uS 0x68000000ul
1153 #define BRUSHLESS25_TBLANK_14_uS 0x70000000ul
1154 #define BRUSHLESS25_TBLANK_15_uS 0x78000000ul
1155 #define BRUSHLESS25_TPWDTH_0_uS 0x00000000ul
1156 #define BRUSHLESS25_TPWDTH_1_uS 0x01000000ul
1157 #define BRUSHLESS25_TPWDTH_2_uS 0x02000000ul
1158 #define BRUSHLESS25_TPWDTH_3_uS 0x03000000ul
1159 #define BRUSHLESS25_TPWDTH_4_uS 0x04000000ul
1160 #define BRUSHLESS25_TPWDTH_5_uS 0x05000000ul
1161 #define BRUSHLESS25_TPWDTH_6_uS 0x06000000ul
1162 #define BRUSHLESS25_TPWDTH_7_uS 0x07000000ul
1163 #define BRUSHLESS25_ALIGN_DUTY_10_PERCENT 0x00000000ul
1164 #define BRUSHLESS25_ALIGN_DUTY_15_PERCENT 0x00040000ul
1165 #define BRUSHLESS25_ALIGN_DUTY_20_PERCENT 0x00080000ul
1166 #define BRUSHLESS25_ALIGN_DUTY_25_PERCENT 0x000C0000ul
1167 #define BRUSHLESS25_ALIGN_DUTY_30_PERCENT 0x00100000ul
1168 #define BRUSHLESS25_ALIGN_DUTY_40_PERCENT 0x00140000ul
1169 #define BRUSHLESS25_ALIGN_DUTY_50_PERCENT 0x00180000ul
1170 #define BRUSHLESS25_ALIGN_DUTY_100_PERCENT 0x001C0000ul
1171 
1176 #define BRUSHLESS25_NO_MTR_DEG_TIME_1_mS 0x00000000ul
1177 #define BRUSHLESS25_NO_MTR_DEG_TIME_10_mS 0x08000000ul
1178 #define BRUSHLESS25_NO_MTR_DEG_TIME_25_mS 0x10000000ul
1179 #define BRUSHLESS25_NO_MTR_DEG_TIME_50_mS 0x18000000ul
1180 #define BRUSHLESS25_NO_MTR_DEG_TIME_100_mS 0x20000000ul
1181 #define BRUSHLESS25_NO_MTR_DEG_TIME_250_mS 0x28000000ul
1182 #define BRUSHLESS25_NO_MTR_DEG_TIME_500_mS 0x30000000ul
1183 #define BRUSHLESS25_NO_MTR_DEG_TIME_1000_mS 0x38000000ul
1184 #define BRUSHLESS25_CBC_ILIMIT_AUTO_REC_PWM_FLT_EN 0x00000000ul
1185 #define BRUSHLESS25_CBC_ILIMIT_AUTO_REC_PWM_FLT_DIS 0x00800000ul
1186 #define BRUSHLESS25_CBC_ILIMIT_AUTO_REC_FLT_EN_HI 0x01000000ul
1187 #define BRUSHLESS25_CBC_ILIMIT_AUTO_REC_FLT_DIS_HI 0x01800000ul
1188 #define BRUSHLESS25_CBC_ILIMIT_CBC_AUTO_REC_FLT_EN 0x02000000ul
1189 #define BRUSHLESS25_CBC_ILIMIT_CBC_AUTO_REC_FLT_DIS 0x02800000ul
1190 #define BRUSHLESS25_CBC_ILIMIT_DISABLED 0x07800000ul
1191 #define BRUSHLESS25_LOCK_ILIMIT_NA 0x00000000ul
1192 #define BRUSHLESS25_LOCK_ILIMIT_100_mV 0x00080000ul
1193 #define BRUSHLESS25_LOCK_ILIMIT_200_mV 0x00100000ul
1194 #define BRUSHLESS25_LOCK_ILIMIT_300_mV 0x00180000ul
1195 #define BRUSHLESS25_LOCK_ILIMIT_400_mV 0x00200000ul
1196 #define BRUSHLESS25_LOCK_ILIMIT_500_mV 0x00280000ul
1197 #define BRUSHLESS25_LOCK_ILIMIT_600_mV 0x00300000ul
1198 #define BRUSHLESS25_LOCK_ILIMIT_700_mV 0x00380000ul
1199 #define BRUSHLESS25_LOCK_ILIMIT_800_mV 0x00400000ul
1200 #define BRUSHLESS25_LOCK_ILIMIT_900_mV 0x00480000ul
1201 #define BRUSHLESS25_LOCK_ILIMIT_1000_mV 0x00500000ul
1202 #define BRUSHLESS25_LOCK_ILIMIT_1100_mV 0x00580000ul
1203 #define BRUSHLESS25_LOCK_ILIMIT_1200_mV 0x00600000ul
1204 #define BRUSHLESS25_LOCK_ILIMIT_1300_mV 0x00680000ul
1205 #define BRUSHLESS25_LOCK_ILIMIT_1400_mV 0x00700000ul
1206 #define BRUSHLESS25_LOCK_ILIMIT_1500_mV 0x00780000ul
1207 #define BRUSHLESS25_LOCK_ILIMIT_FLT_ACTIVE_GATE_TRI 0x00000000ul
1208 #define BRUSHLESS25_LOCK_ILIMIT_FLT_ACTIVE_GATE_REC 0x00008000ul
1209 #define BRUSHLESS25_LOCK_ILIMIT_FLT_ACTIVE_GATE_HIG 0x00010000ul
1210 #define BRUSHLESS25_LOCK_ILIMIT_FLT_ACTIVE_GATE_LOW 0x00018000ul
1211 #define BRUSHLESS25_LOCK_ILIMIT_AUTO_REC_LCK_GATE_T 0x00020000ul
1212 #define BRUSHLESS25_LOCK_ILIMIT_AUTO_REC_LCK_GATE_R 0x00028000ul
1213 #define BRUSHLESS25_LOCK_ILIMIT_AUTO_REC_LCK_GATE_H 0x00030000ul
1214 #define BRUSHLESS25_LOCK_ILIMIT_AUTO_REC_LCK_GATE_L 0x00038000ul
1215 #define BRUSHLESS25_LOCK_ILIMIT_ENABLED_NO_ACTION 0x00040000ul
1216 #define BRUSHLESS25_LOCK_ILIMIT_DISABLED 0x00078000ul
1217 #define BRUSHLESS25_LOCK_ILIMIT_DEG_1_mS 0x00000000ul
1218 #define BRUSHLESS25_LOCK_ILIMIT_DEG_2_mS 0x00000800ul
1219 #define BRUSHLESS25_LOCK_ILIMIT_DEG_5_mS 0x00001000ul
1220 #define BRUSHLESS25_LOCK_ILIMIT_DEG_10_mS 0x00001800ul
1221 #define BRUSHLESS25_LOCK_ILIMIT_DEG_25_mS 0x00002000ul
1222 #define BRUSHLESS25_LOCK_ILIMIT_DEG_50_mS 0x00002800ul
1223 #define BRUSHLESS25_LOCK_ILIMIT_DEG_75_mS 0x00003000ul
1224 #define BRUSHLESS25_LOCK_ILIMIT_DEG_100_mS 0x00003800ul
1225 #define BRUSHLESS25_LOCK_ILIMIT_DEG_250_mS 0x00004000ul
1226 #define BRUSHLESS25_LOCK_ILIMIT_DEG_500_mS 0x00004800ul
1227 #define BRUSHLESS25_LOCK_ILIMIT_DEG_1000_mS 0x00005000ul
1228 #define BRUSHLESS25_LOCK_ILIMIT_DEG_2500_mS 0x00005800ul
1229 #define BRUSHLESS25_LOCK_ILIMIT_DEG_5000_mS 0x00006000ul
1230 #define BRUSHLESS25_LOCK_ILIMIT_DEG_10_S 0x00006800ul
1231 #define BRUSHLESS25_LOCK_ILIMIT_DEG_25_S 0x00007000ul
1232 #define BRUSHLESS25_LOCK_ILIMIT_DEG_50_S 0x00007800ul
1233 #define BRUSHLESS25_CBC_RETRY_PWM_CYC_0 0x00000000ul
1234 #define BRUSHLESS25_CBC_RETRY_PWM_CYC_1 0x00000100ul
1235 #define BRUSHLESS25_CBC_RETRY_PWM_CYC_2 0x00000200ul
1236 #define BRUSHLESS25_CBC_RETRY_PWM_CYC_3 0x00000300ul
1237 #define BRUSHLESS25_CBC_RETRY_PWM_CYC_4 0x00000400ul
1238 #define BRUSHLESS25_CBC_RETRY_PWM_CYC_5 0x00000500ul
1239 #define BRUSHLESS25_CBC_RETRY_PWM_CYC_6 0x00000600ul
1240 #define BRUSHLESS25_CBC_RETRY_PWM_CYC_7 0x00000700ul
1241 #define BRUSHLESS25_MTR_LCK_FLT_EN_GATE_TRISTATED 0x00000000ul
1242 #define BRUSHLESS25_MTR_LCK_FLT_EN_GATE_RECIRCULAT 0x00000008ul
1243 #define BRUSHLESS25_MTR_LCK_FLT_EN_HIGH_SIDE_BRAKE 0x00000010ul
1244 #define BRUSHLESS25_MTR_LCK_FLT_EN_LOW_SIDE_BRAKE 0x00000018ul
1245 #define BRUSHLESS25_MTR_LCK_AUTO_REC_LCK_RETR_TRI 0x00000020ul
1246 #define BRUSHLESS25_MTR_LCK_AUTO_REC_LCK_RETR_REC 0x00000028ul
1247 #define BRUSHLESS25_MTR_LCK_AUTO_REC_LCK_HIGH_BRAKE 0x00000030ul
1248 #define BRUSHLESS25_MTR_LCK_AUTO_REC_LCK_LOW_BRAKE 0x00000038ul
1249 #define BRUSHLESS25_MTR_LCK_EN_NO_ACTION 0x00000040ul
1250 #define BRUSHLESS25_MTR_LCK_DISABLED 0x00000078ul
1251 #define BRUSHLESS25_LCK_RETRY_100_mS 0x00000000ul
1252 #define BRUSHLESS25_LCK_RETRY_500_mS 0x00000001ul
1253 #define BRUSHLESS25_LCK_RETRY_1000_mS 0x00000002ul
1254 #define BRUSHLESS25_LCK_RETRY_2000_mS 0x00000003ul
1255 #define BRUSHLESS25_LCK_RETRY_3000_mS 0x00000004ul
1256 #define BRUSHLESS25_LCK_RETRY_5000_mS 0x00000005ul
1257 #define BRUSHLESS25_LCK_RETRY_7500_mS 0x00000006ul
1258 #define BRUSHLESS25_LCK_RETRY_10000_mS 0x00000007ul
1259 
1264 #define BRUSHLESS25_LOCK1_EN 0x40000000ul
1265 #define BRUSHLESS25_LOCK2_EN 0x20000000ul
1266 #define BRUSHLESS25_LOCK3_EN 0x10000000ul
1267 #define BRUSHLESS25_LOCK_ABN_SPEED_250_Hz 0x00000000ul
1268 #define BRUSHLESS25_LOCK_ABN_SPEED_500_Hz 0x01000000ul
1269 #define BRUSHLESS25_LOCK_ABN_SPEED_750_Hz 0x02000000ul
1270 #define BRUSHLESS25_LOCK_ABN_SPEED_1000_Hz 0x03000000ul
1271 #define BRUSHLESS25_LOCK_ABN_SPEED_1250_Hz 0x04000000ul
1272 #define BRUSHLESS25_LOCK_ABN_SPEED_1500_Hz 0x05000000ul
1273 #define BRUSHLESS25_LOCK_ABN_SPEED_1750_Hz 0x06000000ul
1274 #define BRUSHLESS25_LOCK_ABN_SPEED_2000_Hz 0x07000000ul
1275 #define BRUSHLESS25_LOCK_ABN_SPEED_2250_Hz 0x08000000ul
1276 #define BRUSHLESS25_LOCK_ABN_SPEED_2500_Hz 0x09000000ul
1277 #define BRUSHLESS25_LOCK_ABN_SPEED_2750_Hz 0x0A000000ul
1278 #define BRUSHLESS25_LOCK_ABN_SPEED_3000_Hz 0x0B000000ul
1279 #define BRUSHLESS25_LOCK_ABN_SPEED_3250_Hz 0x0C000000ul
1280 #define BRUSHLESS25_LOCK_ABN_SPEED_3500_Hz 0x0D000000ul
1281 #define BRUSHLESS25_LOCK_ABN_SPEED_3750_Hz 0x0E000000ul
1282 #define BRUSHLESS25_LOCK_ABN_SPEED_4000_Hz 0x0F000000ul
1283 #define BRUSHLESS25_LOSS_SYNC_TIMES_2 0x00000000ul
1284 #define BRUSHLESS25_LOSS_SYNC_TIMES_3 0x00200000ul
1285 #define BRUSHLESS25_LOSS_SYNC_TIMES_4 0x00400000ul
1286 #define BRUSHLESS25_LOSS_SYNC_TIMES_5 0x00600000ul
1287 #define BRUSHLESS25_LOSS_SYNC_TIMES_6 0x00800000ul
1288 #define BRUSHLESS25_LOSS_SYNC_TIMES_7 0x00A00000ul
1289 #define BRUSHLESS25_LOSS_SYNC_TIMES_8 0x00C00000ul
1290 #define BRUSHLESS25_LOSS_SYNC_TIMES_9 0x00E00000ul
1291 #define BRUSHLESS25_NO_MTR_THR_5_mV 0x00000000ul
1292 #define BRUSHLESS25_NO_MTR_THR_7POINT5_mV 0x00040000ul
1293 #define BRUSHLESS25_NO_MTR_THR_10_mV 0x00080000ul
1294 #define BRUSHLESS25_NO_MTR_THR_12PIONT5_mV 0x000C0000ul
1295 #define BRUSHLESS25_NO_MTR_THR_20_mV 0x00100000ul
1296 #define BRUSHLESS25_NO_MTR_THR_25_mV 0x00140000ul
1297 #define BRUSHLESS25_NO_MTR_THR_30_mV 0x00180000ul
1298 #define BRUSHLESS25_NO_MTR_THR_40_mV 0x001C0000ul
1299 #define BRUSHLESS25_MAX_VM_MODE_OVERVOLTAGE_LATCH 0x00000000ul
1300 #define BRUSHLESS25_MAX_VM_MODE_AUTO_CLEAR 0x00020000ul
1301 #define BRUSHLESS25_MAX_VM_MOTOR_NO_LIMIT 0x00000000ul
1302 #define BRUSHLESS25_MAX_VM_MOTOR_20_V 0x00004000ul
1303 #define BRUSHLESS25_MAX_VM_MOTOR_25_V 0x00008000ul
1304 #define BRUSHLESS25_MAX_VM_MOTOR_30_V 0x0000C000ul
1305 #define BRUSHLESS25_MAX_VM_MOTOR_35_V 0x00010000ul
1306 #define BRUSHLESS25_MAX_VM_MOTOR_40_V 0x00014000ul
1307 #define BRUSHLESS25_MAX_VM_MOTOR_50_V 0x00018000ul
1308 #define BRUSHLESS25_MAX_VM_MOTOR_60_V 0x0001C000ul
1309 #define BRUSHLESS25_MIX_VM_MODE_UNDERVOLTAGE_LATCH 0x00000000ul
1310 #define BRUSHLESS25_MIX_VM_MODE_AUTO_CLEAR 0x00002000ul
1311 #define BRUSHLESS25_MIN_VM_MOTOR_NO_LIMIT 0x00000000ul
1312 #define BRUSHLESS25_MIN_VM_MOTOR_6_V 0x00000400ul
1313 #define BRUSHLESS25_MIN_VM_MOTOR_7_V 0x00000800ul
1314 #define BRUSHLESS25_MIN_VM_MOTOR_8_V 0x00000C00ul
1315 #define BRUSHLESS25_MIN_VM_MOTOR_9_V 0x00001000ul
1316 #define BRUSHLESS25_MIN_VM_MOTOR_10_V 0x00001400ul
1317 #define BRUSHLESS25_MIN_VM_MOTOR_12_V 0x00001800ul
1318 #define BRUSHLESS25_MIN_VM_MOTOR_15_V 0x00001C00ul
1319 #define BRUSHLESS25_AUTO_RETRY_TIMES_NO_LIMIT 0x00000000ul
1320 #define BRUSHLESS25_AUTO_RETRY_TIMES_2 0x00000080ul
1321 #define BRUSHLESS25_AUTO_RETRY_TIMES_3 0x00000100ul
1322 #define BRUSHLESS25_AUTO_RETRY_TIMES_5 0x00000180ul
1323 #define BRUSHLESS25_AUTO_RETRY_TIMES_7 0x00000200ul
1324 #define BRUSHLESS25_AUTO_RETRY_TIMES_10 0x00000280ul
1325 #define BRUSHLESS25_AUTO_RETRY_TIMES_15 0x00000300ul
1326 #define BRUSHLESS25_AUTO_RETRY_TIMES_20 0x00000380ul
1327 #define BRUSHLESS25_LOCK_MIN_SPEED_0POINT5_HZ 0x00000000ul
1328 #define BRUSHLESS25_LOCK_MIN_SPEED_1_HZ 0x00000010ul
1329 #define BRUSHLESS25_LOCK_MIN_SPEED_2_HZ 0x00000020ul
1330 #define BRUSHLESS25_LOCK_MIN_SPEED_3_HZ 0x00000030ul
1331 #define BRUSHLESS25_LOCK_MIN_SPEED_5_HZ 0x00000040ul
1332 #define BRUSHLESS25_LOCK_MIN_SPEED_10_HZ 0x00000050ul
1333 #define BRUSHLESS25_LOCK_MIN_SPEED_15_HZ 0x00000060ul
1334 #define BRUSHLESS25_LOCK_MIN_SPEED_25_HZ 0x00000070ul
1335 #define BRUSHLESS25_ABN_LOCK_SPD_RATIO_2 0x00000000ul
1336 #define BRUSHLESS25_ABN_LOCK_SPD_RATIO_4 0x00000004ul
1337 #define BRUSHLESS25_ABN_LOCK_SPD_RATIO_6 0x00000008ul
1338 #define BRUSHLESS25_ABN_LOCK_SPD_RATIO_8 0x0000000Cul
1339 #define BRUSHLESS25_ZERO_DUTY_THR_1_PERCENT 0x00000000ul
1340 #define BRUSHLESS25_ZERO_DUTY_THR_1POINT5_PERCENT 0x00000001ul
1341 #define BRUSHLESS25_ZERO_DUTY_THR_2_PERCENT 0x00000002ul
1342 #define BRUSHLESS25_ZERO_DUTY_THR_2POINT5_PERCENT 0x00000003ul
1343 
1348 #define BRUSHLESS25_BRAKE_INPUT_HARDWARE_BRAKE 0x00000000ul
1349 #define BRUSHLESS25_BRAKE_INPUT_BRAKE_ENABLED 0x00000020ul
1350 #define BRUSHLESS25_BRAKE_INPUT_BRAKE_DISABLED 0x00000040ul
1351 #define BRUSHLESS25_BRAKE_INPUT_BRAKE_MASK 0x00000060ul
1352 #define BRUSHLESS25_DIR_INPUT_HARDWARE_DIR 0x00000000ul
1353 #define BRUSHLESS25_DIR_INPUT_OVERWRITE_A_B_C 0x00000008ul
1354 #define BRUSHLESS25_DIR_INPUT_OVERWRITE_NA 0x00000018ul
1355 #define BRUSHLESS25_SPD_CTRL_MODE_ANALOG_MODE 0x00000000ul
1356 #define BRUSHLESS25_SPD_CTRL_MODE_PWM_MODE 0x00000002ul
1357 #define BRUSHLESS25_SPD_CTRL_MODE_I2C_MODE 0x00000004ul
1358 #define BRUSHLESS25_SPD_CTRL_MODE_FREQUENCY_MODE 0x00000006ul
1359 #define BRUSHLESS25_SPD_CTRL_MODE_MASK 0x00000006ul
1360 
1365 #define BRUSHLESS25_DAC_SOX_CONFIG_DACOUT2 0x00000000ul
1366 #define BRUSHLESS25_DAC_SOX_CONFIG_SOA 0x20000000ul
1367 #define BRUSHLESS25_DAC_SOX_CONFIG_SOB 0x40000000ul
1368 #define BRUSHLESS25_DAC_SOX_CONFIG_SOC 0x60000000ul
1369 #define BRUSHLESS25_DAC_XTAL_CONFIG_NA 0x00000000ul
1370 #define BRUSHLESS25_DAC_XTAL_CONFIG_DACOUT1 0x08000000ul
1371 #define BRUSHLESS25_SLEEP_TIME_50_uS 0x00000000ul
1372 #define BRUSHLESS25_SLEEP_TIME_200_uS 0x00040000ul
1373 #define BRUSHLESS25_SLEEP_TIME_20_mS 0x00080000ul
1374 #define BRUSHLESS25_SLEEP_TIME_200_mS 0x000C0000ul
1375 #define BRUSHLESS25_EXT_WD_EN 0x00020000ul
1376 #define BRUSHLESS25_EXT_WD_INPUT_I2C 0x00000000ul
1377 #define BRUSHLESS25_EXT_WD_INPUT_GPIO 0x00010000ul
1378 #define BRUSHLESS25_EXT_WD_FAULT_REPORT_ONLY 0x00000000ul
1379 #define BRUSHLESS25_EXT_WD_FAULT_LATCHED_HIZ_OUTPUT 0x00008000ul
1380 #define BRUSHLESS25_EXT_WD_FREQ_10_Hz 0x00000000ul
1381 #define BRUSHLESS25_EXT_WD_FREQ_5_Hz 0x00002000ul
1382 #define BRUSHLESS25_EXT_WD_FREQ_2_Hz 0x00004000ul
1383 #define BRUSHLESS25_EXT_WD_FREQ_1_Hz 0x00006000ul
1384 
1389 #define BRUSHLESS25_STL_ENABLE 0x00008000ul
1390 #define BRUSHLESS25_SSM_CONFIG_ENABLE 0x00000000ul
1391 #define BRUSHLESS25_SSM_CONFIG_DISABLE 0x00004000ul
1392 #define BRUSHLESS25_DEV_MODE_STANDBY 0x00000000ul
1393 #define BRUSHLESS25_DEV_MODE_SLEEP 0x00000800ul
1394 #define BRUSHLESS25_SPD_PWM_RANGE_SELECT_325_95_Hz 0x00000000ul
1395 #define BRUSHLESS25_SPD_PWM_RANGE_SELECT_10_325_Hz 0x00000400ul
1396 #define BRUSHLESS25_CLK_SEL_INTERNAL_OSCILLATOR 0x00000000ul
1397 #define BRUSHLESS25_CLK_SEL_INTERNAL_NA 0x00000200ul
1398 #define BRUSHLESS25_CLK_SEL_INTERNAL_EXTERNAL_CLOCK 0x00000300ul
1399 #define BRUSHLESS25_EXT_CLK_EN 0x00000040ul
1400 #define BRUSHLESS25_EXT_CLK_CONFIG_8_Hz 0x00000000ul
1401 #define BRUSHLESS25_EXT_CLK_CONFIG_16_Hz 0x00000008ul
1402 #define BRUSHLESS25_EXT_CLK_CONFIG_32_Hz 0x00000010ul
1403 #define BRUSHLESS25_EXT_CLK_CONFIG_64_Hz 0x00000018ul
1404 #define BRUSHLESS25_EXT_CLK_CONFIG_128_Hz 0x00000020ul
1405 #define BRUSHLESS25_EXT_CLK_CONFIG_256_Hz 0x00000028ul
1406 #define BRUSHLESS25_EXT_CLK_CONFIG_512_Hz 0x00000030ul
1407 #define BRUSHLESS25_EXT_CLK_CONFIG_1024_Hz 0x00000038ul
1408 
1413 #define BRUSHLESS25_SLEW_RATE_25_V_PER_uS 0x00000000ul
1414 #define BRUSHLESS25_SLEW_RATE_50_V_PER_uS 0x04000000ul
1415 #define BRUSHLESS25_SLEW_RATE_125_V_PER_uS 0x08000000ul
1416 #define BRUSHLESS25_SLEW_RATE_200_V_PER_uS 0x0C000000ul
1417 #define BRUSHLESS25_OVP_SEL_32_V 0x00000000ul
1418 #define BRUSHLESS25_OVP_SEL_20_V 0x00080000ul
1419 #define BRUSHLESS25_OVP_EN 0x00040000ul
1420 #define BRUSHLESS25_OTW_REP_ENABLE 0x00010000ul
1421 #define BRUSHLESS25_OCP_DEG_0POINT2_uS 0x00000000ul
1422 #define BRUSHLESS25_OCP_DEG_0POINT6_uS 0x00001000ul
1423 #define BRUSHLESS25_OCP_DEG_1POINT1_uS 0x00002000ul
1424 #define BRUSHLESS25_OCP_DEG_1POINT6_uS 0x00003000ul
1425 #define BRUSHLESS25_OCP_RETRY_5_mS 0x00000000ul
1426 #define BRUSHLESS25_OCP_RETRY_500_mS 0x00000800ul
1427 #define BRUSHLESS25_OCP_LVL_16_A 0x00000000ul
1428 #define BRUSHLESS25_OCP_LVL_24_A 0x00000400ul
1429 #define BRUSHLESS25_OCP_MODE_LATCHED_FAULT 0x00000000ul
1430 #define BRUSHLESS25_OCP_MODE_AUTO_RETRYING_FAULT 0x00000100ul
1431 #define BRUSHLESS25_OCP_MODE_REPORT_ONLY 0x00000200ul
1432 #define BRUSHLESS25_OCP_MODE_NO_REPORT 0x00000300ul
1433 #define BRUSHLESS25_ADCOMP_TH_LS_100_mA 0x00000000ul
1434 #define BRUSHLESS25_ADCOMP_TH_LS_150_mA 0x00000020ul
1435 #define BRUSHLESS25_ADCOMP_TH_HS_100_mA 0x00000000ul
1436 #define BRUSHLESS25_ADCOMP_TH_HS_150_mA 0x00000010ul
1437 #define BRUSHLESS25_EN_ASR_ENABLE 0x00000008ul
1438 #define BRUSHLESS25_EN_AAR_ENABLE 0x00000004ul
1439 #define BRUSHLESS25_CSA_GAIN_150_mV_PER_A 0x00000000ul
1440 #define BRUSHLESS25_CSA_GAIN_300_mV_PER_A 0x00000001ul
1441 #define BRUSHLESS25_CSA_GAIN_600_mV_PER_A 0x00000002ul
1442 #define BRUSHLESS25_CSA_GAIN_1200_mV_PER_A 0x00000003ul
1443 
1448 #define BRUSHLESS25_DELAY_COMP_EN 0x40000000ul
1449 #define BRUSHLESS25_TARGET_DELAY_AUTO 0x00000000ul
1450 #define BRUSHLESS25_TARGET_DELAY_0POINT4_uS 0x04000000ul
1451 #define BRUSHLESS25_TARGET_DELAY_0POINT6_uS 0x08000000ul
1452 #define BRUSHLESS25_TARGET_DELAY_0POINT8_uS 0x0C000000ul
1453 #define BRUSHLESS25_TARGET_DELAY_1_uS 0x10000000ul
1454 #define BRUSHLESS25_TARGET_DELAY_1POINT2_uS 0x14000000ul
1455 #define BRUSHLESS25_TARGET_DELAY_1POINT4_uS 0x18000000ul
1456 #define BRUSHLESS25_TARGET_DELAY_1POINT6_uS 0x1C000000ul
1457 #define BRUSHLESS25_TARGET_DELAY_1POINT8_uS 0x20000000ul
1458 #define BRUSHLESS25_TARGET_DELAY_2_uS 0x24000000ul
1459 #define BRUSHLESS25_TARGET_DELAY_2POINT2_uS 0x28000000ul
1460 #define BRUSHLESS25_TARGET_DELAY_2POINT4_uS 0x2C000000ul
1461 #define BRUSHLESS25_TARGET_DELAY_2POINT6_uS 0x30000000ul
1462 #define BRUSHLESS25_TARGET_DELAY_2POINT8_uS 0x34000000ul
1463 #define BRUSHLESS25_TARGET_DELAY_3_uS 0x38000000ul
1464 #define BRUSHLESS25_TARGET_DELAY_3POINT2_uS 0x3C000000ul
1465 #define BRUSHLESS25_BUCK_SR_1000_V_PER_uS 0x00000000ul
1466 #define BRUSHLESS25_BUCK_SR_200_V_PER_uS 0x02000000ul
1467 #define BRUSHLESS25_BUCK_PS_ENABLE 0x00000000ul
1468 #define BRUSHLESS25_BUCK_PS_DISABLE 0x01000000ul
1469 #define BRUSHLESS25_BUCK_CL_600_mA 0x00000000ul
1470 #define BRUSHLESS25_BUCK_CL_150_mA 0x00800000ul
1471 #define BRUSHLESS25_BUCK_SEL_3V3 0x00000000ul
1472 #define BRUSHLESS25_BUCK_SEL_5V 0x00200000ul
1473 #define BRUSHLESS25_BUCK_SEL_4V 0x00400000ul
1474 #define BRUSHLESS25_BUCK_SEL_5V7 0x00600000ul
1475 #define BRUSHLESS25_BUCK_ENABLE 0x00000000ul
1476 #define BRUSHLESS25_BUCK_DISABLE 0x00100000ul
1477 
1482 #define BRUSHLESS25_DRIVER_FAULT_DETECTED 0x80000000ul
1483 #define BRUSHLESS25_BK_FLT_DETECTED 0x40000000ul
1484 #define BRUSHLESS25_OCP_DETECTED 0x10000000ul
1485 #define BRUSHLESS25_NPOR_DETECTED 0x08000000ul
1486 #define BRUSHLESS25_OVP_DETECTED 0x04000000ul
1487 #define BRUSHLESS25_OT_DETECTED 0x02000000ul
1488 #define BRUSHLESS25_OTW_DETECTED 0x00800000ul
1489 #define BRUSHLESS25_TSD_DETECTED 0x00400000ul
1490 #define BRUSHLESS25_OCP_HC_DETECTED 0x00200000ul
1491 #define BRUSHLESS25_OCP_LC_DETECTED 0x00100000ul
1492 #define BRUSHLESS25_OCP_HB_DETECTED 0x00080000ul
1493 #define BRUSHLESS25_OCP_LB_DETECTED 0x00040000ul
1494 #define BRUSHLESS25_OCP_HA_DETECTED 0x00020000ul
1495 #define BRUSHLESS25_OCP_LA_DETECTED 0x00010000ul
1496 #define BRUSHLESS25_OTP_ERR_DETECTED 0x00004000ul
1497 #define BRUSHLESS25_BUCK_OCP_DETECTED 0x00002000ul
1498 #define BRUSHLESS25_BUCK_UV_DETECTED 0x00001000ul
1499 #define BRUSHLESS25_VCP_UV_DETECTED 0x00000800ul
1500 
1505 #define BRUSHLESS25_CONTROLLER_FAULT_DETECTED 0x80000000ul
1506 #define BRUSHLESS25_IPD_FREQ_FAULT_DETECTED 0x20000000ul
1507 #define BRUSHLESS25_IPD_T1_FAULT_DETECTED 0x10000000ul
1508 #define BRUSHLESS25_IPD_T2_FAULT_DETECTED 0x08000000ul
1509 #define BRUSHLESS25_ABN_SPEED_DETECTED 0x00800000ul
1510 #define BRUSHLESS25_LOSS_OF_SYNC_DETECTED 0x00400000ul
1511 #define BRUSHLESS25_NO_MTR_DETECTED 0x00200000ul
1512 #define BRUSHLESS25_MTR_LCK_DETECTED 0x00100000ul
1513 #define BRUSHLESS25_CBC_ILIMIT_DETECTED 0x00080000ul
1514 #define BRUSHLESS25_LOCK_ILIMIT_DETECTED 0x00040000ul
1515 #define BRUSHLESS25_MTR_UNDER_VOLTAGE_DETECTED 0x00020000ul
1516 #define BRUSHLESS25_MTR_OVER_VOLTAGE_DETECTED 0x00010000ul
1517 #define BRUSHLESS25_EXT_WD_TIMEOUT_DETECTED 0x00008000ul
1518 #define BRUSHLESS25_STL_EN_DETECTED 0x00000004ul
1519 #define BRUSHLESS25_STL_STATUS_DETECTED 0x00000002ul
1520 #define BRUSHLESS25_APP_RESET_DETECTED 0x00000001ul
1521 
1526 #define BRUSHLESS25_STATE_SYSTEM_IDLE 0x00000000ul
1527 #define BRUSHLESS25_STATE_MOTOR_START 0x10000000ul
1528 #define BRUSHLESS25_STATE_MOTOR_RUN 0x20000000ul
1529 #define BRUSHLESS25_STATE_SYSTEM_INIT 0x30000000ul
1530 #define BRUSHLESS25_STATE_MOTOR_IPD 0x40000000ul
1531 #define BRUSHLESS25_STATE_MOTOR_ALIGN 0x50000000ul
1532 #define BRUSHLESS25_STATE_MOTOR_IDLE 0x60000000ul
1533 #define BRUSHLESS25_STATE_MOTOR_STOP 0x70000000ul
1534 #define BRUSHLESS25_STATE_FAULT 0x80000000ul
1535 #define BRUSHLESS25_STATE_MOTOR_DIRECTION 0x90000000ul
1536 #define BRUSHLESS25_STATE_HALL_ALIGN 0xA0000000ul
1537 #define BRUSHLESS25_STATE_MOTOR_FREEWHEEL 0xC0000000ul
1538 #define BRUSHLESS25_STATE_MOTOR_DESCEL 0xD0000000ul
1539 #define BRUSHLESS25_STATE_MOTOR_BRAKE 0xE0000000ul
1540 #define BRUSHLESS25_STATE_MASK 0xF0000000ul
1541 #define BRUSHLESS25_STL_FAULT_PASS 0x00000000ul
1542 #define BRUSHLESS25_STL_FAULT_FAIL 0x00020000ul
1543 
1548 #define BRUSHLESS25_DC_BUS_CURR_MASK 0xFFFF0000ul
1549 #define BRUSHLESS25_DC_BATT_POW_MASK 0x0000FFFFul
1550 
1555 #define BRUSHLESS25_EEPROM_WRITE 0x80000000ul
1556 #define BRUSHLESS25_EEPROM_READ 0x40000000ul
1557 #define BRUSHLESS25_CLR_FLT 0x20000000ul
1558 #define BRUSHLESS25_CLR_FLT_RETRY_COUNT 0x10000000ul
1559 #define BRUSHLESS25_EXT_WD_STATUS_SET_AUTO 0x00000000ul
1560 #define BRUSHLESS25_EXT_WD_STATUS_SET 0x00000001ul
1561 
1566 #define BRUSHLESS25_SPEED_CTRL_MASK 0x7FFF0000ul
1567 #define BRUSHLESS25_SPEED_CMD_USING_AN_FREQ_PWM 0x00000000ul
1568 #define BRUSHLESS25_SPEED_CMD_USING_SPEED_CTRL 0x00008000ul
1569 #define BRUSHLESS25_SPEED_CMD_MULTIPLAYER 32767
1570 
1575 #define BRUSHLESS25_OP_R_CW 0x80
1576 #define BRUSHLESS25_OP_W_CW 0x00
1577 #define BRUSHLESS25_CRC_EN_CW 0x40
1578 #define BRUSHLESS25_CRC_DIS_CW 0x00
1579 #define BRUSHLESS25_16_BIT_DATA_CW 0x00
1580 #define BRUSHLESS25_32_BIT_DATA_CW 0x10
1581 #define BRUSHLESS25_64_BIT_DATA_CW 0x20
1582 
1587 #define BRUSHLESS25_POT_WRITE_REG_CMD 0x00
1588 #define BRUSHLESS25_POT_DEC_WIPER_CMD 0x02
1589 #define BRUSHLESS25_POT_INC_WIPER_CMD 0x01
1590 #define BRUSHLESS25_POT_VOLATILE_WIPER0_REG 0x00
1591 #define BRUSHLESS25_POT_NON_VOLATILE_WIPER0_REG 0x02
1592 #define BRUSHLESS25_POT_MAX_VAL 0x0100
1593 
1598 #define BRUSHLESS25_ANALOG_SPD_CTRL 0x00
1599 #define BRUSHLESS25_PWM_SPD_CTRL 0x01
1600 #define BRUSHLESS25_I2C_SPD_CTRL 0x02
1601 
1606 #define BRUSHLESS25_HW_CTRL_BRAKE 0x00
1607 #define BRUSHLESS25_BRAKE_ON 0x01
1608 #define BRUSHLESS25_BRAKE_OFF 0x02
1609 
1614 #define BRUSHLESS25_SLOW_START_ISD_CONFIG 0x6F04C180ul
1615 #define BRUSHLESS25_SLOW_START_MOTOR_STARTUP1 0x2F889192ul
1616 #define BRUSHLESS25_SLOW_START_MOTOR_STARTUP2 0x1A1CF990ul
1617 #define BRUSHLESS25_SLOW_START_CLOSED_LOOP1 0x09220200ul
1618 #define BRUSHLESS25_SLOW_START_CLOSED_LOOP2 0x02A6E4B0ul
1619 #define BRUSHLESS25_SLOW_START_CLOSED_LOOP3 0x4CC40100ul
1620 #define BRUSHLESS25_SLOW_START_CLOSED_LOOP4 0x000CE944ul
1621 #define BRUSHLESS25_SLOW_START_CONST_SPEED 0x00A00504ul
1622 #define BRUSHLESS25_SLOW_START_CONST_PWR 0x5DC04C84ul
1623 #define BRUSHLESS25_SLOW_START_150_DEG_TWO_PH 0x36DB6DA6ul
1624 #define BRUSHLESS25_SLOW_START_150_DEG_THREE_PH 0x36DB6D80ul
1625 #define BRUSHLESS25_SLOW_START_TRAP_CONFIG1 0x054BA106ul
1626 #define BRUSHLESS25_SLOW_START_TRAP_CONFIG2 0x52880000ul
1627 #define BRUSHLESS25_SLOW_START_FAULT_CONFIG1 0x78F43025ul
1628 #define BRUSHLESS25_SLOW_START_FAULT_CONFIG2 0x7447A009ul
1629 #define BRUSHLESS25_SLOW_START_GD_CONFIG1 0x1C440000ul
1630 #define BRUSHLESS25_SLOW_START_GD_CONFIG2 0x14000000ul
1631 #define BRUSHLESS25_SLOW_START_PIN_CONFIG1 0x2D720600ul
1632 #define BRUSHLESS25_SLOW_START_PIN_CONFIG2 0x080C0000ul
1633 #define BRUSHLESS25_SLOW_START_DEVICE_CONFIG 0x7FFF0000ul
1634 #define BRUSHLESS25_SLOW_START_PERIPH_CONFIG 0x00000000ul
1635 
1640 #define BRUSHLESS25_FAST_START_ISD_CONFIG 0x6F04C100ul
1641 #define BRUSHLESS25_FAST_START_MOTOR_STARTUP1 0x38C8D197ul
1642 #define BRUSHLESS25_FAST_START_MOTOR_STARTUP2 0x1A399990ul
1643 #define BRUSHLESS25_FAST_START_CLOSED_LOOP1 0x11466200ul
1644 #define BRUSHLESS25_FAST_START_CLOSED_LOOP2 0x02A6E4B0ul
1645 #define BRUSHLESS25_FAST_START_CLOSED_LOOP3 0x4CC40101ul
1646 #define BRUSHLESS25_FAST_START_CLOSED_LOOP4 0x000CE944ul
1647 #define BRUSHLESS25_FAST_START_CONST_SPEED 0x00A00504ul
1648 #define BRUSHLESS25_FAST_START_CONST_PWR 0x5DC04C84ul
1649 #define BRUSHLESS25_FAST_START_150_DEG_TWO_PH 0x36DB6DA6ul
1650 #define BRUSHLESS25_FAST_START_150_DEG_THREE_PH 0x36DB6D80ul
1651 #define BRUSHLESS25_FAST_START_TRAP_CONFIG1 0x054BA106ul
1652 #define BRUSHLESS25_FAST_START_TRAP_CONFIG2 0x2A880000ul
1653 #define BRUSHLESS25_FAST_START_FAULT_CONFIG1 0x78F43025ul
1654 #define BRUSHLESS25_FAST_START_FAULT_CONFIG2 0x7947A009ul
1655 #define BRUSHLESS25_FAST_START_GD_CONFIG1 0x1C440000ul
1656 #define BRUSHLESS25_FAST_START_GD_CONFIG2 0x14000000ul
1657 #define BRUSHLESS25_FAST_START_PIN_CONFIG1 0x2D720600ul
1658 #define BRUSHLESS25_FAST_START_PIN_CONFIG2 0x080C0000ul
1659 #define BRUSHLESS25_FAST_START_DEVICE_CONFIG 0x7FFF0000ul
1660 #define BRUSHLESS25_FAST_START_PERIPH_CONFIG 0x00000000ul
1661 
1666 #define BRUSHLESS25_ULTRA_START_ISD_CONFIG 0x6EC4C000ul
1667 #define BRUSHLESS25_ULTRA_START_MOTOR_STARTUP1 0x3E07118Bul
1668 #define BRUSHLESS25_ULTRA_START_MOTOR_STARTUP2 0x3B52239Cul
1669 #define BRUSHLESS25_ULTRA_START_CLOSED_LOOP1 0x1F326200ul
1670 #define BRUSHLESS25_ULTRA_START_CLOSED_LOOP2 0x02A224B0ul
1671 #define BRUSHLESS25_ULTRA_START_CLOSED_LOOP3 0x4D640111ul
1672 #define BRUSHLESS25_ULTRA_START_CLOSED_LOOP4 0x000CE944ul
1673 #define BRUSHLESS25_ULTRA_START_CONST_SPEED 0x00A00504ul
1674 #define BRUSHLESS25_ULTRA_START_CONST_PWR 0x5DC04C84ul
1675 #define BRUSHLESS25_ULTRA_START_150_DEG_TWO_PH 0x36DB6DA6ul
1676 #define BRUSHLESS25_ULTRA_START_150_DEG_THREE_PH 0x36DB6D80ul
1677 #define BRUSHLESS25_ULTRA_START_TRAP_CONFIG1 0x050BA106ul
1678 #define BRUSHLESS25_ULTRA_START_TRAP_CONFIG2 0x221C0000ul
1679 #define BRUSHLESS25_ULTRA_START_FAULT_CONFIG1 0x60F43025ul
1680 #define BRUSHLESS25_ULTRA_START_FAULT_CONFIG2 0x7487A009ul
1681 #define BRUSHLESS25_ULTRA_START_GD_CONFIG1 0x1C440000ul
1682 #define BRUSHLESS25_ULTRA_START_GD_CONFIG2 0x14000000ul
1683 #define BRUSHLESS25_ULTRA_START_PIN_CONFIG1 0x2D720600ul
1684 #define BRUSHLESS25_ULTRA_START_PIN_CONFIG2 0x08000000ul
1685 #define BRUSHLESS25_ULTRA_START_DEVICE_CONFIG 0x7FFF0000ul
1686 #define BRUSHLESS25_ULTRA_START_PERIPH_CONFIG 0x00000000ul
1687 
1688 #define BRUSHLESS25_CRC_ENABLED 0x01
1689 #define BRUSHLESS25_CRC_DISABLED 0x00
1690 
1695 #define BRUSHLESS25_DEF_FREQ 5000
1696 
1702 #define BRUSHLESS25_DEVICE_ADDRESS 0x00
1703 
1712 #define BRUSHLESS25_SET_DATA_SAMPLE_EDGE SET_SPI_DATA_SAMPLE_EDGE
1713 #define BRUSHLESS25_SET_DATA_SAMPLE_MIDDLE SET_SPI_DATA_SAMPLE_MIDDLE
1714  // brushless25_set
1716 
1731 #define BRUSHLESS25_MAP_MIKROBUS( cfg, mikrobus ) \
1732  cfg.scl = MIKROBUS( mikrobus, MIKROBUS_SCL ); \
1733  cfg.sda = MIKROBUS( mikrobus, MIKROBUS_SDA ); \
1734  cfg.miso = MIKROBUS( mikrobus, MIKROBUS_MISO ); \
1735  cfg.mosi = MIKROBUS( mikrobus, MIKROBUS_MOSI ); \
1736  cfg.sck = MIKROBUS( mikrobus, MIKROBUS_SCK ); \
1737  cfg.cs = MIKROBUS( mikrobus, MIKROBUS_CS ); \
1738  cfg.flt = MIKROBUS( mikrobus, MIKROBUS_AN ); \
1739  cfg.rst = MIKROBUS( mikrobus, MIKROBUS_RST ); \
1740  cfg.pwm = MIKROBUS( mikrobus, MIKROBUS_PWM ); \
1741  cfg.fg = MIKROBUS( mikrobus, MIKROBUS_INT );
1742  // brushless25_map // brushless25
1745 
1746 
1751 typedef struct brushless25_s
1752 {
1753  digital_out_t rst;
1755  digital_in_t flt;
1756  digital_in_t fg;
1758  pwm_t pwm;
1760  // ctx variable
1761  uint32_t pwm_freq;
1763  i2c_master_t i2c;
1764  spi_master_t spi;
1766  uint8_t slave_address;
1767  pin_name_t chip_select;
1769  uint8_t spd_ctrl_mode;
1770  uint8_t crc_en;
1773 
1778 typedef struct
1779 {
1780  pin_name_t scl;
1781  pin_name_t sda;
1782  pin_name_t miso;
1783  pin_name_t mosi;
1784  pin_name_t sck;
1785  pin_name_t cs;
1786  pin_name_t pwm;
1787  pin_name_t flt;
1788  pin_name_t rst;
1789  pin_name_t fg;
1791  uint32_t i2c_speed;
1792  uint8_t i2c_address;
1794  uint32_t dev_pwm_freq;
1796  uint32_t spi_speed;
1797  spi_master_mode_t spi_mode;
1798  spi_master_chip_select_polarity_t cs_polarity;
1801 
1806 typedef enum
1807 {
1809  BRUSHLESS25_ERROR = -1
1810 
1812 
1829 
1844 
1856 err_t brushless25_set_duty_cycle ( brushless25_t *ctx, float duty_cycle );
1857 
1869 
1881 
1895 
1910 err_t brushless25_i2c_write ( brushless25_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len );
1911 
1926 err_t brushless25_i2c_read ( brushless25_t *ctx, uint8_t reg, uint8_t *data_out, uint8_t len );
1927 
1942 err_t brushless25_spi_write ( brushless25_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len );
1943 
1953 
1963 
1977 err_t brushless25_cfg_write ( brushless25_t *ctx, uint16_t reg, uint32_t data_in );
1978 
1992 err_t brushless25_cfg_write_with_crc ( brushless25_t *ctx, uint16_t reg, uint32_t data_in );
1993 
2007 err_t brushless25_register_write ( brushless25_t *ctx, uint16_t reg, uint32_t data_in );
2008 
2022 err_t brushless25_cfg_read ( brushless25_t *ctx, uint16_t reg, uint32_t *data_out );
2023 
2037 err_t brushless25_cfg_read_with_crc ( brushless25_t *ctx, uint16_t reg, uint32_t *data_out );
2038 
2052 err_t brushless25_register_read ( brushless25_t *ctx, uint16_t reg, uint32_t *data_out );
2053 
2067 err_t brushless25_pot_write ( brushless25_t *ctx, uint8_t cmd, uint8_t reg, uint16_t data_in );
2068 
2080 err_t brushless25_set_wiper_position ( brushless25_t *ctx, uint16_t data_in );
2081 
2095 err_t brushless25_set_speed_ctrl_mode ( brushless25_t *ctx, uint8_t mode );
2096 
2108 err_t brushless25_set_speed_value ( brushless25_t *ctx, float spd_val );
2109 
2121 err_t brushless25_set_brake_state ( brushless25_t *ctx, uint8_t brake_state );
2122 
2134 
2146 
2158 
2159 #ifdef __cplusplus
2160 }
2161 #endif
2162 #endif // BRUSHLESS25_H
2163  // brushless25
2165 
2166 // ------------------------------------------------------------------------ END
brushless25_cfg_t::scl
pin_name_t scl
Definition: brushless25.h:1780
brushless25_i2c_read
err_t brushless25_i2c_read(brushless25_t *ctx, uint8_t reg, uint8_t *data_out, uint8_t len)
Brushless 25 I2C reading function.
BRUSHLESS25_OK
@ BRUSHLESS25_OK
Definition: brushless25.h:1808
BRUSHLESS25_ERROR
@ BRUSHLESS25_ERROR
Definition: brushless25.h:1809
brushless25_s::pwm_freq
uint32_t pwm_freq
Definition: brushless25.h:1761
brushless25_cfg_write
err_t brushless25_cfg_write(brushless25_t *ctx, uint16_t reg, uint32_t data_in)
Brushless 25 config writing function.
brushless25_s::pwm
pwm_t pwm
Definition: brushless25.h:1758
brushless25_s::chip_select
pin_name_t chip_select
Definition: brushless25.h:1767
brushless25_s::slave_address
uint8_t slave_address
Definition: brushless25.h:1766
brushless25_set_wiper_position
err_t brushless25_set_wiper_position(brushless25_t *ctx, uint16_t data_in)
Brushless 25 set pot wiper position function.
brushless25_s::crc_en
uint8_t crc_en
Definition: brushless25.h:1770
brushless25_cfg_t::sck
pin_name_t sck
Definition: brushless25.h:1784
brushless25_cfg_t
Brushless 25 Click configuration object.
Definition: brushless25.h:1779
spi_specifics.h
This file contains SPI specific macros, functions, etc.
brushless25_set_speed_ctrl_mode
err_t brushless25_set_speed_ctrl_mode(brushless25_t *ctx, uint8_t mode)
Brushless 25 set speed control mode function.
brushless25_cfg_t::spi_mode
spi_master_mode_t spi_mode
Definition: brushless25.h:1797
brushless25_cfg_t::fg
pin_name_t fg
Definition: brushless25.h:1789
brushless25_s::spi
spi_master_t spi
Definition: brushless25.h:1764
brushless25_cfg_t::pwm
pin_name_t pwm
Definition: brushless25.h:1786
brushless25_disable_drvoff
void brushless25_disable_drvoff(brushless25_t *ctx)
Brushless 25 disable drvoff mode function.
brushless25_s
Brushless 25 Click context object.
Definition: brushless25.h:1752
brushless25_cfg_read
err_t brushless25_cfg_read(brushless25_t *ctx, uint16_t reg, uint32_t *data_out)
Brushless 25 config reading function.
brushless25_s::fg
digital_in_t fg
Definition: brushless25.h:1756
brushless25_set_brake_state
err_t brushless25_set_brake_state(brushless25_t *ctx, uint8_t brake_state)
Brushless 25 set brake state function.
brushless25_cfg_write_with_crc
err_t brushless25_cfg_write_with_crc(brushless25_t *ctx, uint16_t reg, uint32_t data_in)
Brushless 25 config writing function with crc on.
brushless25_init
err_t brushless25_init(brushless25_t *ctx, brushless25_cfg_t *cfg)
Brushless 25 initialization function.
brushless25_pot_write
err_t brushless25_pot_write(brushless25_t *ctx, uint8_t cmd, uint8_t reg, uint16_t data_in)
Brushless 25 pot writing function.
brushless25_register_read
err_t brushless25_register_read(brushless25_t *ctx, uint16_t reg, uint32_t *data_out)
Brushless 25 data reading function.
brushless25_cfg_setup
void brushless25_cfg_setup(brushless25_cfg_t *cfg)
Brushless 25 configuration object setup function.
brushless25_enable_drvoff
void brushless25_enable_drvoff(brushless25_t *ctx)
Brushless 25 enable drvoff mode function.
brushless25_cfg_t::miso
pin_name_t miso
Definition: brushless25.h:1782
brushless25_slow_start_config
err_t brushless25_slow_start_config(brushless25_t *ctx)
Brushless 25 slow start function.
brushless25_cfg_t::mosi
pin_name_t mosi
Definition: brushless25.h:1783
brushless25_s::rst
digital_out_t rst
Definition: brushless25.h:1753
brushless25_spi_write
err_t brushless25_spi_write(brushless25_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len)
Brushless 25 SPI writing function.
brushless25_cfg_t::cs_polarity
spi_master_chip_select_polarity_t cs_polarity
Definition: brushless25.h:1798
brushless25_s::flt
digital_in_t flt
Definition: brushless25.h:1755
brushless25_register_write
err_t brushless25_register_write(brushless25_t *ctx, uint16_t reg, uint32_t data_in)
Brushless 25 data writing function.
brushless25_return_value_t
brushless25_return_value_t
Brushless 25 Click return value data.
Definition: brushless25.h:1807
brushless25_cfg_t::sda
pin_name_t sda
Definition: brushless25.h:1781
brushless25_cfg_t::i2c_address
uint8_t i2c_address
Definition: brushless25.h:1792
brushless25_cfg_read_with_crc
err_t brushless25_cfg_read_with_crc(brushless25_t *ctx, uint16_t reg, uint32_t *data_out)
Brushless 25 config reading function.
brushless25_s::i2c
i2c_master_t i2c
Definition: brushless25.h:1763
brushless25_cfg_t::cs
pin_name_t cs
Definition: brushless25.h:1785
brushless25_cfg_t::i2c_speed
uint32_t i2c_speed
Definition: brushless25.h:1791
brushless25_cfg_t::rst
pin_name_t rst
Definition: brushless25.h:1788
brushless25_cfg_t::spi_speed
uint32_t spi_speed
Definition: brushless25.h:1796
brushless25_set_speed_value
err_t brushless25_set_speed_value(brushless25_t *ctx, float spd_val)
Brushless 25 set speed function.
brushless25_default_cfg
err_t brushless25_default_cfg(brushless25_t *ctx)
Brushless 25 default configuration function.
brushless25_cfg_t::dev_pwm_freq
uint32_t dev_pwm_freq
Definition: brushless25.h:1794
brushless25_s::spd_ctrl_mode
uint8_t spd_ctrl_mode
Definition: brushless25.h:1769
brushless25_t
struct brushless25_s brushless25_t
Brushless 25 Click context object.
brushless25_ultra_fast_start_config
err_t brushless25_ultra_fast_start_config(brushless25_t *ctx)
Brushless 25 ultra fast start function.
brushless25_cfg_t::flt
pin_name_t flt
Definition: brushless25.h:1787
brushless25_pwm_stop
err_t brushless25_pwm_stop(brushless25_t *ctx)
Brushless 24 stop PWM module.
brushless25_fast_start_config
err_t brushless25_fast_start_config(brushless25_t *ctx)
Brushless 25 fast start function.
brushless25_pwm_start
err_t brushless25_pwm_start(brushless25_t *ctx)
Brushless 24 start PWM module.
brushless25_i2c_write
err_t brushless25_i2c_write(brushless25_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len)
Brushless 25 I2C writing function.
brushless25_set_duty_cycle
err_t brushless25_set_duty_cycle(brushless25_t *ctx, float duty_cycle)
Brushless 24 sets PWM duty cycle.