stm32f4+ad7691(AD7982) 高速采集 实测图 欢迎探讨留言

2019-12-12 18:14发布

本帖最后由 射天狼 于 2019-3-22 09:22 编辑

首先说明一下,此电路是非实时性的,可以低速实时,打算以后改为高速实时方案
再有就是采集速度是达不到官方手册标称值的,手册里有“猫腻”细心的朋友可以找找哈
板子特点:
1.板载64Kbit EEPROM
2.板载CAN接口,可组网
3.预留OLED液晶接口
4.自带USB-232/USB VCP接口
5.所有供电都是高精度 低噪声处理
6.预留2组 28个IO接口 可拓展
7.外接测试了一个高速64Mbit的SRAM 用于大量数据暂存
8.前端高精度仪表运放
9.AD输入缓冲级 单端转差分
10.可灵活更改输入量程
11.引脚兼容一堆AD芯片从100k-1.33M速度的都有
12.••••••


工作流程:
以ad7691为例 想要速度更高也可以用ad7982 应该可以到500k左右没问题
125k采集速度的话差不多可以存16s的数据 搞个触发 对付脉冲型数据 也足够了 不够也可以再拓展一个外部SRAM  标准波形更容易处理就不多说了

目前已经测试过的稳定程序版本是
以125k或者150k左右的采集速度 连续采集0-200万个点数(用的SRAM可设置 自带的RAM差不多2万个左右 一般标准波形采集也够) 然后串口以921600(也可以更高)波特率慢慢上传数据 再做处理
AD短路噪声是80uVpp左右加上前端电路是200uVpp(没加滤波 这个可以根据实际降低)


打算拓展实验的功能:
1.用W5500或者FT232H 来做实时传输到PC
2.不需要实时性的场合或者速度不太高的场合 可以用USART和USB VCP接口
3.不知道TF卡SDIO速度实时性跟不跟得上 可以一试


话不多说 直接上图

测试程序


125k采1k
PCB3.JPG (754.21 KB, 下载次数: 0) 下载附件 2019-3-22 09:21 上传

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
29条回答
射天狼
1楼-- · 2019-12-15 02:57
pdabug 发表于 2019-3-22 12:05
能发个前端模拟部分电路参考下吗,谢谢啊

前端部分是一个仪表运放(AD8221或INA128都可以)这样即可以差分 也可以对地单端 也可以对mV uV微弱信号进行处理 后面是一个ADA4940-1 单端转成差分给个Vcom输入改成单端模式 输出直接到AD的IN+和IN-
射天狼
2楼-- · 2019-12-15 05:33
zhanyanqiang 发表于 2019-3-22 12:19
几百K 不算很高了吧

嗯 不算高 这个东西看场合吧  够用就行了
huangqi412
3楼-- · 2019-12-15 07:14
 精彩回答 2  元偷偷看……
射天狼
4楼-- · 2019-12-15 11:46
wajlh 发表于 2019-3-22 12:32
最近也在考虑用这个芯片做电流采集,看中高分辨率一个档位搞定全量程。楼主为啥没用硬件的SPI做?跑1M的采 ...

1M应该不行 有些场合  硬件SPI和模拟SPI都差不多好像  个人愚见啊 不知道对不对  有知道的可以指正下哈
举例来说 SPI2_ReadWriteByte是硬件SPI读写函数
但是你那个CS(NSS)无法进行时间控制啊 大部分SPI的芯片都支持 因为他只要CS为低就可以马上读取  所以也能用DMA
而AD多数都是需要等待转换完成  就像AD7691 NSS无法自主完成控制 这样你压根无法用DMA

上图  标准时序NSS

AD7691.jpg (145.48 KB, 下载次数: 0)

下载附件

2019-3-22 13:38 上传



那你不用SPI的DMA的话 那函数里也是while等着发送 其实也就一样了

again
5楼-- · 2019-12-15 15:47
一个TIMER两个通道+DMA搞定,根本不需要软件干预,一个通道PWM管CS,一个管触发SPI自动回读AD,N年前就这么跑了
zkmcu
6楼-- · 2019-12-15 20:11
给运放供电的负电源电路是怎么样的,用的什么芯片

一周热门 更多>