16通道AD采集方案,基于瑞芯微RK3562J非对称AMP!
案例测试数据
本文主要分享RK3562J基于AMP(Asymmetric Multi-processing)的8/16通道AD采集开发案例,案例中使用的AD芯片为核芯互联CL1606/CL1616(国产)、ADI AD7606/AD7616。适用以下开发环境:
Windows开发环境:Windows 7 64bit、Windows 10 64bit
虚拟机:VMware16.2.5
开发环境:Ubuntu20.04.6 64bit
U-Boot:U-Boot-2017.09
Kernel:Linux-5.10.209
LinuxSDK:rk3562-buildroot-2021.11-sdk-[版本号]
(基于rk3562_linux_release_v1.2.0_20240620)
硬件平台:创龙科技TL3562-EVM工业评估板(基于RK3562J)
案例测试结果如下:

案例详细介绍
本案例支持Cortex-M0(MCU)、Cortex-A53(CPU3)核心运行Baremetal/RT-Thread(RTOS)程序进行测试,两种方案的具体区别如下:
(1)Cortex-M0(MCU)核心运行
案例使用SPI总线采集8/16通道AD数据,评估板Cortex-A53(CPU0、CPU1、CPU2、CPU3)核心运行Linux系统,Cortex-M0(MCU)核心运行Baremetal、RT-Thread程序。
Baremetal/RT-Thread(RTOS)端通过SPI采集的AD数据写入DDR共享内存,并通过rpmsg发送写入的共享内存信息至Linux应用程序,然后Linux端从指定共享内存中读取AD数据,并将数据转换得到电压值,通过Qt显示波形至显示屏。

(2)Cortex-A53(CPU3)核心运行
同样使用SPI总线采集8/16通道AD数据,评估板Cortex-A53(CPU0、CPU1、CPU2)核心运行Linux系统,Cortex-A53(CPU3)核心运行Baremetal、RT-Thread程序。
Baremetal/RT-Thread(RTOS)端通过SPI采集的AD数据写入DDR共享内存,并通过rpmsg发送写入的共享内存信息至Linux应用程序,然后Linux端从指定共享内存中读取AD数据,并将数据转换得到电压值,通过Qt显示波形至显示屏。

RK3562J典型应用领域
RK3562J凭借其强大性能和灵活架构,广泛应用多个领域

案例演示
本章节以16通道AD采集案例为例演示,为了简化描述,本文仅摘录部分方案功能描述与测试结果。
案例说明
案例使用创龙科技TL7616P模块(16通道)运行Baremetal/RT-Thread(RTOS)程序进行AD数据采集。
案例测试
请将评估板RS232 UART2串口连接至PC机,将评估板HDMI OUT接口与HDMI显示屏连接,将创龙科技TL7616P模块连接至评估板,硬件连接如下图所示。

本次测试以TL7616P模块V7B和V0A通道为例,请分别正确连接至信号发生器A通道和B通道。信号发生器A通道和B通道均设置为输出频率1KHz、峰峰值10.0Vpp的正弦波信号。
请参考产品资料将案例相关镜像固化至评估板,将案例可执行文件ad_display拷贝至评估板文件系统任意目录下。
执行如下命令,单次采集1024个数据采样点。
Target# ./ad_display -d ad7616 -m 1 -platform wayland

同时,HDMI显示屏将会显示静态波形,如下图所示。

按下"Ctrl + C"可停止程序运行。


查看更多RK3562J相关的案例演示,各位工程师可以通过公众号(Tronlog创龙科技)查阅,快来试试吧!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?