找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2017|回复: 13
收起左侧

单片机多通道数据发送问题分析

[复制链接]
ID:491246 发表于 2019-4-18 10:24 | 显示全部楼层 |阅读模式
假如单片机采集了8个通道数据放到一个数组中,根据要求往外发送。
现在问题是全部发送没有问题,发送除某一通道外的全部数据不知道怎么实现,请问大家有什么好办法吗?
谢谢!
回复

使用道具 举报

ID:491246 发表于 2019-4-18 10:27 | 显示全部楼层
补充:
假如 data[32]={1,2,3,4,5,6...},共8个通道,每个通道4个字节数据,怎么才能发送除了某一通道外的数据?
回复

使用道具 举报

ID:310519 发表于 2019-4-18 11:46 | 显示全部楼层
下标时跳过不发送的。
回复

使用道具 举报

ID:158375 发表于 2019-4-18 12:47 | 显示全部楼层
楼上高招:通过下标区分不同的通道数据,想咋处理就咋处理!
回复

使用道具 举报

ID:123289 发表于 2019-4-18 13:08 | 显示全部楼层
自己定个协议就OK了。
例如:每次发两个字节,第一个字节是目的通道号,第二个字节是该通道的数据。
回复

使用道具 举报

ID:491246 发表于 2019-4-18 14:15 | 显示全部楼层
笨笨兔 发表于 2019-4-18 12:47
楼上高招:通过下标区分不同的通道数据,想咋处理就咋处理!

这个处理起来太复杂了吧,
比如:
8个通道全部发送,这个简单
除了通道1,其余的通道数据发送,这个也简单
除了通道1和3……
除了通道2和5和7……这些怎么处理
实际上每次读取的通道数不是固定的8个,是动态的,并且只能一次性读取多个通道值
回复

使用道具 举报

ID:52944 发表于 2019-4-18 14:32 | 显示全部楼层
通过数组的下标决定发送那个数据
回复

使用道具 举报

ID:308437 发表于 2019-4-18 15:22 | 显示全部楼层
如果是这样的话,可以再建多几个数组缓存数据。然后扫描标志位,根据不同的情况,使用不同的数组,就可以发不一样的数据了
回复

使用道具 举报

ID:491246 发表于 2019-4-18 16:24 | 显示全部楼层
yousunny 发表于 2019-4-18 15:22
如果是这样的话,可以再建多几个数组缓存数据。然后扫描标志位,根据不同的情况,使用不同的数组,就可以发 ...

目前就是这样处理的,也想不到好的方法了
回复

使用道具 举报

ID:310519 发表于 2019-4-18 20:27 | 显示全部楼层
mcuee 发表于 2019-4-18 14:15
这个处理起来太复杂了吧,
比如:
8个通道全部发送,这个简单

到底是“只能一次性读取8个通道的数据到数组,然后根据需要发送”,

还是“每次读取的通道数不是固定的8个,是动态的,并且只能一次性读取多个通道值”?
回复

使用道具 举报

ID:491246 发表于 2019-4-19 08:26 | 显示全部楼层
diy1997 发表于 2019-4-18 20:27
到底是“只能一次性读取8个通道的数据到数组,然后根据需要发送”,

还是“每次读取的通道数不是固定 ...

一次性最多只能读8个,可能某次只读了5个通道,需要发其中的2个通道
回复

使用道具 举报

ID:310519 发表于 2019-4-19 11:18 | 显示全部楼层
mcuee 发表于 2019-4-19 08:26
一次性最多只能读8个,可能某次只读了5个通道,需要发其中的2个通道

那你可以对你要发送的数据下标啊?

难道是我理解错了?
回复

使用道具 举报

ID:213173 发表于 2019-4-19 12:04 | 显示全部楼层
mcuee 发表于 2019-4-19 08:26
一次性最多只能读8个,可能某次只读了5个通道,需要发其中的2个通道

你这样的需求有点怪。可以定义一个二维数组,想发任意通道都行。
回复

使用道具 举报

ID:589585 发表于 2019-7-24 15:05 | 显示全部楼层
笨笨兔 发表于 2019-4-18 12:47
楼上高招:通过下标区分不同的通道数据,想咋处理就咋处理!

能举个例子吗,多谢
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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