本篇将详细介绍如何使用RA6T2 16位ADC在混合模式(Hybrid mode)下应用采样保持功能进行AD采样,以及后台功能(background)的具体应用。本篇使用FSP建立应用工程,详细讲解了根据数据手册设置ADC模块的各部分动作时间,并展示实测结果。应用工程使用FSP4.0.0生成主体代码框架,具有较强的移植性。
2. Hybrid模式下后台模式功能具体应用讲解
后台模式可以设置触发在某一特定时刻,输出当前AD采样结果。
2.1设置ADC采样模式为Hybrid B后台模式 Continuous Scan.
本测试使用Renesas官方样板MCK-RA6T2进行,详细请参看MCK-RA6T2 User's Manual(MCK-RA6T2用户手册)。根据4个ADC通道,并分为两个group设计该实验。并使能ADC0的结束中断,输出一个I/O信号,以测试ADC结束的时间。
使用ELC功能,将ADC12A0和GPT4的比较匹配链接起来,当GPT4发生比较匹配时触发ADC。
当比较匹配发生时,设置GTIOC4A输出信号,来协助确认ADC耗时。
在GPT4比较匹配中断程序里,我们使PE11输出高:
左右滑动查看
void gpt_capture_a_isr (void) { 。。。。。。 g_ioport.p_api->pinWrite(g_ioport.p_ctrl,BSP_IO_PORT_14_PIN_11,BSP_IO_LEVEL_HIGH); 。。。。。。 }
在ADC0结束中断里,我们使PE11输出低
左右滑动查看
void adc_b_adi0_isr (void) { g_ioport.p_api->pinWrite(g_ioport.p_ctrl,BSP_IO_PORT_14_PIN_11,BSP_IO_LEVEL_LOW); 。。。。。。 }
使用示波器进行测试,AD转换时间为0.39us。如下图所示,绿色为GPT4比较匹配输出,紫色为PE11输出。
Hybrid 后台模式工作模式原理如下图所示:
根据数据手册中表36.55、表36.56和图36.55详细描述,当ADCLK设置频率为60MHz, 本动作过程理论计算时间为:
总耗时
= (触发的作用时间) + (数据输出时间)
=tD_ADST + tADD
= tD_TRG + tD_ITRG + tD_SYOP
= (1+3+1+3+0+9)* ADCLK+5* PCLKA
= 0.283 + 0.042
=0.322us
理论计算与实际测试结果基本一致。
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !