博客
关于我
分立式ARM+FPGA核间通信综合案例
阅读量:154 次
发布时间:2019-02-27

本文共 884 字,大约阅读时间需要 2 分钟。

 

本案例是基于创龙SOM-TL437xF是一款TI Sitara系列AM4376/AM4379 ARM Cortex-A9 + Xilinx Spartan-6 FPGA处理器设计的异构多核工业级核心板,进行案例分享的。

Spartan-6 FPGA通过ADS8568进行AD数据采集,并将AD数据通过核心板内部与ARM端连接的GPMC高速并行接口传送到AM437x ARM。ARM端运行Qt程序,将从GPMC接口读取的AD数据进行波形显示。

 

图 1

 

 

 

本案例基于创龙科技(Tronlong)的TL437xF-EVM(AM437x ARM + Spartan-6 FPGA)评估板、TL8568P(ADS8568)模块进行测试。

 

 

图 2

 

 

图 3

 

 

将TL8568P模块的任意通道正确连接信号发生器,并使信号发生器输出10Vpp、5KHz的正弦波。本案例支持8通道AD数据同时采集与显示,本次测试仅演示ADC_V1通道AD数据的采集与显示。

 

 

图 4

 

按照用户手册操作步骤进行程序的加载,Qt程序运行后,LCD显示屏将显示AD数据的正弦波。点击屏幕上的pause按钮后,波形将暂停在某个状态,再点击start按钮,显示屏又将显示动态波形,点击Exit按钮可退出显示。

 

 

图 5

 

    1. 端关键代码说明
  1. 打开“/dev/mem”设备,并将GMPC地址空间映射到用户空间。

 

 

图 6 src\dialog.cpp

 

  1. 初始化QWT图表。

 

 

图 7 src\dialog.cpp

 

  1. 绘制波形。

 

 

图 8 src\dialog.cpp

 

    1. 端关键代码说明
  1. 定义端口,采样率设置为510KSPS。

 

图9 hdl\gpmc_ads8568.v

 

  1. 调用ads8568模块,控制AD数据采集。

 

 

图 10 hdl\gpmc_ads8568.v

 

  1. 调用gpmc模块,将ads8568模块的数据通过并口发送出去。

 

 

图 11 hdl\gpmc_ads8568.v

 

RTL原理图如下所示:

 

 

图 12

 

 

图 13

AM437x交流群:373129850、487528186

Spartan-6交流群:311416997、101245165

 

转载地址:http://lccb.baihongyu.com/

你可能感兴趣的文章
nghttp3使用指南
查看>>
【Flink】Flink 2023 Flink 自动化运维的大规模落地实践
查看>>
Nginx
查看>>
nginx + etcd 动态负载均衡实践(一)—— 组件介绍
查看>>
nginx + etcd 动态负载均衡实践(三)—— 基于nginx-upsync-module实现
查看>>
nginx + etcd 动态负载均衡实践(二)—— 组件安装
查看>>
nginx + etcd 动态负载均衡实践(四)—— 基于confd实现
查看>>
Nginx + Spring Boot 实现负载均衡
查看>>
Nginx + Tomcat + SpringBoot 部署项目
查看>>
Nginx + uWSGI + Flask + Vhost
查看>>
Nginx - Header详解
查看>>
nginx - thinkphp 如何实现url的rewrite
查看>>
Nginx - 反向代理、负载均衡、动静分离、底层原理(案例实战分析)
查看>>
Nginx - 反向代理与负载均衡
查看>>