搜索
bottom↓
回复: 33

[请教]使用高速的ADC时,那么多那么快的数据是怎样处理的?

[复制链接]

出0入55汤圆

发表于 2022-10-9 15:01:45 | 显示全部楼层 |阅读模式
最近想用ADC采集电压数据上传到PC显示波形(玩具),单片机自带的12位基本满足,但速度方面想要快一些,测试了下,单片机自带的最快差不多30us可以采集完成,但问题来了,发送给PC用的是串口115200,赶不及发送那么多的数据,只会越堆越多,所以想请教一下,有没有什么特殊的方式处理?数据压缩?

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入4汤圆

发表于 2022-10-9 15:04:41 | 显示全部楼层
要么间隔时间长点做ADC,要么串口换SPI等高速口

出0入71汤圆

发表于 2022-10-9 15:05:53 | 显示全部楼层
不用实时显示,设置一个触发条件,比如上升超过1V触发,然后采集几十个点传一次,传完再采集,人的眼睛也就30多毫秒的反应时间,再快也没有多大的意义

出0入1209汤圆

发表于 2022-10-9 15:06:20 | 显示全部楼层
最简单的波特率提高不就好了么?

出0入475汤圆

发表于 2022-10-9 16:16:11 来自手机 | 显示全部楼层
按照你最快的采样30us2个字节的话,一秒钟也就6、70kB左右吧,这样也就是6、700kbps,好多usb转串口的芯片都支持1M以上的波特率,当然如果你是电脑自带的串口肯定不行了,如果你已经用了usb,那就毫无压力了

出0入475汤圆

发表于 2022-10-9 16:24:03 来自手机 | 显示全部楼层
开始看标题以为你是10Gt20G的采样呢,那才叫那么快那么多。。。
:)

出0入0汤圆

发表于 2022-10-9 16:24:10 来自手机 | 显示全部楼层
usb或以太网

出700入127汤圆

发表于 2022-10-9 16:28:18 | 显示全部楼层
4000多kbps的usb芯片都有。

出0入55汤圆

 楼主| 发表于 2022-10-9 16:34:12 | 显示全部楼层
1a2b3c 发表于 2022-10-9 16:16
按照你最快的采样30us2个字节的话,一秒钟也就6、70kB左右吧,这样也就是6、700kbps,好多usb转串口的芯片 ...
(引用自5楼)

我用的是FT232RL-REEL,这个可以吧?

出0入55汤圆

 楼主| 发表于 2022-10-9 16:34:40 | 显示全部楼层
1a2b3c 发表于 2022-10-9 16:24
开始看标题以为你是10Gt20G的采样呢,那才叫那么快那么多。。。
:)
(引用自6楼)

见笑见笑

出0入442汤圆

发表于 2022-10-9 16:41:33 来自手机 | 显示全部楼层
1a2b3c 发表于 2022-10-9 16:16
按照你最快的采样30us2个字节的话,一秒钟也就6、70kB左右吧,这样也就是6、700kbps,好多usb转串口的芯片 ...
(引用自5楼)

usb串口受限于hid协议,速率上限不超过50kb左右。

出0入475汤圆

发表于 2022-10-9 16:48:28 来自手机 | 显示全部楼层
jssd 发表于 2022-10-9 16:34
我用的是FT232RL-REEL,这个可以吧?
(引用自9楼)

印象中是3M,你试试看就知道了

出0入475汤圆

发表于 2022-10-9 16:51:22 来自手机 | 显示全部楼层
wye11083 发表于 2022-10-9 16:41
usb串口受限于hid协议,速率上限不超过50kb左右。
(引用自11楼)

我不知道hid有啥区别,我只知道FT的肯定我一直使用的3Mbps在跑,你说50k的话那还不如标准串口?
或者说是因为你说的hid原因,是的话,为啥非的hid,虚拟串口不可以吗

出235入235汤圆

