1
务必了解通过e2 studio中的FSP设置配置ADC外设和使用API函数创建自己的应用的实际实现。本应用笔记补充了两个应用项目,分别演示了12位和16位数据转换模式下的ADC模块操作。
主要项目称为“adc_16_oversampling_ra6t2”,旨在演示专门用于16位转换的正确FSP配置和自校准操作,以确保在过采样模式 – 连续扫描模式组合下正常进行转换。运行此项目的步骤从第4节开始。
辅助项目称为“adc_12_sar_ra6t2”,使用的数据采集系统相同,但ADC配置为在SAR模式 – 连续扫描模式组合下进行12位转换。该项目旨在方便您自行进行对照。您可以使用与主要项目相同的输入运行辅助项目,以确定12位和16位ADC模式之间的性能差异。运行辅助项目的步骤与主要项目相同,因此本应用笔记中未作详细介绍。
两个项目的配置不同,而ADC转换方法取决于配置;二者的代码基本相同。运行主要项目后,您应该了解如何在e2 studio的“Stacks”(堆栈)选项卡中设置16位操作的重要配置。此外,您还应该了解自校准的重要性以及需要使用自校准功能的场景。
3.1 项目声明
在“adc_16_oversampling_ra6t2”项目中,A/D转换器将在过采样模式 – 连续扫描模式组合下运行,以从用户选择的外部模拟输入(例如,信号发生器和传感器等)中获取16位转换值。
该应用项目的框图如下所示:
图14. 应用项目框图
主机计算机运行两个软件:e2 studio和J-Link RTT Viewer。这两个软件通过主机计算机的USB连接与RA6T2 MCU进行通信。e2 studio与MCU之间会传输调试会话信息,J-Link RTT Viewer会向MCU发送项目命令并接收MCU发生的任何模块错误。
以下步骤描述了该项目的功能:
1. 用户将启动ADC外设的连续扫描。
2. 将对模拟输入进行连续转换,直到在RAM中的数组中存储设定数量的样本(默认为1024个样本)。
3. 捕获1024个样本后,ADC扫描将停止,程序也将暂停。
4. 如果需要,用户可以检查和/或导出数据以供进一步分析。
5. 准备好重新启动扫描过程后,用户将继续运行该程序。
6. 如果条件需要,用户会选择运行自校准功能。
用户输入、应用状态打印消息和错误都通过安装在主机计算机上的J-Link RTT Viewer软件进行处理。
在辅助项目“adc_12_sar_ra6t2”中,A/D转换器将在SAR模式 – 连续扫描模式组合下运行,并执行相同的步骤。
3.2 FSP配置
本节将回顾每个应用项目的重要时钟设置和堆栈设置。在这两个项目中,FSP配置都存储在名为configuration.xml的文件中。双击该文件将打开项目的FSP配置视图。
图15. 应用项目的文件夹结构
3.2.1 时钟/引脚设置
在“Clocks”(时钟)选项卡中,可以为项目配置各种MCU时钟速度设置。对于这两个项目,A/D转换时钟 (ADCLK) 源是外设模块时钟 (PCLKC),设置为60MHz。
图16. FSP配置的“Clock”(时钟)选项卡
ADCLK可以在最低25MHz到最高60MHz的范围内运行。对于添加到“Stacks”(堆栈)选项卡的每个ADC模块,时钟源和附加分频比设置是可配置的。
3.2.2 堆栈设置
在“Stacks”(堆栈)选项卡中,可以为项目添加和配置外设模块。要添加新模块,请使用“New Stack”(新堆栈)按钮。要添加ADC16模块,既可使用“New Stack > Analog > ADC Driver on r_adc_b”(新堆栈 > 模拟 > r_adc_b 上的 ADC 驱动程序)直接添加模块,也可通过输入“New Stack > Search > r_adc_b”(新堆栈 > 搜索 > r_adc_b)使用搜索功能。
图17. 将一个新r_adc_b模块添加到堆栈
单击“r_adc_b”模块 >“Properties”(属性)选项卡 >“Settings”(设置)选项卡即可调出模块设置。每个项目的设置将在下面详细说明。
3.2.2.1 16位过采样模式项目的ADC模块属性
下表列出了与ADC模块默认值不同的“adc_16_oversampling_ra6t2”项目的ADC模块设置:
表10. 与ADC模块默认值不同的adc_16_oversampling_ra6t2项目的ADC模块配置
3.2.2.2 12位SAR模式项目的ADC模块属性
下表列出了ADC模块默认值不同的“adc_12_sar_ra6t2”项目的ADC模块设置:
表11. 与ADC模块默认值不同的adc_12_sar_ra6t2项目的ADC模块配置
3.3 使用的FSP API
下表列出了两个应用项目使用的FSP API及其使用说明:
图18. 两个应用项目的FSP API用途列表
全部0条评论
快来发表一下你的评论吧 !