TI Driver---ADCBuf

ADCBuf的头文件被包含在<ti/drivers/ADCBuf.h>

Operation

TI-RTOS中的ADCBuf驱动器以指定频率采样模拟波形。结果样本被传输到应用程序提供的缓冲区中。驱动程序可以一次采集n个样本,也可以通过双缓冲区连续采样,并提供一个回调函数来处理每个完成的缓冲区。

此驱动程序中的API充当典型TI-RTOS应用程序的接口。特定的外围设备负责创建所有SYS/BIOS专用原语,以允许线程安全操作

位于ti/drivers/ADCBUF/platform目录中的特定于平台的ADCBUF文件。此文件是作为特定平台的ADCBUF库的一部分构建的。

Opening the driver

在这里插入图片描述

Making a conversion

在这种情况下,转换是指获取多个ADC样本并将它们传输到应用程序提供的缓冲区。要启动转换,应用程序必须配置ADCBuf_Conversion结构体并且调用ADCBuf_convert()。在分块模式下,ADCBuf_convert()将在转换完成并生成所需数量的样本后返回。在回调模式下,ADCBuf_convert()将立即返回,当转换完成时,应用程序将获得回调
在这里插入图片描述

Canceling a conversion

ADCBuf_convertCancel()用于在ADCBuf_RETURN_MODE_CALLBACK中使用驱动程序时取消ADCBuf转换。

在没有转换的情况下调用这个API没有任何效果。如果正在进行转换,则会取消转换并调用提供的回调函数

在ADCBuf_RECURRENCE_MODE_CONTINUOUS中,必须调用此函数以停止转换。在调用ADCBuf_convertCancel()函数之前,驱动程序将继续为回调提供新的样本。当处于ADCBuf_RECURRENCE_CONTINUOUS时,在ADCBuf_convertCancel()之后不调用回调函数

Implementation

这个模块作为TI-RTOS应用程序的主接口。他的目的是将模块的API重定向到使用指向ADCBuf_FxnTable的指针指定的特定外围实现

ADCBuf驱动程序接口模块被链接到(在链接时)名为ADCBuf_config数据结构的ADCBuf_Config的NULL终止的数组。ADCBuf_config在应用程序中实现,每个entry都是ADCBuf外围设备的一个实例。ADCBuf_config中的每个entry都包含一个:

  • (ADCBuf_FxnTable *)实现ADCBuf外设的一组函数
  • (void *)与ADCBuf_FxnTable关联的数据对象
  • (void *)与ADCBuf_FxnTable管理的硬件属性

Instrumentation

如果启用了检测,ADCBuf驱动程序接口将生成日志语句
在这里插入图片描述

参考文献:

  1. 《mmWave SDK Module Documentation》

猜你喜欢

转载自blog.csdn.net/Xiao_Jie123/article/details/111085270
TI