OpenEdv-开源电子网

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

多个串口接收数据时间同步问题

[复制链接]

3

主题

16

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2013-11-12
在线时间
2 小时
发表于 2018-4-16 18:54:41 | 显示全部楼层 |阅读模式
20金钱
请问一下,我的stm32f103做移动定位,有两个串口要同时接收不同传感器发送过来的数据,传感器1是GPS以1Hz频率发送信息,传感器2发送频率可能不固定(大概也是1Hz),我现在想让传感器2的数据跟传感器1的数据进行计算,但如果传感器1和传感器2的数据不是同一时刻的计算就会有误差,请问有什么方案可以使这两个传感器的数据为同一时刻的呢?

感觉单片机上是控制不了了?如果单片机不能控制,那么提高传感器1或传感器2的发送频率有没有用呢?
请各位大神赐教!

最佳答案

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

同时除非用dma,否则就是不同时的,mcu只能单线程。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2018-4-16 18:54:42 | 显示全部楼层
同时除非用dma,否则就是不同时的,mcu只能单线程。
回复

使用道具 举报

3

主题

16

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2013-11-12
在线时间
2 小时
 楼主| 发表于 2018-4-17 16:17:30 | 显示全部楼层
正点原子 发表于 2018-4-17 01:28
同时除非用dma,否则就是不同时的,mcu只能单线程。

谢谢原子哥,不过同时用dma是什么意思?我的单片机主要是接收而不是发送
回复

使用道具 举报

3

主题

96

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
293
金钱
293
注册时间
2016-9-1
在线时间
53 小时
发表于 2018-4-17 17:03:01 | 显示全部楼层
DMA就是接受啊,在DMA中同时接受串口1和串口2,只需要建立两个缓存数组就行
回复

使用道具 举报

3

主题

16

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2013-11-12
在线时间
2 小时
 楼主| 发表于 2018-4-17 18:29:30 | 显示全部楼层
利弊 发表于 2018-4-17 17:03
DMA就是接受啊,在DMA中同时接受串口1和串口2,只需要建立两个缓存数组就行

可是串口1和串口2的数据不一定同时到来呀
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2018-4-18 00:58:51 | 显示全部楼层
起步stm32 发表于 2018-4-17 18:29
可是串口1和串口2的数据不一定同时到来呀

来不来没关系,设置好DMA,他会自动处理的。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-8 09:12

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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