发表于 2022-10-9 17:26:15 | 显示全部楼层
类似示波器,其实大多数应用不需要完整的数据的。。比如在线监控的时候,虽然ADC很快,但需要抽样显示。。屏幕可视范围就那没多,控制采样率、存储深度这些吧。。或者触发采集,认为有价值的数据才上传,减少上位机的工作量。。大量无用数据,对数据处理负担也大。

出0入55汤圆

 楼主| 发表于 2022-10-9 17:34:39 | 显示全部楼层
lyping1987 发表于 2022-10-9 17:26
类似示波器,其实大多数应用不需要完整的数据的。。比如在线监控的时候,虽然ADC很快,但需要抽样显示。。 ...
(引用自14楼)

明白,谢谢!有用数据就全部显示,没用的就采样显示就好

出0入442汤圆

发表于 2022-10-9 18:12:17 来自手机 | 显示全部楼层
1a2b3c 发表于 2022-10-9 16:51
我不知道hid有啥区别,我只知道FT的肯定我一直使用的3Mbps在跑,你说50k的话那还不如标准串口?
或者说是 ...

(引用自13楼)

你收真3m速率的数据试试。。丢包丢晕你。只能用bulk去收高速数据流。hid协议不行(usb cdc是属于hid协议的)。怪不得,ft可能走的自己的协议,需要用专门的驱动。

hid协议太弱鸡了,不知道m$当年设计hid时在想什么。标准hid fs上限64b*1024,hs上限好像是512b*1024。

出0入475汤圆

