分立式ARM+FPGA核间通信综合案例
【摘要】 本案例是基于创龙SOM-TL437xF是一款TI Sitara系列AM4376/AM4379 ARM Cortex-A9 + Xilinx Spartan-6 FPGA处理器设计的异构多核工业级核心板,进行案例分享的。1 案例功能Spartan-6 FPGA通过ADS8568进行AD数据采集,并将AD数据通过核心板内部与ARM端连接的GPMC高速并行接口传送到AM437x ARM。AR...
本案例是基于创龙SOM-TL437xF是一款TI Sitara系列AM4376/AM4379 ARM Cortex-A9 + Xilinx Spartan-6 FPGA处理器设计的异构多核工业级核心板,进行案例分享的。
1 案例功能
Spartan-6 FPGA通过ADS8568进行AD数据采集,并将AD数据通过核心板内部与ARM端连接的GPMC高速并行接口传送到AM437x ARM。ARM端运行Qt程序,将从GPMC接口读取的AD数据进行波形显示。
2 案例框图
图 1
3 案例演示
3.1 硬件连接
本案例基于创龙科技(Tronlong)的TL437xF-EVM(AM437x ARM + Spartan-6 FPGA)评估板、TL8568P(ADS8568)模块进行测试。
图 2
图 3
3.2 案例测试
将TL8568P模块的任意通道正确连接信号发生器,并使信号发生器输出10Vpp、5KHz的正弦波。本案例支持8通道AD数据同时采集与显示,本次测试仅演示ADC_V1通道AD数据的采集与显示。
图 4
按照用户手册操作步骤进行程序的加载,Qt程序运行后,LCD显示屏将显示AD数据的正弦波。点击屏幕上的pause按钮后,波形将暂停在某个状态,再点击start按钮,显示屏又将显示动态波形,点击Exit按钮可退出显示。
图 5
4 关键代码
4.1 ARM端关键代码说明
(1) 打开“/dev/mem”设备,并将GMPC地址空间映射到用户空间。
图 6 src\dialog.cpp
(2) 初始化QWT图表。
图 7 src\dialog.cpp
(3) 绘制波形。
图 8 src\dialog.cpp
4.2 FPGA端关键代码说明
(1) 定义端口,采样率设置为510KSPS。
图9 hdl\gpmc_ads8568.v
(2) 调用ads8568模块,控制AD数据采集。
图 10 hdl\gpmc_ads8568.v
(3) 调用gpmc模块,将ads8568模块的数据通过并口发送出去。
图 11 hdl\gpmc_ads8568.v
RTL原理图如下所示:
图 12
5 应用场合
图13
8 技术交流群
AM437x交流群:373129850、487528186
Spartan-6交流群:311416997、101245165
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)