欢迎光临散文网 会员登陆 & 注册

瑞萨e2studio(13)----基于DTC的多通道ADC采集

2022-11-10 11:39 作者:记帖  | 我要投稿


概述

本篇文章主要介绍如何使用e2studio对瑞萨进行DTC配置,并且对多通道ADC进行采集。

视频教学

听不到声音的请点击跳转进行观看。
https://www.bilibili.com/video/BV1cW4y1J783/


csdn课程

csdn课程更加详细。
https://edu.csdn.net/course/detail/36131

硬件准备

硬件准备:这里我准备的是芯片型号R7FA4M2AD3CFP的开发板。

在这里插入图片描述

新建工程

在这里插入图片描述

工程模板

在这里插入图片描述

保存工程路径

在这里插入图片描述

芯片配置

本文中使用R7FA4M2AD3CFP来进行演示。

在这里插入图片描述

工程模板选择

在这里插入图片描述

uart配置

点击Stacks->New Stack->Driver->Connectivity -> UART Driver on r_sci_uart。

在这里插入图片描述

uart属性配置

在这里插入图片描述

回调函数user_uart_callback ()

发送完毕可以用UART_EVENT_TX_COMPLETE进行判断。



在这里插入图片描述

设置e2studio堆栈

在这里插入图片描述

e2studio的重定向printf设置

在这里插入图片描述

e2studio的重定向printf设置

C++ 构建->设置->GNU ARM Cross C Linker->Miscellaneous去掉Other linker flags中的 “--specs=rdimon.specs”

在这里插入图片描述

printf输出重定向到串口

打印最常用的方法是printf,所以要解决的问题是将printf的输出重定向到串口,然后通过串口将数据发送出去。
注意一定要加上头文件#include


ADC配置

点击Stacks->New Stack->Driver->Analog -> ADC Driver on r_adc。

在这里插入图片描述

ADC属性配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

DTC配置

RA mcu上DTC外设的驱动程序。这个模块实现传输接口。
数据传输控制器(DTC)将数据从一个内存位置传输到另一个内存位置,而不使用CPU。
DTC使用基于RAM的向量表。向量表中的每个条目对应于ISR向量表中的一个条目。当DTC被中断触发时,它读取DTC向量表,获取传输信息,然后执行传输。传输执行后,DTC将更新的传输信息写回DTC向量表所指向的位置。

点击Stacks->Transfer->Transfer(r_dtc)。

在这里插入图片描述

DTC属性配置

在这里插入图片描述

R_DTC_Open()函数原型

在这里插入图片描述


故可以用 R_DTC_Open () 函数进行配置,开启DTC和初始化配置。


R_DTC_Enable()函数原型


在这个激活源上启用DTC传输。


R_DTC_Reset()函数原型


重置传输源、目的地和传输数。


打印数据


多通道ADC采集通过DTC传输例程

现在设置3个ADC通道的输入电压如下所示。

结果演示

通过串口打印出的数据如下所示。

最后

以上的代码会在Q群里分享。QQ群:615061293。
或者关注微信公众号『记帖』,持续更新文章和学习资料,可加作者的微信交流学习!



瑞萨e2studio(13)----基于DTC的多通道ADC采集的评论 (共 条)

分享到微博请遵守国家法律