gr533x_hal_br.h
Go to the documentation of this file.
1 /**
2 ****************************************************************************************
3 *
4 * @file gr533x_hal_br.h
5 * @author BLE Driver Team
6 * @brief This file contains all the functions prototypes for the HAL
7 * Bridge module driver.
8 *
9 ****************************************************************************************
10 * @attention
11 #####Copyright (c) 2019 GOODIX
12 All rights reserved.
13
14 Redistribution and use in source and binary forms, with or without
15 modification, are permitted provided that the following conditions are met:
16 * Redistributions of source code must retain the above copyright
17 notice, this list of conditions and the following disclaimer.
18 * Redistributions in binary form must reproduce the above copyright
19 notice, this list of conditions and the following disclaimer in the
20 documentation and/or other materials provided with the distribution.
21 * Neither the name of GOODIX nor the names of its contributors may be used
22 to endorse or promote products derived from this software without
23 specific prior written permission.
24
25 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28 ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
29 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35 POSSIBILITY OF SUCH DAMAGE.
36 ****************************************************************************************
37 */
38
39 /** @addtogroup PERIPHERAL Peripheral Driver
40 * @{
41 */
42
43 /** @addtogroup HAL_DRIVER HAL Driver
44 * @{
45 */
46
47 /** @defgroup HAL_BR BR
48 * @brief HAL Bridge module driver.
49 * @{
50 */
51
52 /* Define to prevent recursive inclusion -------------------------------------*/
53 #ifndef __GR533x_HAL_BR_H__
54 #define __GR533x_HAL_BR_H__
55
56 #ifdef __cplusplus
57 extern "C" {
58 #endif
59
60 /* Includes ------------------------------------------------------------------*/
61 #include "gr533x_hal.h"
62
63 /** @addtogroup HAL_HAL_DRIVER_FUNCTIONS Functions
64 * @{
65 */
66
67 /** @addtogroup HAL_Exported_Functions_Group Initialization, De-initialization
68 * and Callback registration Functions
69 *
70 * @brief Initialization , de-initialization and Callback registration Functions
71 *
72 */
73
74 /** @addtogroup HAL_HAL_CALLBACK_STRUCTURES Callback Structures
75 * @{
76 */
77
78 /** @defgroup HAL_HAL_Callback Callback
79 * @{
80 */
81
82 /**
83 * @brief HAL_HAL Callback function definition
84 */
85
86 typedef struct _hal_callback
87 {
88 void (*msp_init)(void); /**< HAL init MSP callback */
89 void (*msp_deinit)(void); /**< HAL de-init MSP callback */
90 void (*systick_callback)(void); /**< HAL systick callback */
91 } hal_callback_t;
92
93 /** @} */
94
95 /** @} */
96
97 /**
98 ****************************************************************************************
99 * @brief This function configures time base source, NVIC and Low level hardware.
100 *
101 * @note This function is called at the beginning of program after reset and before
102 * the clock configuration.
103 * The SysTick configuration is based on AHB clock.
104 * When the time base configuration is done, time base tick starts incrementing.
105 * In the default implementation, SysTick is used as source of time base.
106 * The tick variable is incremented each 1ms in its ISR.
107 * The function will call the hal_init function to initialize the HAL.
108 *
109 * @retval ::HAL_OK: Operation is OK.
110 * @retval ::HAL_ERROR: Parameter error or operation not supported.
111 * @retval ::HAL_BUSY: Driver is busy.
112 * @retval ::HAL_TIMEOUT: Timeout occurred.
113 ****************************************************************************************
114 */
115 hal_status_t hal_init_ext(void);
116
117 /**
118 ****************************************************************************************
119 * @brief This function de-initializes common part of the HAL and stops the source
120 * of time base.
121 *
122 * @note This function is optional.
123 * The function will call the hal_deinit function to De-initialize the HAL.
124 *
125 * @retval ::HAL_OK: Operation is OK.
126 * @retval ::HAL_ERROR: Parameter error or operation not supported.
127 * @retval ::HAL_BUSY: Driver is busy.
128 * @retval ::HAL_TIMEOUT: Timeout occurred.
129 ****************************************************************************************
130 */
131 hal_status_t hal_deinit_ext(void);
132
133 /**
134 ****************************************************************************************
135 * @brief This function registers the callback function to the ROM area.
136 *
137 * @note This function needs to be called before hal_init.
138 *
139 * @param[in] hal_callback: Pointer to callback structure function. @ref hal_callback_t
140 ****************************************************************************************
141 */
142 void hal_register_callback(hal_callback_t *hal_callback);
143
144 #ifdef HAL_ADC_MODULE_ENABLED
145
146 /**
147 ****************************************************************************************
148 * @brief Initialize the ADC according to the specified parameters
149 * in the adc_init_t and initialize the associated handle.
150 *
151 * @param[in] p_adc: Pointer to an ADC handle which contains the configuration information for
152 * the specified ADC module.
153 *
154 * @note The function will call the hal_adc_init function to initialize the HAL ADC.
155 *
156 * @retval ::HAL_OK: Operation is OK.
157 * @retval ::HAL_ERROR: Parameter error or operation not supported.
158 * @retval ::HAL_BUSY: Driver is busy.
159 * @retval ::HAL_TIMEOUT: Timeout occurred.
160 ****************************************************************************************
161 */
162 hal_status_t hal_adc_init_ext(adc_handle_t *p_adc);
163
164 /**
165 ****************************************************************************************
166 * @brief De-initialize the ADC peripheral.
167 *
168 * @param[in] p_adc: Pointer to an ADC handle which contains the configuration information for
169 * the specified ADC module.
170 *
171 * @note The function will call the hal_adc_deinit function to De-initialize the HAL ADC.
172 *
173 * @retval ::HAL_OK: Operation is OK.
174 * @retval ::HAL_ERROR: Parameter error or operation not supported.
175 * @retval ::HAL_BUSY: Driver is busy.
176 * @retval ::HAL_TIMEOUT: Timeout occurred.
177 ****************************************************************************************
178 */
179 hal_status_t hal_adc_deinit_ext(adc_handle_t *p_adc);
180
181 /**
182 ****************************************************************************************
183 * @brief This function registers the callback function to the ROM area.
184 *
185 * @note This function needs to be called before hal_adc_init.
186 *
187 * @param[in] adc_callback: Pointer to callback structure function. @ref hal_adc_callback_t
188 ****************************************************************************************
189 */
190 void hal_adc_register_callback(hal_adc_callback_t *adc_callback);
191
192 #endif /* HAL_ADC_MODULE_ENABLED */
193
194
195 #ifdef HAL_AON_GPIO_MODULE_ENABLED
196
197 /**
198 ****************************************************************************************
199 * @brief Initialize the AON_GPIOx peripheral according to the specified parameters in the @ref aon_gpio_init_t.
200 *
201 * @note The function will call the hal_aon_gpio_init function to initialize the HAL AON GPIO.
202 *
203 * @param[in] p_aon_gpio_init: Pointer to an @ref aon_gpio_init_t structure that contains
204 * the configuration information for the specified AON_GPIO peripheral port.
205 ****************************************************************************************
206 */
207 void hal_aon_gpio_init_ext(aon_gpio_init_t *p_aon_gpio_init);
208
209 /**
210 ****************************************************************************************
211 * @brief De-initialize the AON_GPIOx peripheral registers to their default reset values.
212 *
213 * @note The function will call the hal_aon_gpio_deinit function to De-initialize the HAL AON GPIO.
214 *
215 * @param[in] aon_gpio_pin: Specifies the port bit to be written.
216 * This parameter can be a combination of the following values:
217 * @arg @ref AON_GPIO_PIN_0
218 * @arg @ref AON_GPIO_PIN_1
219 * @arg @ref AON_GPIO_PIN_2
220 * @arg @ref AON_GPIO_PIN_3
221 * @arg @ref AON_GPIO_PIN_4
222 * @arg @ref AON_GPIO_PIN_5
223 * @arg @ref AON_GPIO_PIN_ALL
224 ****************************************************************************************
225 */
226 void hal_aon_gpio_deinit_ext(uint32_t aon_gpio_pin);
227
228 /**
229 ****************************************************************************************
230 * @brief This function registers the callback function to the ROM area.
231 *
232 * @note This function needs to be called before hal_aon_gpio_init.
233 *
234 * @param[in] aon_gpio_callback: Pointer to callback structure function. @ref hal_aon_gpio_callback_t
235 ****************************************************************************************
236 */
237 void hal_aon_gpio_register_callback(hal_aon_gpio_callback_t *aon_gpio_callback);
238
239 #endif /* HAL_AON_GPIO_MODULE_ENABLED */
240
241
242 #ifdef HAL_AON_WDT_MODULE_ENABLED
243
244 /**
245 ****************************************************************************************
246 * @brief Initialize the AON_WDT according to the specified parameters in the wdt_init_t
247 * of associated handle.
248 *
249 * @param[in] p_aon_wdt: Pointer to a AON_WDT handle which contains the configuration
250 * information for the specified AON_WDT module.
251 *
252 * @note The function will call the hal_aon_wdt_init function to initialize the HAL AON WDT.
253 *
254 * @retval ::HAL_OK: Operation is OK.
255 * @retval ::HAL_ERROR: Parameter error or operation not supported.
256 * @retval ::HAL_BUSY: Driver is busy.
257 * @retval ::HAL_TIMEOUT: Timeout occurred.
258 ****************************************************************************************
259 */
260 hal_status_t hal_aon_wdt_init_ext(aon_wdt_handle_t *p_aon_wdt);
261
262 /**
263 ****************************************************************************************
264 * @brief De-initialize the AON_WDT peripheral.
265 *
266 * @param[in] p_aon_wdt: AON_WDT handle.
267 *
268 * @note The function will call the hal_aon_wdt_deinit function to De-initialize the HAL AON WDT.
269 *
270 * @retval ::HAL_OK: Operation is OK.
271 * @retval ::HAL_ERROR: Parameter error or operation not supported.
272 * @retval ::HAL_BUSY: Driver is busy.
273 * @retval ::HAL_TIMEOUT: Timeout occurred.
274 ****************************************************************************************
275 */
276 hal_status_t hal_aon_wdt_deinit_ext(aon_wdt_handle_t *p_aon_wdt);
277
278 /**
279 ****************************************************************************************
280 * @brief This function registers the callback function to the ROM area.
281 *
282 * @note This function needs to be called before hal_aon_wdt_init.
283 *
284 * @param[in] aon_wdt_callback: Pointer to callback structure function. @ref hal_aon_wdt_callback_t.
285 ****************************************************************************************
286 */
287 void hal_aon_wdt_register_callback(hal_aon_wdt_callback_t *aon_wdt_callback);
288
289 #endif /* HAL_AON_WDT_MODULE_ENABLED */
290
291
292 #ifdef HAL_CALENDAR_MODULE_ENABLED
293
294 /**
295 ****************************************************************************************
296 * @brief Initialize the CALENDAR according to the specified parameters in the
297 * calendar_init_t of associated handle.
298 *
299 * @param[in] p_calendar: Pointer to a CALENDAR handle which contains the configuration
300 * information for the specified CALENDAR module.
301 *
302 * @note The function will call the hal_calendar_init function to initialize the HAL CALENDER.
303 *
304 * @retval ::HAL_OK: Operation is OK.
305 * @retval ::HAL_ERROR: Parameter error or operation not supported.
306 * @retval ::HAL_BUSY: Driver is busy.
307 * @retval ::HAL_TIMEOUT: Timeout occurred.
308 ****************************************************************************************
309 */
310 hal_status_t hal_calendar_init_ext(calendar_handle_t *p_calendar);
311
312 /**
313 ****************************************************************************************
314 * @brief De-initialize the CALENDAR peripheral.
315 *
316 * @param[in] p_calendar: CALENDAR handle.
317 *
318 * @note The function will call the hal_calendar_deinit function to De-initialize the HAL CALENDER.
319 *
320 * @retval ::HAL_OK: Operation is OK.
321 * @retval ::HAL_ERROR: Parameter error or operation not supported.
322 * @retval ::HAL_BUSY: Driver is busy.
323 * @retval ::HAL_TIMEOUT: Timeout occurred.
324 ****************************************************************************************
325 */
326 hal_status_t hal_calendar_deinit_ext(calendar_handle_t *p_calendar);
327
328 /**
329 ****************************************************************************************
330 * @brief This function registers the callback function to the ROM area.
331 *
332 * @note This function needs to be called before hal_calendar_init.
333 *
334 * @param[in] calendar_callback: Pointer to callback structure function. @ref hal_calendar_callback_t
335 ****************************************************************************************
336 */
337 void hal_calendar_register_callback(hal_calendar_callback_t *calendar_callback);
338
339 #endif /* HAL_CALENDAR_MODULE_ENABLED */
340
341 #ifdef HAL_DUAL_TIMER_MODULE_ENABLED
342
343 /**
344 ****************************************************************************************
345 * @brief Initialize the DUAL TIMER according to the specified parameters
346 * in the dual_timer_init_t and initialize the associated handle.
347 *
348 * @param[in] p_dual_timer: Pointer to a DUAL_TIMER handle which contains the configuration information for the specified DUAL TIMER.
349 *
350 * @note The function will call the hal_dual_timer_base_init function to initialize the HAL DUAL TIMER.
351 *
352 * @retval ::HAL_OK: Operation is OK.
353 * @retval ::HAL_ERROR: Parameter error or operation not supported.
354 * @retval ::HAL_BUSY: Driver is busy.
355 * @retval ::HAL_TIMEOUT: Timeout occurred.
356 ****************************************************************************************
357 */
358 hal_status_t hal_dual_timer_base_init_ext(dual_timer_handle_t *p_dual_timer);
359
360 /**
361 ****************************************************************************************
362 * @brief De-initialize the DUAL TIMER peripheral.
363 *
364 * @param[in] p_dual_timer: Pointer to a DUAL_TIM handle which contains the configuration information for the specified DUAL TIMER.
365 *
366 * @note The function will call the hal_dual_timer_base_deinit function to De-initialize the HAL DUAL TIMER.
367 *
368 * @retval ::HAL_OK: Operation is OK.
369 * @retval ::HAL_ERROR: Parameter error or operation not supported.
370 * @retval ::HAL_BUSY: Driver is busy.
371 * @retval ::HAL_TIMEOUT: Timeout occurred.
372 ****************************************************************************************
373 */
374 hal_status_t hal_dual_timer_base_deinit_ext(dual_timer_handle_t *p_dual_timer);
375
376 /**
377 ****************************************************************************************
378 * @brief This function registers the callback function to the ROM area.
379 *
380 * @note This function needs to be called before hal_dual_timer_base_init.
381 *
382 * @param[in] dual_timer_callback: Pointer to callback structure function. @ref hal_dual_timer_callback_t
383 ****************************************************************************************
384 */
385 void hal_dual_timer_register_callback(hal_dual_timer_callback_t *dual_timer_callback);
386
387 #endif /* HAL_DUAL_TIMER_MODULE_ENABLED */
388
389
390 #ifdef HAL_GPIO_MODULE_ENABLED
391
392 /**
393 ****************************************************************************************
394 * @brief Initialize the GPIOx peripheral according to the specified parameters in the p_gpio_init.
395 *
396 * @note The function will call the hal_gpio_init function to initialize the HAL GPIO.
397 *
398 * @param[in] GPIOx: Where x can be (0, 1) to select the GPIO peripheral port
399 * @param[in] p_gpio_init: Pointer to a gpio_init_t structure that contains the configuration information
400 * for the specified GPIO peripheral port.
401 ****************************************************************************************
402 */
403 void hal_gpio_init_ext(gpio_regs_t *GPIOx, gpio_init_t *p_gpio_init);
404
405 /**
406 ****************************************************************************************
407 * @brief De-initialize the GPIOx peripheral registers to their default reset values.
408 *
409 * @note The function will call the hal_gpio_deinit function to De-initialize the HAL GPIO.
410 *
411 * @param[in] GPIOx: Where x can be (0, 1) to select the GPIO peripheral port for GR533x device
412 * @param[in] gpio_pin: Specifies the port bit to be written.
413 * This parameter can be a combination of the following values:
414 * @arg @ref GPIO_PIN_0
415 * @arg @ref GPIO_PIN_1
416 * @arg @ref GPIO_PIN_2
417 * @arg @ref GPIO_PIN_3
418 * @arg @ref GPIO_PIN_4
419 * @arg @ref GPIO_PIN_5
420 * @arg @ref GPIO_PIN_6
421 * @arg @ref GPIO_PIN_7
422 * @arg @ref GPIO_PIN_8
423 * @arg @ref GPIO_PIN_9
424 * @arg @ref GPIO_PIN_10
425 * @arg @ref GPIO_PIN_11
426 * @arg @ref GPIO_PIN_12
427 * @arg @ref GPIO_PIN_13
428 * @arg @ref GPIO_PIN_ALL
429 ****************************************************************************************
430 */
431 void hal_gpio_deinit_ext(gpio_regs_t *GPIOx, uint32_t gpio_pin);
432
433 /**
434 ****************************************************************************************
435 * @brief This function registers the callback function to the ROM area.
436 *
437 * @note This function needs to be called before hal_gpio_init.
438 *
439 * @param[in] gpio_callback: Pointer to callback structure function. @ref hal_gpio_callback_t
440 ****************************************************************************************
441 */
442 void hal_gpio_register_callback(hal_gpio_callback_t *gpio_callback);
443
444 #endif /* HAL_GPIO_MODULE_ENABLED */
445
446
447 #ifdef HAL_I2C_MODULE_ENABLED
448
449 /**
450 ****************************************************************************************
451 * @brief Initializes the I2C according to the specified parameters
452 * in the i2c_init_t and initialize the associated handle.
453 *
454 * @param[in] p_i2c: Pointer to an I2C handle which contains the configuration
455 * information for the specified I2C.
456 *
457 * @note The function will call the hal_i2c_init function to initialize the HAL I2C.
458 *
459 * @retval ::HAL_OK: Operation is OK.
460 * @retval ::HAL_ERROR: Parameter error or operation not supported.
461 * @retval ::HAL_BUSY: Driver is busy.
462 * @retval ::HAL_TIMEOUT: Timeout occurred.
463 ****************************************************************************************
464 */
465 hal_status_t hal_i2c_init_ext(i2c_handle_t *p_i2c);
466
467 /**
468 ****************************************************************************************
469 * @brief De-initialize the I2C peripheral.
470 *
471 * @param[in] p_i2c: Pointer to an I2C handle which contains the configuration information for the specified I2C.
472 *
473 * @note The function will call the hal_i2c_deinit function to De-initialize the HAL I2C.
474 *
475 * @retval ::HAL_OK: Operation is OK.
476 * @retval ::HAL_ERROR: Parameter error or operation not supported.
477 * @retval ::HAL_BUSY: Driver is busy.
478 * @retval ::HAL_TIMEOUT: Timeout occurred.
479 ****************************************************************************************
480 */
481 hal_status_t hal_i2c_deinit_ext(i2c_handle_t *p_i2c);
482
483 /**
484 ****************************************************************************************
485 * @brief This function registers the callback function to the ROM area.
486 *
487 * @note This function needs to be called before hal_i2c_init.
488 *
489 * @param[in] i2c_callback: Pointer to callback structure function. @ref hal_i2c_callback_t
490 ****************************************************************************************
491 */
492 void hal_i2c_register_callback(hal_i2c_callback_t *i2c_callback);
493
494 #endif /* HAL_I2C_MODULE_ENABLED */
495
496
497 #ifdef HAL_I2S_MODULE_ENABLED
498
499 /**
500 ****************************************************************************************
501 * @brief Initialize the I2S according to the specified parameters
502 * in the i2s_init_t and initialize the associated handle.
503 *
504 * @param[in] p_i2s: Pointer to an I2S handle which contains the configuration information for the specified I2S module.
505 *
506 * @note The function will call the hal_i2s_init function to initialize the HAL I2S.
507 *
508 * @retval ::HAL_OK: Operation is OK.
509 * @retval ::HAL_ERROR: Parameter error or operation not supported.
510 * @retval ::HAL_BUSY: Driver is busy.
511 * @retval ::HAL_TIMEOUT: Timeout occurred.
512 ****************************************************************************************
513 */
514 //hal_status_t hal_i2s_init_ext(i2s_handle_t *p_i2s);
515
516 /**
517 ****************************************************************************************
518 * @brief De-initialize the I2S peripheral.
519 *
520 * @param[in] p_i2s: Pointer to an I2S handle which contains the configuration information for the specified I2S module.
521 *
522 * @note The function will call the hal_i2s_deinit function to De-initialize the HAL I2S.
523 *
524 * @retval ::HAL_OK: Operation is OK.
525 * @retval ::HAL_ERROR: Parameter error or operation not supported.
526 * @retval ::HAL_BUSY: Driver is busy.
527 * @retval ::HAL_TIMEOUT: Timeout occurred.
528 ****************************************************************************************
529 */
530 //hal_status_t hal_i2s_deinit_ext(i2s_handle_t *p_i2s);
531
532 /**
533 ****************************************************************************************
534 * @brief This function registers the callback function to the ROM area.
535 *
536 * @note This function needs to be called before hal_i2s_init.
537 *
538 * @param[in] i2s_callback: Pointer to callback structure function. @ref i2s_callback_t
539 ****************************************************************************************
540 */
541 //void hal_i2s_register_callback(i2s_callback_t *i2s_callback);
542
543 #endif /* HAL_I2S_MODULE_ENABLED */
544
545
546 #ifdef HAL_MSIO_MODULE_ENABLED
547
548 /**
549 ****************************************************************************************
550 * @brief Initialize the MSIOx peripheral according to the specified parameters in the @ref msio_init_t.
551 *
552 * @note The function will call the hal_msio_init function to initialize the HAL MSIO.
553 *
554 * @param[in] MSIOx: MSIO peripheral port.
555 * @param[in] p_msio_init: Pointer to an @ref msio_init_t structure that contains
556 * the configuration information for the specified MSIO peripheral port.
557 ****************************************************************************************
558 */
559 void hal_msio_init_ext(msio_pad_t MSIOx, msio_init_t *p_msio_init);
560
561 /**
562 ****************************************************************************************
563 * @brief De-initialize the MSIOx peripheral registers to their default reset values.
564 *
565 * @note The function will call the hal_msio_deinit function to De-initialize the HAL MSIO.
566 *
567 * @param[in] MSIOx: MSIO peripheral port.
568 * @param[in] msio_pin: Specifies the port bit to be written.
569 * This parameter can be a combination of the following values:
570 * @arg @ref MSIO_PIN_0
571 * @arg @ref MSIO_PIN_1
572 * @arg @ref MSIO_PIN_2
573 * @arg @ref MSIO_PIN_3
574 * @arg @ref MSIO_PIN_4
575 * @arg @ref MSIO_PIN_ALL
576 ****************************************************************************************
577 */
578 void hal_msio_deinit_ext(msio_pad_t MSIOx, uint32_t msio_pin);
579
580 /**
581 ****************************************************************************************
582 * @brief This function registers the callback function to the ROM area.
583 *
584 * @note This function needs to be called before hal_msio_init.
585 *
586 * @param[in] msio_callback: Pointer to callback structure function. @ref hal_msio_callback_t
587 ****************************************************************************************
588 */
589 void hal_msio_register_callback(hal_msio_callback_t *msio_callback);
590
591 #endif /* HAL_MSIO_MODULE_ENABLED */
592
593
594 #ifdef HAL_PWM_MODULE_ENABLED
595
596 /**
597 ****************************************************************************************
598 * @brief Initialize the PWM mode according to the specified
599 * parameters in the pwm_init_t and initialize the associated handle.
600 *
601 * @param[in] p_pwm: Pointer to a PWM handle that contains the configuration information for the specified PWM module.
602 *
603 * @note The function will call the hal_pwm_init function to initialize the HAL PWM.
604 *
605 * @retval ::HAL_OK: Operation is OK.
606 * @retval ::HAL_ERROR: Parameter error or operation not supported.
607 * @retval ::HAL_BUSY: Driver is busy.
608 * @retval ::HAL_TIMEOUT: Timeout occurred.
609 ****************************************************************************************
610 */
611 hal_status_t hal_pwm_init_ext(pwm_handle_t *p_pwm);
612
613 /**
614 ****************************************************************************************
615 * @brief De-initialize the PWM peripheral.
616 *
617 * @param[in] p_pwm: Pointer to a PWM handle that contains the configuration information for the specified PWM module.
618 *
619 * @note The function will call the hal_pwm_deinit function to De-initialize the HAL PWM.
620 *
621 * @retval ::HAL_OK: Operation is OK.
622 * @retval ::HAL_ERROR: Parameter error or operation not supported.
623 * @retval ::HAL_BUSY: Driver is busy.
624 * @retval ::HAL_TIMEOUT: Timeout occurred.
625 ****************************************************************************************
626 */
627 hal_status_t hal_pwm_deinit_ext(pwm_handle_t *p_pwm);
628
629 /**
630 ****************************************************************************************
631 * @brief This function registers the callback function to the ROM area.
632 *
633 * @note This function needs to be called before hal_pwm_init.
634 *
635 * @param[in] pwm_callback: Pointer to callback structure function. @ref hal_pwm_callback_t
636 ****************************************************************************************
637 */
638 void hal_pwm_register_callback(hal_pwm_callback_t *pwm_callback);
639
640 #endif /* HAL_PWM_MODULE_ENABLED */
641
642
643 #ifdef HAL_PWR_MODULE_ENABLED
644
645 #ifdef HAL_SLEEP_TIMER_MODULE_ENABLED
646
647 /**
648 ****************************************************************************************
649 * @brief Configure the AON Sleep Timer mode, count and start used to wakeup MCU.
650 *
651 * @param[in] mode: Specifies the sleep timer mode.
652 * This parameter can be a combination of the following values:
653 * @arg @ref PWR_SLP_TIMER_MODE_NORMAL
654 * @arg @ref PWR_SLP_TIMER_MODE_SINGLE
655 * @arg @ref PWR_SLP_TIMER_MODE_RELOAD
656 * @param[in] value: Count value of the AON Sleep Timer.
657 *
658 * @note The function will call the hal_sleep_timer_config_and_start function to initialize the HAL SLEEP TIMER.
659 *
660 * @retval ::HAL_OK: Operation is OK.
661 * @retval ::HAL_BUSY: Driver is busy.
662 * @note The sleep clock of AON Timer is 32 KHz.
663 ****************************************************************************************
664 */
665 hal_status_t hal_pwr_config_timer_wakeup_ext(uint8_t mode, uint32_t value);
666
667 /**
668 ****************************************************************************************
669 * @brief This function registers the callback function to the ROM area.
670 *
671 * @param[in] pwr_slp_elapsed_hander: Pointer to callback structure function. @ref pwr_slp_elapsed_handler_t
672 ****************************************************************************************
673 */
674 void hal_pwr_register_timer_elaspsed_handler(pwr_slp_elapsed_handler_t pwr_slp_elapsed_hander);
675
676 #endif /* HAL_SLEEP_TIMER_MODULE_ENABLED */
677
678 #endif /* HAL_PWR_MODULE_ENABLED */
679
680
681 #ifdef HAL_SPI_MODULE_ENABLED
682
683 /**
684 ****************************************************************************************
685 * @brief Initialize the SPI according to the specified parameters
686 * in the spi_init_t and initialize the associated handle.
687 *
688 * @param[in] p_spi: Pointer to an SPI handle which contains the configuration information for the specified SPI module.
689 *
690 * @note The function will call the hal_spi_init function to initialize the HAL SPI.
691 *
692 * @retval ::HAL_OK: Operation is OK.
693 * @retval ::HAL_ERROR: Parameter error or operation not supported.
694 * @retval ::HAL_BUSY: Driver is busy.
695 * @retval ::HAL_TIMEOUT: Timeout occurred.
696 ****************************************************************************************
697 */
698 hal_status_t hal_spi_init_ext(spi_handle_t *p_spi);
699
700 /**
701 ****************************************************************************************
702 * @brief De-initialize the SPI peripheral.
703 *
704 * @param[in] p_spi: Pointer to an SPI handle which contains the configuration information for the specified SPI module.
705 *
706 * @note The function will call the hal_spi_deinit function to De-initialize the HAL SPI.
707 *
708 * @retval ::HAL_OK: Operation is OK.
709 * @retval ::HAL_ERROR: Parameter error or operation not supported.
710 * @retval ::HAL_BUSY: Driver is busy.
711 * @retval ::HAL_TIMEOUT: Timeout occurred.
712 ****************************************************************************************
713 */
714 hal_status_t hal_spi_deinit_ext(spi_handle_t *p_spi);
715
716 /**
717 ****************************************************************************************
718 * @brief This function registers the callback function to the ROM area.
719 *
720 * @note This function needs to be called before hal_spi_init.
721 *
722 * @param[in] spi_callback: Pointer to callback structure function. @ref hal_spi_callback_t
723 ****************************************************************************************
724 */
725 void hal_spi_register_callback(hal_spi_callback_t *spi_callback);
726
727 #endif /* HAL_SPI_MODULE_ENABLED */
728
729
730 #ifdef HAL_TIMER_MODULE_ENABLED
731
732 /**
733 ****************************************************************************************
734 * @brief Initialize the TIMER according to the specified parameters
735 * in the timer_init_t and initialize the associated handle.
736 *
737 * @param[in] p_timer: Pointer to a TIMER handle which contains the configuration
738 * information for the specified TIMER module.
739 *
740 * @note The function will call the hal_timer_base_init function to initialize the HAL TIM.
741 *
742 * @retval ::HAL_OK: Operation is OK.
743 * @retval ::HAL_ERROR: Parameter error or operation not supported.
744 * @retval ::HAL_BUSY: Driver is busy.
745 * @retval ::HAL_TIMEOUT: Timeout occurred.
746 ****************************************************************************************
747 */
748 hal_status_t hal_timer_base_init_ext(timer_handle_t *p_timer);
749
750 /**
751 ****************************************************************************************
752 * @brief De-initialize the TIMER peripheral.
753 *
754 * @param[in] p_timer: Pointer to a TIMER handle which contains the configuration
755 * information for the specified TIMER module.
756 *
757 * @note The function will call the hal_timer_base_deinit function to De-initialize the HAL TIM.
758 *
759 * @retval ::HAL_OK: Operation is OK.
760 * @retval ::HAL_ERROR: Parameter error or operation not supported.
761 * @retval ::HAL_BUSY: Driver is busy.
762 * @retval ::HAL_TIMEOUT: Timeout occurred.
763 ****************************************************************************************
764 */
765 hal_status_t hal_timer_base_deinit_ext(timer_handle_t *p_timer);
766
767 /**
768 ****************************************************************************************
769 * @brief This function registers the callback function to the ROM area.
770 *
771 * @note This function needs to be called before hal_timer_base_init.
772 *
773 * @param[in] timer_base_callback: Pointer to callback structure function. @ref hal_timer_base_callback_t
774 ****************************************************************************************
775 */
776 void hal_timer_register_callback(hal_timer_base_callback_t *timer_base_callback);
777
778 #endif /* HAL_TIMER_MODULE_ENABLED */
779
780
781 #ifdef HAL_UART_MODULE_ENABLED
782
783 /**
784 ****************************************************************************************
785 * @brief Initialize the UART according to the specified
786 * parameters in the uart_init_t and initialize the associated handle.
787 *
788 * @param[in] p_uart: Pointer to a UART handle which contains the configuration
789 * information for the specified UART module.
790 *
791 * @note The function will call the hal_uart_init function to initialize the HAL UART.
792 *
793 * @retval ::HAL_OK: Operation is OK.
794 * @retval ::HAL_ERROR: Parameter error or operation not supported.
795 * @retval ::HAL_BUSY: Driver is busy.
796 * @retval ::HAL_TIMEOUT: Timeout occurred.
797 ****************************************************************************************
798 */
799 hal_status_t hal_uart_init_ext(uart_handle_t *p_uart);
800
801 /**
802 ****************************************************************************************
803 * @brief De-initialize the UART peripheral.
804 *
805 * @param[in] p_uart: Pointer to a UART handle which contains the configuration
806 * information for the specified UART module.
807 *
808 * @note The function will call the hal_uart_deinit function to De-initialize the HAL UART.
809 *
810 * @retval ::HAL_OK: Operation is OK.
811 * @retval ::HAL_ERROR: Parameter error or operation not supported.
812 * @retval ::HAL_BUSY: Driver is busy.
813 * @retval ::HAL_TIMEOUT: Timeout occurred.
814 ****************************************************************************************
815 */
816 hal_status_t hal_uart_deinit_ext (uart_handle_t *p_uart);
817
818 /**
819 ****************************************************************************************
820 * @brief This function registers the callback function to the ROM area.
821 *
822 * @note This function needs to be called before hal_uart_init.
823 *
824 * @param[in] uart_callback: Pointer to callback structure function. @ref hal_uart_callback_t
825 ****************************************************************************************
826 */
827 void hal_uart_register_callback(hal_uart_callback_t *uart_callback);
828
829 #endif /* HAL_UART_MODULE_ENABLED */
830
831
832 #ifdef HAL_WDT_MODULE_ENABLED
833
834 /**
835 ****************************************************************************************
836 * @brief Initialize the WDT according to the specified
837 * parameters in the wdt_init_t of associated handle.
838 *
839 * @param[in] p_wdt: Pointer to a WDT handle which contains the configuration
840 * information for the specified WDT module.
841 *
842 * @note The function will call the hal_wdt_init function to initialize the HAL WDT.
843 *
844 * @retval ::HAL_OK: Operation is OK.
845 * @retval ::HAL_ERROR: Parameter error or operation not supported.
846 * @retval ::HAL_BUSY: Driver is busy.
847 * @retval ::HAL_TIMEOUT: Timeout occurred.
848 ****************************************************************************************
849 */
850 hal_status_t hal_wdt_init_ext(wdt_handle_t *p_wdt);
851
852 /**
853 ****************************************************************************************
854 * @brief De-initialize the WDT peripheral.
855 *
856 * @param[in] p_wdt: WDT handle.
857 *
858 * @note The function will call the hal_wdt_deinit function to De-initialize the HAL WDT.
859 *
860 * @retval ::HAL_OK: Operation is OK.
861 * @retval ::HAL_ERROR: Parameter error or operation not supported.
862 * @retval ::HAL_BUSY: Driver is busy.
863 * @retval ::HAL_TIMEOUT: Timeout occurred.
864 ****************************************************************************************
865 */
866 hal_status_t hal_wdt_deinit_ext(wdt_handle_t *p_wdt);
867
868 /**
869 ****************************************************************************************
870 * @brief This function registers the callback function to the ROM area.
871 *
872 * @note This function needs to be called before hal_wdt_init.
873 *
874 * @param[in] wdt_callback: Pointer to callback structure function. @ref hal_wdt_callback_t
875 ****************************************************************************************
876 */
877 void hal_wdt_register_callback(hal_wdt_callback_t *wdt_callback);
878
879 #endif /* HAL_WDT_MODULE_ENABLED */
880
881
882 #ifdef HAL_XQSPI_MODULE_ENABLED
883
884 /**
885 ****************************************************************************************
886 * @brief Initialize the XQSPI according to the specified parameters
887 * in the xqspi_init_t and initialize the associated handle.
888 *
889 * @param[in] p_xqspi: Pointer to an XQSPI handle which contains the configuration information for the specified XQSPI module.
890 *
891 * @note The function will call the hal_xqspi_init function to initialize the HAL XQSPI.
892 *
893 * @retval ::HAL_OK: Operation is OK.
894 * @retval ::HAL_ERROR: Parameter error or operation not supported.
895 * @retval ::HAL_BUSY: Driver is busy.
896 * @retval ::HAL_TIMEOUT: Timeout occurred.
897 ****************************************************************************************
898 */
899 hal_status_t hal_xqspi_init_ext(xqspi_handle_t *p_xqspi);
900
901 /**
902 ****************************************************************************************
903 * @brief De-initialize the XQSPI peripheral.
904 *
905 * @param[in] p_xqspi: Pointer to an XQSPI handle which contains the configuration information for the specified XQSPI module.
906 *
907 * @note The function will call the hal_xqspi_deinit function to De-initialize the HAL XQSPI.
908 *
909 * @retval ::HAL_OK: Operation is OK.
910 * @retval ::HAL_ERROR: Parameter error or operation not supported.
911 * @retval ::HAL_BUSY: Driver is busy.
912 * @retval ::HAL_TIMEOUT: Timeout occurred.
913 ****************************************************************************************
914 */
915 hal_status_t hal_xqspi_deinit_ext(xqspi_handle_t *p_xqspi);
916
917 /**
918 ****************************************************************************************
919 * @brief This function registers the callback function to the ROM area.
920 *
921 * @note This function needs to be called before hal_wdt_init.
922 *
923 * @param[in] xqspi_callback: Pointer to callback structure function. @ref hal_xqspi_callback_t
924 ****************************************************************************************
925 */
926 void hal_xqspi_register_callback(hal_xqspi_callback_t *xqspi_callback);
927
928 #endif /* HAL_XQSPI_MODULE_ENABLED */
929
930 #ifdef HAL_EFUSE_MODULE_ENABLED
931
932 /**
933 ****************************************************************************************
934 * @brief Initialize the eFuse according to the specified parameters
935 * in the efuse_init_t and initialize the associated handle.
936 *
937 * @param[in] p_efuse: Pointer to a eFuse handle which contains the configuration information for the specified eFuse module.
938 *
939 * @note The function will call the hal_efuse_init function to initialize the HAL EFUSE.
940 *
941 * @retval ::HAL_OK: Operation is OK.
942 * @retval ::HAL_ERROR: Parameter error or operation not supported.
943 * @retval ::HAL_BUSY: Driver is busy.
944 * @retval ::HAL_TIMEOUT: Timeout occurred.
945 ****************************************************************************************
946 */
947 hal_status_t hal_efuse_init_ext(efuse_handle_t *p_efuse);
948
949 /**
950 ****************************************************************************************
951 * @brief De-initialize the eFuse peripheral.
952 *
953 * @param[in] p_efuse: Pointer to a eFuse handle which contains the configuration information for the specified eFuse module.
954 *
955 * @note The function will call the hal_efuse_deinit function to De-initialize the HAL EFUSE.
956 *
957 * @retval ::HAL_OK: Operation is OK.
958 * @retval ::HAL_ERROR: Parameter error or operation not supported.
959 * @retval ::HAL_BUSY: Driver is busy.
960 * @retval ::HAL_TIMEOUT: Timeout occurred.
961 ****************************************************************************************
962 */
963 hal_status_t hal_efuse_deinit_ext(efuse_handle_t *p_efuse);
964
965 /**
966 ****************************************************************************************
967 * @brief This function registers the callback function to the ROM area.
968 *
969 * @note This function needs to be called before hal_efuse_init.
970 *
971 * @param[in] efuse_callback: Pointer to callback structure function. @ref hal_efuse_callback_t
972 ****************************************************************************************
973 */
974 void hal_efuse_register_callback(hal_efuse_callback_t *efuse_callback);
975
976 #endif /* HAL_EFUSE_MODULE_ENABLED */
977
978
979 #ifdef HAL_RNG_MODULE_ENABLED
980
981 /**
982 ****************************************************************************************
983 * @brief Initialize the RNG according to the specified
984 * parameters in the rng_init_t of associated handle.
985 *
986 * @param[in] p_rng: Pointer to a RNG handle which contains the configuration
987 * information for the specified RNG module.
988 *
989 * @note The function will call the hal_rng_init function to initialize the HAL RNG.
990 *
991 * @retval ::HAL_OK: Operation is OK.
992 * @retval ::HAL_ERROR: Parameter error or operation not supported.
993 * @retval ::HAL_BUSY: Driver is busy.
994 * @retval ::HAL_TIMEOUT: Timeout occurred.
995 ****************************************************************************************
996 */
997 hal_status_t hal_rng_init_ext(rng_handle_t *p_rng);
998
999 /**
1000 ****************************************************************************************
1001 * @brief De-initialize the RNG peripheral.
1002 *
1003 * @param[in] p_rng: RNG handle.
1004 *
1005 * @note The function will call the hal_rng_deinit function to De-initialize the HAL RNG.
1006 *
1007 * @retval ::HAL_OK: Operation is OK.
1008 * @retval ::HAL_ERROR: Parameter error or operation not supported.
1009 * @retval ::HAL_BUSY: Driver is busy.
1010 * @retval ::HAL_TIMEOUT: Timeout occurred.
1011 ****************************************************************************************
1012 */
1013 hal_status_t hal_rng_deinit_ext(rng_handle_t *p_rng);
1014
1015 /**
1016 ****************************************************************************************
1017 * @brief This function registers the callback function to the ROM area.
1018 *
1019 * @note This function needs to be called before hal_rng_init.
1020 *
1021 * @param[in] rng_callback: Pointer to callback structure function. @ref hal_rng_callback_t
1022 ****************************************************************************************
1023 */
1024 void hal_rng_register_callback(hal_rng_callback_t *rng_callback);
1025
1026 #endif /* HAL_RNG_MODULE_ENABLED */
1027
1028
1029 #ifdef HAL_COMP_MODULE_ENABLED
1030
1031 /**
1032 ****************************************************************************************
1033 * @brief Initialize the COMP according to the specified parameters
1034 * in the comp_init_t and initialize the associated handle.
1035 *
1036 * @param[in] p_comp: Pointer to a COMP handle which contains the configuration information for
1037 * the specified COMP module.
1038 *
1039 * @note The function will call the hal_comp_init function to initialize the HAL COMP.
1040 *
1041 * @retval ::HAL_OK: Operation is OK.
1042 * @retval ::HAL_ERROR: Parameter error or operation not supported.
1043 * @retval ::HAL_BUSY: Driver is busy.
1044 * @retval ::HAL_TIMEOUT: Timeout occurred.
1045 ****************************************************************************************
1046 */
1047 hal_status_t hal_comp_init_ext(comp_handle_t *p_comp);
1048
1049 /**
1050 ****************************************************************************************
1051 * @brief De-initialize the COMP peripheral.
1052 *
1053 * @param[in] p_comp: Pointer to a COMP handle which contains the configuration information for
1054 * the specified COMP module.
1055 *
1056 * @note The function will call the hal_comp_deinit function to De-initialize the HAL COMP.
1057 *
1058 * @retval ::HAL_OK: Operation is OK.
1059 * @retval ::HAL_ERROR: Parameter error or operation not supported.
1060 * @retval ::HAL_BUSY: Driver is busy.
1061 * @retval ::HAL_TIMEOUT: Timeout occurred.
1062 ****************************************************************************************
1063 */
1064 hal_status_t hal_comp_deinit_ext(comp_handle_t *p_comp);
1065
1066 /**
1067 ****************************************************************************************
1068 * @brief This function registers the callback function to the ROM area.
1069 *
1070 * @note This function needs to be called before hal_comp_init.
1071 *
1072 * @param[in] comp_callback: Pointer to callback structure function. @ref hal_comp_callback_t
1073 ****************************************************************************************
1074 */
1075 void hal_comp_register_callback(hal_comp_callback_t *comp_callback);
1076
1077 #endif /* HAL_COMP_MODULE_ENABLED */
1078
1079 /** @} */
1080
1081 #ifdef __cplusplus
1082 }
1083 #endif
1084
1085 #endif /* __GR533x_HAL_BR_H__ */
1086
1087 /** @} */
1088
1089 /** @} */
1090
1091 /** @} */
hal_i2c_init_ext
hal_status_t hal_i2c_init_ext(i2c_handle_t *p_i2c)
Initializes the I2C according to the specified parameters in the i2c_init_t and initialize the associ...
_hal_callback::msp_deinit
void(* msp_deinit)(void)
Definition: gr533x_hal_br.h:89
hal_pwr_register_timer_elaspsed_handler
void hal_pwr_register_timer_elaspsed_handler(pwr_slp_elapsed_handler_t pwr_slp_elapsed_hander)
This function registers the callback function to the ROM area.
hal_comp_init_ext
hal_status_t hal_comp_init_ext(comp_handle_t *p_comp)
Initialize the COMP according to the specified parameters in the comp_init_t and initialize the assoc...
_spi_handle
SPI handle Structure definition.
Definition: gr533x_hal_spi.h:191
hal_aon_wdt_init_ext
hal_status_t hal_aon_wdt_init_ext(aon_wdt_handle_t *p_aon_wdt)
Initialize the AON_WDT according to the specified parameters in the wdt_init_t of associated handle.
_hal_aon_wdt_callback
HAL_AON_WDT Callback function definition.
Definition: gr533x_hal_aon_wdt.h:124
hal_calendar_deinit_ext
hal_status_t hal_calendar_deinit_ext(calendar_handle_t *p_calendar)
De-initialize the CALENDAR peripheral.
_hal_dual_timer_callback
HAL_DUAL_TIMER Callback function definition.
Definition: gr533x_hal_dual_tim.h:193
_efuse_handle
eFuse handle Structure definition
Definition: gr533x_hal_efuse.h:104
hal_efuse_deinit_ext
hal_status_t hal_efuse_deinit_ext(efuse_handle_t *p_efuse)
De-initialize the eFuse peripheral.
_hal_pwm_callback
HAL_PWM Callback function definition.
Definition: gr533x_hal_pwm.h:280
hal_msio_deinit_ext
void hal_msio_deinit_ext(msio_pad_t MSIOx, uint32_t msio_pin)
De-initialize the MSIOx peripheral registers to their default reset values.
_hal_msio_callback
HAL_MSIO Callback function definition.
Definition: gr533x_hal_msio.h:77
hal_efuse_init_ext
hal_status_t hal_efuse_init_ext(efuse_handle_t *p_efuse)
Initialize the eFuse according to the specified parameters in the efuse_init_t and initialize the ass...
hal_gpio_deinit_ext
void hal_gpio_deinit_ext(gpio_regs_t *GPIOx, uint32_t gpio_pin)
De-initialize the GPIOx peripheral registers to their default reset values.
_hal_comp_callback
HAL COMP Callback function definition.
Definition: gr533x_hal_comp.h:137
_msio_init
MSIO init structure definition.
Definition: gr533x_hal_msio.h:108
_hal_wdt_callback
HAL_WDT Callback function definition.
Definition: gr533x_hal_wdt.h:125
hal_rng_register_callback
void hal_rng_register_callback(hal_rng_callback_t *rng_callback)
This function registers the callback function to the ROM area.
hal_timer_register_callback
void hal_timer_register_callback(hal_timer_base_callback_t *timer_base_callback)
This function registers the callback function to the ROM area.
hal_msio_init_ext
void hal_msio_init_ext(msio_pad_t MSIOx, msio_init_t *p_msio_init)
Initialize the MSIOx peripheral according to the specified parameters in the msio_init_t.
_i2c_handle
I2C handle Structure definition.
Definition: gr533x_hal_i2c.h:187
hal_spi_deinit_ext
hal_status_t hal_spi_deinit_ext(spi_handle_t *p_spi)
De-initialize the SPI peripheral.
hal_xqspi_init_ext
hal_status_t hal_xqspi_init_ext(xqspi_handle_t *p_xqspi)
Initialize the XQSPI according to the specified parameters in the xqspi_init_t and initialize the ass...
hal_aon_wdt_register_callback
void hal_aon_wdt_register_callback(hal_aon_wdt_callback_t *aon_wdt_callback)
This function registers the callback function to the ROM area.
_hal_rng_callback
HAL_RNG Callback function definition.
Definition: gr533x_hal_rng.h:156
hal_spi_init_ext
hal_status_t hal_spi_init_ext(spi_handle_t *p_spi)
Initialize the SPI according to the specified parameters in the spi_init_t and initialize the associa...
_hal_gpio_callback
HAL_GPIO Callback function definition.
Definition: gr533x_hal_gpio.h:77
_calendar_handle
CALENDAR handle Structure definition.
Definition: gr533x_hal_calendar.h:132
hal_pwm_register_callback
void hal_pwm_register_callback(hal_pwm_callback_t *pwm_callback)
This function registers the callback function to the ROM area.
_hal_i2c_callback
HAL_I2C Callback function definition.
Definition: gr533x_hal_i2c.h:239
_hal_timer_base_callback
HAL_TIMER Callback function definition.
Definition: gr533x_hal_tim.h:203
hal_comp_deinit_ext
hal_status_t hal_comp_deinit_ext(comp_handle_t *p_comp)
De-initialize the COMP peripheral.
_comp_handle
COMP handle Structure definition.
Definition: gr533x_hal_comp.h:109
hal_uart_register_callback
void hal_uart_register_callback(hal_uart_callback_t *uart_callback)
This function registers the callback function to the ROM area.
_uart_handle
UART handle Structure definition.
Definition: gr533x_hal_uart.h:154
hal_deinit_ext
hal_status_t hal_deinit_ext(void)
This function de-initializes common part of the HAL and stops the source of time base.
_dual_timer_handle
DUAL_TIMER handle Structure definition.
Definition: gr533x_hal_dual_tim.h:164
hal_aon_wdt_deinit_ext
hal_status_t hal_aon_wdt_deinit_ext(aon_wdt_handle_t *p_aon_wdt)
De-initialize the AON_WDT peripheral.
hal_calendar_init_ext
hal_status_t hal_calendar_init_ext(calendar_handle_t *p_calendar)
Initialize the CALENDAR according to the specified parameters in the calendar_init_t of associated ha...
hal_xqspi_deinit_ext
hal_status_t hal_xqspi_deinit_ext(xqspi_handle_t *p_xqspi)
De-initialize the XQSPI peripheral.
hal_rng_init_ext
hal_status_t hal_rng_init_ext(rng_handle_t *p_rng)
Initialize the RNG according to the specified parameters in the rng_init_t of associated handle.
hal_dual_timer_register_callback
void hal_dual_timer_register_callback(hal_dual_timer_callback_t *dual_timer_callback)
This function registers the callback function to the ROM area.
hal_adc_init_ext
hal_status_t hal_adc_init_ext(adc_handle_t *p_adc)
Initialize the ADC according to the specified parameters in the adc_init_t and initialize the associa...
hal_pwr_config_timer_wakeup_ext
hal_status_t hal_pwr_config_timer_wakeup_ext(uint8_t mode, uint32_t value)
Configure the AON Sleep Timer mode, count and start used to wakeup MCU.
hal_adc_register_callback
void hal_adc_register_callback(hal_adc_callback_t *adc_callback)
This function registers the callback function to the ROM area.
_hal_xqspi_callback
HAL_XQSPI Callback function definition.
Definition: gr533x_hal_xqspi.h:219
_hal_uart_callback
HAL_UART Callback function definition.
Definition: gr533x_hal_uart.h:208
hal_timer_base_deinit_ext
hal_status_t hal_timer_base_deinit_ext(timer_handle_t *p_timer)
De-initialize the TIMER peripheral.
hal_callback_t
struct _hal_callback hal_callback_t
HAL_HAL Callback function definition.
hal_uart_init_ext
hal_status_t hal_uart_init_ext(uart_handle_t *p_uart)
Initialize the UART according to the specified parameters in the uart_init_t and initialize the assoc...
pwr_slp_elapsed_handler_t
void(* pwr_slp_elapsed_handler_t)(void)
PWR Sleep Timer Elapsed callback.
Definition: gr533x_hal_sleep_timer.h:75
_xqspi_handle_t
XQSPI handle Structure definition.
Definition: gr533x_hal_xqspi.h:139
hal_register_callback
void hal_register_callback(hal_callback_t *hal_callback)
This function registers the callback function to the ROM area.
_hal_efuse_callback
HAL_EFUSE Callback function definition.
Definition: gr533x_hal_efuse.h:130
_hal_aon_gpio_callback
HAL AON_GPIO Callback function definition.
Definition: gr533x_hal_aon_gpio.h:124
hal_gpio_register_callback
void hal_gpio_register_callback(hal_gpio_callback_t *gpio_callback)
This function registers the callback function to the ROM area.
hal_aon_gpio_register_callback
void hal_aon_gpio_register_callback(hal_aon_gpio_callback_t *aon_gpio_callback)
This function registers the callback function to the ROM area.
_rng_handle
RNG handle Structure definition.
Definition: gr533x_hal_rng.h:125
hal_adc_deinit_ext
hal_status_t hal_adc_deinit_ext(adc_handle_t *p_adc)
De-initialize the ADC peripheral.
pwm_handle_t
PWM handle Structure definition.
Definition: gr533x_hal_pwm.h:245
hal_comp_register_callback
void hal_comp_register_callback(hal_comp_callback_t *comp_callback)
This function registers the callback function to the ROM area.
hal_pwm_init_ext
hal_status_t hal_pwm_init_ext(pwm_handle_t *p_pwm)
Initialize the PWM mode according to the specified parameters in the pwm_init_t and initialize the as...
hal_aon_gpio_deinit_ext
void hal_aon_gpio_deinit_ext(uint32_t aon_gpio_pin)
De-initialize the AON_GPIOx peripheral registers to their default reset values.
_gpio_init
GPIO init structure definition.
Definition: gr533x_hal_gpio.h:109
hal_dual_timer_base_deinit_ext
hal_status_t hal_dual_timer_base_deinit_ext(dual_timer_handle_t *p_dual_timer)
De-initialize the DUAL TIMER peripheral.
_adc_handle
ADC handle Structure definition.
Definition: gr533x_hal_adc.h:111
hal_calendar_register_callback
void hal_calendar_register_callback(hal_calendar_callback_t *calendar_callback)
This function registers the callback function to the ROM area.
hal_msio_register_callback
void hal_msio_register_callback(hal_msio_callback_t *msio_callback)
This function registers the callback function to the ROM area.
hal_spi_register_callback
void hal_spi_register_callback(hal_spi_callback_t *spi_callback)
This function registers the callback function to the ROM area.
hal_status_t
hal_status_t
HAL Status structures definition.
Definition: gr533x_hal_def.h:70
_hal_callback
HAL_HAL Callback function definition.
Definition: gr533x_hal_br.h:87
_wdt_handle
WDT handle Structure definition.
Definition: gr533x_hal_wdt.h:99
hal_pwm_deinit_ext
hal_status_t hal_pwm_deinit_ext(pwm_handle_t *p_pwm)
De-initialize the PWM peripheral.
hal_i2c_register_callback
void hal_i2c_register_callback(hal_i2c_callback_t *i2c_callback)
This function registers the callback function to the ROM area.
_timer_handle
TIMER handle Structure definition.
Definition: gr533x_hal_tim.h:176
_hal_callback::systick_callback
void(* systick_callback)(void)
Definition: gr533x_hal_br.h:90
hal_rng_deinit_ext
hal_status_t hal_rng_deinit_ext(rng_handle_t *p_rng)
De-initialize the RNG peripheral.
_hal_calendar_callback
HAL_CALENDAR Callback function definition.
Definition: gr533x_hal_calendar.h:164
_hal_callback::msp_init
void(* msp_init)(void)
Definition: gr533x_hal_br.h:88
hal_i2c_deinit_ext
hal_status_t hal_i2c_deinit_ext(i2c_handle_t *p_i2c)
De-initialize the I2C peripheral.
hal_wdt_init_ext
hal_status_t hal_wdt_init_ext(wdt_handle_t *p_wdt)
Initialize the WDT according to the specified parameters in the wdt_init_t of associated handle.
gr533x_hal.h
This file contains all the functions prototypes for the HAL module driver.
_aon_wdt_handle
AON_WDT handle Structure definition.
Definition: gr533x_hal_aon_wdt.h:99
hal_dual_timer_base_init_ext
hal_status_t hal_dual_timer_base_init_ext(dual_timer_handle_t *p_dual_timer)
Initialize the DUAL TIMER according to the specified parameters in the dual_timer_init_t and initiali...
hal_timer_base_init_ext
hal_status_t hal_timer_base_init_ext(timer_handle_t *p_timer)
Initialize the TIMER according to the specified parameters in the timer_init_t and initialize the ass...
hal_wdt_register_callback
void hal_wdt_register_callback(hal_wdt_callback_t *wdt_callback)
This function registers the callback function to the ROM area.
_hal_spi_callback
HAL_SPI Callback function definition.
Definition: gr533x_hal_spi.h:247
hal_uart_deinit_ext
hal_status_t hal_uart_deinit_ext(uart_handle_t *p_uart)
De-initialize the UART peripheral.
hal_aon_gpio_init_ext
void hal_aon_gpio_init_ext(aon_gpio_init_t *p_aon_gpio_init)
Initialize the AON_GPIOx peripheral according to the specified parameters in the aon_gpio_init_t.
_aon_gpio_init
AON_GPIO init structure definition.
Definition: gr533x_hal_aon_gpio.h:87
hal_gpio_init_ext
void hal_gpio_init_ext(gpio_regs_t *GPIOx, gpio_init_t *p_gpio_init)
Initialize the GPIOx peripheral according to the specified parameters in the p_gpio_init.
hal_init_ext
hal_status_t hal_init_ext(void)
This function configures time base source, NVIC and Low level hardware.
hal_wdt_deinit_ext
hal_status_t hal_wdt_deinit_ext(wdt_handle_t *p_wdt)
De-initialize the WDT peripheral.
hal_xqspi_register_callback
void hal_xqspi_register_callback(hal_xqspi_callback_t *xqspi_callback)
This function registers the callback function to the ROM area.
hal_efuse_register_callback
void hal_efuse_register_callback(hal_efuse_callback_t *efuse_callback)
This function registers the callback function to the ROM area.
_hal_adc_callback
HAL ADC Callback function definition.
Definition: gr533x_hal_adc.h:147