文章目录
- 1. SDK中的函数
- 2. API函数的释义
1. SDK中的函数
在使用SDK的非抽象驱动函数时,函数的定义与声明在文件adc_driver.c和adc_driver.h中,一共有25个函数,由于占据篇幅较大,此处不再贴出。
这里说明一下,SDK中关于ADC的配置还有一种PAL库函数,它类似于STM32的HAL库函数,但是实话实说,NXP做的没有STM32完善,并不是所有的外设都可以使用PAL来驱动,这就造成在配置时,有的外设需要使用DRIVER,有的使用PAL。显得有点混乱,这点有点差强人意,笔者在本分栏中全部使用DRIVER,在后续考虑加入PAL部分。
2. API函数的释义
void ADC_DRV_InitConverterStruct(adc_converter_config_t * const config)
此函数将 adc_converter_config_t 结构的成员初始化为默认值(参考手册重置)。在使用此结构通过 ADC_DRV_ConfigConverter() 配置转换器之前,应在此结构上调用此函数,否则所有成员都必须由用户写入(初始化)。此函数确保所有成员都以安全值写入,因此用户可以仅修改所需的成员。
void ADC_DRV_ConfigConverter(const uint32_t instance,const adc_converter_config_t * const config)
通过形参配置ADC转换器,形参均由配置工具生成。
void ADC_DRV_GetConverterConfig(const uint32_t instance,adc_converter_config_t * const config);
获取ADC转换器的设置参数,这里的形参结构体指针用来返回设置参数。
void ADC_DRV_InitHwCompareStruct(adc_compare_config_t * const config)
初始化硬件比较配置结构体为默认值。在配置硬件比较功能(ADC_DRV_ConfigHwCompare)之前应调用此函数,否则所有成员都必须由调用者写入。此函数确保所有成员都以安全值写入,因此用户可以修改所需的成员。
void ADC_DRV_ConfigHwCompare(const uint32_t instance,const adc_compare_config_t * const config)
通过形参配置ADC硬件比较功能,形参均由配置工具生成。
void ADC_DRV_GetHwCompareConfig(const uint32_t instance,adc_compare_config_t * const config)
获取ADC比较功能的设置参数,这里的形参结构体指针用来返回设置参数。
void ADC_DRV_InitHwAverageStruct(adc_average_config_t * const config)
此函数将硬件平均配置结构初始化为默认值(参考手册重置)。在配置硬件平均功能(ADC_DRV_ConfigHwAverage)之前应调用此函数,否则所有成员都必须由调用者写入。此函数确保所有成员都以安全值写入,因此用户可以修改所需的成员。
void ADC_DRV_ConfigHwAverage(const uint32_t instance,const adc_average_config_t * const config)
通过形参配置ADC硬件平均功能,形参均由配置工具生成。
void ADC_DRV_GetHwAverageConfig(const uint32_t instance,adc_average_config_t * const config)
获取ADC硬件平均功能的设置参数,这里的形参结构体指针用来返回设置参数。
void ADC_DRV_InitChanStruct(adc_chan_config_t * const config)
此函数将控制通道配置结构初始化为默认值(参考手册重置)。在使用该结构配置通道(ADC_DRV_ConfigChan)之前,应在此结构上调用此函数,否则调用者必须写入所有成员。此函数确保所有成员都以安全值写入,因此用户只能修改所需的成员。
void ADC_DRV_ConfigChan(const uint32_t instance,const uint8_t chanIndex,const adc_chan_config_t * const config)
用给定的配置结构体指针形参配置所选的控制通道。当软件触发模式启用时,配置控制通道索引 0,会隐式地在所选的 ADC 输入通道上触发新的转换。因此,ADC_DRV_ConfigChan 可用于软件触发转换。在任何控制通道正在控制转换(软件或硬件触发)时对其进行配置,将隐式地中止正在进行的转换。
void ADC_DRV_GetChanConfig(const uint32_t instance,const uint8_t chanIndex,adc_chan_config_t * const config)
获取所选通道索引的当前控制通道配置,这里的形参结构体指针用来返回设置参数。
void ADC_DRV_SetSwPretrigger(const uint32_t instance,const adc_sw_pretrigger_t swPretrigger)
此功能设置软件预触发 ,仅影响前4个控制通道。
void ADC_DRV_Reset(const uint32_t instance)
此函数将所有内部 ADC 寄存器重置为复位值。
void ADC_DRV_WaitConvDone(const uint32_t instance)
此函数通过持续轮询转换完成标志来等待转换完成。
bool ADC_DRV_GetConvCompleteFlag(const uint32_t instance,const uint8_t chanIndex)
此函数返回控制通道的“转换完成”标志的状态。当转换完成或由硬件比较功能生成的条件被评估为真时,此标志会被置位。
void ADC_DRV_GetChanResult(const uint32_t instance,const uint8_t chanIndex,uint16_t * const result)
此函数返回来自一个控制通道的转换结果。
void ADC_DRV_AutoCalibration(const uint32_t instance)
此功能执行自动校准。在使用 ADC 转换器之前运行此函数。
void ADC_DRV_InitUserCalibrationStruct(adc_calibration_t * const config)
此函数将用户校准配置结构初始化为默认值(参考手册重置)。在使用该结构来配置用户校准功能(ADC_DRV_ConfigUserCalibration)之前,应在此结构上调用此函数,否则所有成员都必须由调用者写入。此函数确保所有成员都以安全值写入,因此用户只能修改所需的成员。此函数将根据 ADC 频率检查并重置时钟分频。如果频率大于校准所需的时钟,将显示错误。
void ADC_DRV_ConfigUserCalibration(const uint32_t instance,const adc_calibration_t * const config)
此函数为用户校准寄存器设置配置。
void ADC_DRV_GetUserCalibration(const uint32_t instance,adc_calibration_t * const config)
此函数返回当前用户校准寄存器的值。
IRQn_Type ADC_DRV_GetInterruptNumber(const uint32_t instance)
此函数返回指定 ADC 实例的中断编号。
void ADC_DRV_ClearLatchedTriggers(const uint32_t instance,const adc_latch_clear_t clearMode)
此函数会清除 ADC 实例的所有触发锁存标志。
此函数必须在 ADC 的硬件触发源已停用后调用。
void ADC_DRV_ClearTriggerErrors(const uint32_t instance)
此函数清除 ADC 实例的所有触发错误标志。
uint32_t ADC_DRV_GetTriggerErrorFlags(const uint32_t instance)
此函数返回 ADC 实例的触发错误标志位。