发表于 2022-10-9 19:12:57 来自手机 | 显示全部楼层
wye11083 发表于 2022-10-9 18:12
你收真3m速率的数据试试。。丢包丢晕你。只能用bulk去收高速数据流。hid协议不行(usb cdc是属于hid协议 ...
(引用自16楼)

首先肯定是3M的串口波形,我硬件出来的就是333ns的最窄一个bit,这个没有任何疑问。至于到丢没有丢,至少少量数据测试过(10来MB左右)是没有丢的,因为我的应用恰好就是把数据通过无线通道传输后在电脑上面来看发送的数据和接收的数据是不是一样,所以这中间肯定不可能丢包,否则我的数据传输就发送的和接收到的不会相等了。
到底是不是特殊驱动,这个真不懂,不是几乎所有的usb转串口的芯片都需要厂家提供驱动的吗?虽然现在流行的芯片,在高一些的操作系统(比如win7以后)上都自带了驱动。

出0入309汤圆

发表于 2022-10-10 01:58:38 来自手机 | 显示全部楼层
我记得我几年前用ft232跑高速uart(1.5M)必须用D2xx驱动配合dll调用api操作,默认的串口不行。不知道现在改了没有。
最近我测试过ch343,直接装上随便用什么软件都行。

出700入127汤圆

发表于 2022-10-10 05:06:50 | 显示全部楼层
XR21V1410IL16这芯片标 FULL USB速率的。 我没试过

出0入663汤圆

发表于 2022-10-10 05:44:14 | 显示全部楼层
wye11083 发表于 2022-10-9 18:12
你收真3m速率的数据试试。。丢包丢晕你。只能用bulk去收高速数据流。hid协议不行(usb cdc是属于hid协议 ...
(引用自16楼)

USB CDC是走bulk的,interrupt是用于那几个流控信号,不走数据的。

出0入37汤圆

发表于 2022-10-10 09:24:22 | 显示全部楼层
即便是最高级的示波器也有一个技术指标叫捕获率,也就是所有信号,我一段段采集,只能处理我采集到的,其他的只能抛弃。当然前提是信号是周期的。

如果的确需全部信号的重现,那么需要更快的传输速度,在特殊行业高速高精度的数据采样,都用FPGA+千兆网或者FPGA+高速存储卡的方式。

出0入57汤圆

发表于 2022-10-10 13:42:12 | 显示全部楼层
wye11083 发表于 2022-10-9 18:12
你收真3m速率的数据试试。。丢包丢晕你。只能用bulk去收高速数据流。hid协议不行(usb cdc是属于hid协议 ...
(引用自16楼)

232应该用的是专用协议。我的232跑2-4M,一直持续不断的数据流,没发现过任何问题

出0入89汤圆

发表于 2022-10-10 19:36:03 | 显示全部楼层
采集的再多你能看到的也就显示器那么大面积,显示器再大也就那1000多个点,为什么你要把几十万个点都传送过去呢。  为什么示波器要选择分辨率?显然是有原因的。

出0入475汤圆

发表于 2022-10-10 22:24:42 来自手机 | 显示全部楼层
szjqt 发表于 2022-10-10 19:36
采集的再多你能看到的也就显示器那么大面积,显示器再大也就那1000多个点,为什么你要把几十万个点都传送过 ...
(引用自23楼)

我开始也想像你这样问楼主,不过仔细看了下他的描述,我想其实他并不是要做示波器的东西,他只是说了显示波形,估计好多人都想象成示波器的作用了,其实他应该写成显示曲线就好理解了,如果楼主是这个意思,建议修改,免得大家误解。。。哈

出0入0汤圆

发表于 2022-10-13 21:40:01 | 显示全部楼层
30us对应30K  30K*2字节*10位=600Kbps, 串口波特率用1M就行了。肯定来得及啊。

出0入0汤圆

发表于 2022-10-13 21:42:28 | 显示全部楼层
wye11083 发表于 2022-10-9 16:41
usb串口受限于hid协议,速率上限不超过50kb左右。
(引用自11楼)

USB串口哪来的HID。。。
免驱那个标准CDC接口的是批量传输,自己用USB单片机做。商品芯片都不是免驱那个,是自定义设备,需要安装驱动才能识别,依然是用批量传输。

出0入442汤圆

发表于 2022-10-13 22:22:13 来自手机 | 显示全部楼层
huangqi412 发表于 2022-10-13 21:42
USB串口哪来的HID。。。
免驱那个标准CDC接口的是批量传输,自己用USB单片机做。商品芯片都不是免驱那个 ...

(引用自26楼)

免驱明明是中断传输。。欺负我没做过?!

出0入309汤圆

发表于 2022-10-14 08:12:20 | 显示全部楼层
wye11083 发表于 2022-10-13 22:22
免驱明明是中断传输。。欺负我没做过?!
(引用自27楼)

您可能记错了


特别是使用AVR用VUSB模拟CDC串口的时候,由于USB标准禁止低速设备用Bulk传输,有很多电脑是不能直接识别模拟的串口,需要中间插一个HUB中转。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2022-10-14 08:47:46 来自手机 | 显示全部楼层
wye11083 发表于 2022-10-13 22:22
免驱明明是中断传输。。欺负我没做过?!
(引用自27楼)

那你可能真。。。
免驱那个cdc各个单片机都有例程的。
而且,明显ch340 ft232这样商业串口芯片才是讨论的目标芯片,哪个商业芯片不是自定义设备要装驱动?都自定义设备了还要提厂家出谋划策用哪种传输吗?

出0入442汤圆

发表于 2022-10-14 15:00:56 来自手机 | 显示全部楼层
iamseer 发表于 2022-10-14 08:12
您可能记错了



(引用自28楼)

cypress fx2的话确实是走ep0中断端点。

出0入309汤圆

发表于 2022-10-14 18:01:25 | 显示全部楼层
wye11083 发表于 2022-10-14 15:00
cypress fx2的话确实是走ep0中断端点。
(引用自30楼)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入442汤圆

发表于 2022-10-14 18:25:46 来自手机 | 显示全部楼层
iamseer 发表于 2022-10-14 18:01

(引用自31楼)

我回去查查工程

出0入8汤圆

发表于 2022-10-15 13:03:55 来自手机 | 显示全部楼层
光纤,数据量大了走PCI-E通道,再大就直接插内存插座上伪装成内存条直接走前端总线

出0入228汤圆

发表于 2022-10-16 05:58:40 来自手机 | 显示全部楼层
看工业相机,
lvds
千m网
万m网
最low才用usb
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-6-1 09:38

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表