OpenEdv-开源电子网

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

串口一次性接受多位数据,如何用数组保存

[复制链接]

1

主题

1

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2023-4-29
在线时间
2 小时
发表于 2023-5-27 10:51:55 | 显示全部楼层 |阅读模式
2金钱
使用一个模块,想通过串口二接受数据,将数据以数组形式保存,然后对数组做处理。
实际使用发现,这个模块的数据是38位的,但串口中断函数一次只进入12次,这就没办法用数组递增的方式来接受数据,还有什么其它办法吗?
目的是想通过硬件来处理模块的数据,数据为38位。  PS:换行操作符和重定向的printf函数都会影响数据。

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

821

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3329
金钱
3329
注册时间
2011-11-10
在线时间
207 小时
发表于 2023-5-29 09:21:15 | 显示全部楼层
38bit可以分成5*8bit发送啊。
回复

使用道具 举报

11

主题

2103

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4588
金钱
4588
注册时间
2015-1-10
在线时间
574 小时
发表于 2023-5-29 10:38:57 | 显示全部楼层
38位?38bit?这种的话要么你用IO模拟,要么就FPGA解析了
回复

使用道具 举报

28

主题

360

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1027
金钱
1027
注册时间
2021-2-4
在线时间
146 小时
发表于 2023-5-29 16:40:43 | 显示全部楼层
什么叫 串口中断函数一次只进入12次 不是很明白这句话
串口接收中断不是有一位数据进入一次 然后清除标志位吗?
没有什么限制吧,是串口速度跟不上吗?
我用的数组来保存串口屏发过来的很长的指令都没有问题啊
回复

使用道具 举报

3

主题

800

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3775
金钱
3775
注册时间
2017-3-7
在线时间
1645 小时
发表于 2023-5-30 08:29:21 | 显示全部楼层
38bit还是38byte要确认清楚,真是bit的话,需要用定时器模拟了,byte的话,应该不会少进中断这种情况,建议用逻辑分析仪或示波器抓抓波形,看看是哪的问题
回复

使用道具 举报

9

主题

245

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1221
金钱
1221
注册时间
2014-11-25
在线时间
173 小时
发表于 2023-5-31 16:00:32 | 显示全部楼层
为什么要用串口,用管脚中断来采集数据
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-24 06:21

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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