OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2621|回复: 3

关于串口速度及高速采样,如何提速

[复制链接]

3

主题

8

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2019-3-6
在线时间
11 小时
发表于 2019-11-29 08:56:20 | 显示全部楼层 |阅读模式
10金钱
1.目前使用一颗AD7606芯片,理论每个通道200ksps,使用SPI连接,实际转换速度速度可达5925sample/s
2.串口使用FIFO输出,没有使用DMA,实测发送至串口监视器可达1100sample/s
3.使用串口波特率500000或者1000000效果一样,只能1100sample/s。用单纯数据替代采样发送串口,得到的数据也是1100sample/s,排除AD采样耗时。
4.想请问下,像我这种情况,接下来怎么处理才能提高串口速度。

DMA?还是其他方法。另请问大家都是怎么处理1M及以上的AD芯片,怎么转化到上位机的。
8通道,串口希望得到数据格式 “A11112222333344445555666677778888B”。
微信图片_20191129085353.png

最佳答案

查看完整内容[请看2#楼]

1 可以使用STM32 USB虚拟串口(串口的操作,usb的速度 目前使用500kB/S) 解决相对大点数据传输问题 2 串口传输数据速度太高可能会出现错误现象。 3 USB传输数据量大,有些串口助手会卡死如sscom 大于1M采样率 很多使用总线挂载CPLD或者FPGA,先在cpld内部AD高速采集到SRAM,采集完后再由单片机总线读取数据。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

17

主题

587

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4467
金钱
4467
注册时间
2013-6-27
在线时间
565 小时
发表于 2019-11-29 08:56:21 | 显示全部楼层
1 可以使用STM32 USB虚拟串口(串口的操作,usb的速度 目前使用500kB/S) 解决相对大点数据传输问题
2 串口传输数据速度太高可能会出现错误现象。
3 USB传输数据量大,有些串口助手会卡死如sscom

大于1M采样率  很多使用总线挂载CPLD或者FPGA,先在cpld内部AD高速采集到SRAM,采集完后再由单片机总线读取数据。
让我们的思维驾驭在电的速度之上!
回复

使用道具 举报

3

主题

8

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2019-3-6
在线时间
11 小时
 楼主| 发表于 2019-11-29 08:59:05 | 显示全部楼层
用的是STM32F103ZET6
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2019-11-30 02:42:13 | 显示全部楼层
用DMA采集,然后DMA串口发送,可以达到最快速度。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-24 21:05

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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