_高速大数据采集系统设计x
时间:2021-10-28 16:14:43 来源:网友投稿
实用标准文案
实用标准文案
文档
文档
基于FPGA和SoC单片机的
高速数据采集系统设计
一.选题背景及意义
随着信息技术的飞速发展,各种数据的实时采集和处理在现代工业控制和科 学研究中已成为必不可少的部分。
高速数据采集系统在自动测试、 生产控制、通 信、信号处理等领域占有极其重要的地位。
随着SoC单片机的快速发展,现在已 经可以将采集多路模拟信号的 A/D转换子系统和CPU核集成在一片芯片上,使整 个数据采集系统几乎可以单芯片实现,从而使数据采集系统体积小,性价比高。
FPGA为实现高速数据采集提供了一种理想的实现途径。利用FPGA高速性能和本 身集成的几万个逻辑门和嵌入式存储器块,把数据采集系统中的数据缓存和控制 电路全部集成在一片FPGA芯片中,大大减小了系统体积,提高了灵活性。 FPGA
还具有系统编程功能以及功能强大的 EDA软件支持,使得系统具有升级容易、开 发周期短等优点。
.设计要求
.设计要求
设计一高速数据采集系统,系统框图如图 1-1所示。输入模拟信号为频率
200KHz Vpp=0.5V的正弦信号。采样频率设定为25MHz通过按键启动一次数据 采集,每次连续采集128点数据,单片机读取128点数据后在LCD模块上回放显
示信号波形
LCD哼決键雄C8O51F36C单片机匚
LCD哼決
键雄
C8O51F36C
单片机
匚 a
高速
僖号-
ADC
■
调理
咬拟 信号
图1-1高速数据采集原理框图
整体方案设计
高速数据采集系统采用如图3-1的设计方案。高速数据采集系统由单片机最小系 统、FPGA最小系统和模拟量输入通道三部分组成。输入正弦信号经过调理电路 后送高速A/D转换器,高速A/D转换器以25MHz的频率采样模拟信号,输出的数 字量依次存入FPGA内部的FIFO存储器中,并将128字节数据在LCD模块回放显 示。
I | | i i
rFPG丸於小招统200kHz Vpp-0r5V it弦佰号图3-1高速数据采集系统设计方案
r
FPG丸於小招统
200kHz Vpp-0r5V it弦佰号
图3-1高速数据采集系统设计方案
1.模拟量输入通道的设计
模拟量输入通道由高速A/D转换器和信号调理电路组成。信号调理电路将模拟信 号放大、滤波、直流电平位移,以满足 A/D转换器对模拟输入信号的要求。
2.高速A/D转换电路设计
FPGA模块设计
本设计的数据缓冲电路采用 FIFO存储器。FIFO数据缓冲电路原理如图5-1
FIFO进捺缓沖电埒高速A/D转换器单片机总小系统
FIFO进捺缓沖电埒
高速A/D转换器
单片机总小系统
L
图5-1 FIFO数据缓冲电路原理
FIFO的写端口的数据线与ADS931的数据线直接相连,FIFO的写时钟和ADS931 采用同一时钟信号CLK0 FIFO的读端口与单片机并行总线相连,数据输出端口 加了三态缓冲器。地址译码器的片选信号 CS1和读信号RD相或非后作为FIFO
的读时钟电路和三态缓冲的使能信号。
FIFO数据顶层原理图如图5-2。
图5-2 FIFO数据顶层原理图
F360单片机模块设计
主程序完成C8051F360单片机初始化、检测有无按键输入等功能。在此系统中我
们加入了一个频率测试显示功能。主程序流程图如图 6-2。
LCD显不初蛤翠宜浪示计算坝半
LCD显不初蛤翠宜
浪示计算坝半
图6-2 主程序流程图
主程序源代码如下:
void mai n()
{
uchar xdata *addr1;
uint i;
float f,ts;
uchar fuzhi;
int up,dow n,m, n;
up=0;dow n=0;m=0;n=0;ts=0.04;
InitDevice(); //F360 初始化
InsitiLcd(); //LCD 模块初始化
DispHa n(ha nzi10,0x80,0x10);
DispHa n(ha nzi11,0x92,0x08);
DispHa n(ha nzi12,0x8a,0x08);
DispHa n(ha nzi13,0x98,0x08);
DispHa n(ha nzi14,0x9c,0x08);
addr仁LEDENCS;
*addr仁0x01;
START=0;
EOC=1;
while(1)
{
if (keysig n == 1)
{
keysig n = 0;
if(keycode==0x00) //k0 键
{
START=1;
while(EOC==0); // 等待数据采集完
START=0;
addr 仁 CS1;
while(EOC==1) // 等待读出第一个有效数据
{
WaveData[0]=*addr1;
}
for(i=1;i<128;i++)
{
WaveData[i]=*addr1;
if(i>3)
{
if(WaveData[i]>=WaveData[i-2]) up=1;
if((WaveData[i]<=WaveData[i-2])&&(up==1)) {up=0;m=i-1;} }
}
if(m>64)
{
for(i=m-5;i>=1;i--)
{
if(WaveData[i]>=WaveData[i-2]) dow n=1;
if((WaveData[i]v=WaveData[i-2])&&( dow n==1)) {dow n=0;n=i-1;}
}
}
else
{
for(i=m+5;i<=128;i++)
{ if(WaveData[i]>=WaveData[i+2]) dow n=1;
if((WaveData[i]<=WaveData[i+2])&&( dow n==1)) {dow n=0;n=i+1;}
}
}
if(m>=n) f=1/(4*(m-n)*ts);
else f=1/(4*( n-m)*ts);
fuzhi=WaveData[m]-WaveData[ n];
In sitiLcd();
ShowWave();
}
if(keycode==0x01) //k1 键
{
In sitiLcd();
DispHa n(han zi15,0x90,0x06);
xiaoshu(f,0x93);
DispHa n(han zi17,0x96,0x03);
// DispHa n(han zi16,0x8a,0x06);
}
}
}
}
系统调试与结果
将各个模块连接后,进行调试。首先在 LCD上显示如图7-1的界面。
图7-1 LCD初始界面
在信号调理电路的模拟输入端输入频率 200KHz Vpp=0.5V的正弦信号,
按K0
键,LCD显示正弦波如图7-2。
7-2 按K0后的波形显示
按K1,LCD显示频率如图7-3。
7-3 LCD 频率显示
与输入频率相比有误差,不过在可以接受的范围内。
推荐访问:高速 采集系统 数据 设计 高速大数据采集系统设计x
[_高速大数据采集系统设计x]相关文章
- 2020下半年高速节假日高速免费时间表2020年下半年高速免费几天-_
- 遂渝高速、潼荣高速污水处理设施_
- [2021端午节高速免费吗_端午节高速免费几天]
- 【深圳高速路线-20210326060027】
- 高速文员工作总结-20210326213650
- _高速离心机高速电机维修
- 高速切削技术及高速切削机床|
- 高速超高速切削及高速切削机床:
- 高速培训管理制度:
- 高速变频-高速变频电机测试解决方案
- 水质监测数据传输网络设计
- 2023年PHP语言:数据类型3篇
- 数据运营年终总结6篇(范例推荐)
- 电子竞赛培训网 [全国大学生电子设计大赛活动总结]
- 设计师2021年个人年度工作总结七篇
- 300平米-A级机房设计方案
- 基于安卓系统一款音乐APP设计与实现
- 水单2.10设计稿
- 【冬季活动策划设计方案】 100周年校庆方案策划书
- 设计工作室实习报告2020
- 规划设计方案申报
- 地下大型建筑工程施工组织设计方案
- xx路新建工程施工组织设计方案