通用API
通用API是一系列对GR551x系列芯片提供一致操作的通用接口。下文将分别介绍HAL通用API和LL通用API的类别。
HAL通用API
根据接口的作用,HAL驱动通用API分为:
- 初始化类:用于初始化/反初始化外设及该外设使用的公用系统资源,如GPIO引脚上下拉及功能复用、NVIC(Nested Vectored Interrupt Controller)中断使能、DMA通道初始化等,例如:hal_uart_init()。
- IO操作类:用于串行接口的数据收发功能,例如:hal_uart_transmit()。
- 中断处理及回调函数类:用于外设各个类型的中断处理及回调函数的调用,例如:hal_uart_irq_handler()、hal_uart_tx_cplt_callback()。
- 控制类:用于设置外设驱动相应功能的参数,例如:hal_spi_set_tx_fifo_threshold()。
- 状态及错误类:用于获取HAL驱动的运行状态及错误码,例如:hal_i2c_get_state()。
LL通用API
根据接口的作用,LL驱动通用API分为:
- 初始化类:用于初始化/反初始化外设,例如:ll_pwm_init()。
- 功能使能类:用于启用/禁用外设的特定功能,例如:ll_dma_enable_channel()。
- 参数设置类:用于设置外设相应功能的参数,例如:ll_dma_set_data_transfer_direction()。
- 标志与状态类:用于判断外设寄存器的状态及标志,例如:ll_i2c_is_active_flag_stop_det()。
- 中断控制类:用于启用/禁用指定类型的中断,例如:ll_i2c_enable_it_stop_det()。
- DMA控制类:用于启用/禁用外设的DMA请求,例如:ll_i2c_enable_dma_req_tx()。