请教C语言中怎么把串口收到的一组数据比如3个或4个8位数据合为一个变量?

2020-01-23 14:41发布

如题,如何把串口接收到的比如上位机通讯传送过来一个65535(打个比方)他肯定是分成FF,和FF来发送的吧,但接收到后在怎么把他们重新组合起来,如果大于65535呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
xiaomage_2000
1楼-- · 2020-01-24 12:06
 精彩回答 2  元偷偷看……
oufuqiang
2楼-- · 2020-01-24 12:58
用指针可能会快点。
Eiman
3楼-- · 2020-01-24 18:42
用联合吧
flywater
4楼-- · 2020-01-24 23:00
实现方法很多:
1、unsinged char TAB1 []={ 0x20,0xd1,0xe3,0xee };
unsigned long *i;
i=TAB1;
*i就是你要组合的数;

2、用memcpy(i,TAB1,4);

3、最好还是用union来实现,具体方法请在坛子里搜一下,重复输入好多次了。
xiaobendan
5楼-- · 2020-01-25 04:10
9楼10楼的方法都行
728196
6楼-- · 2020-01-25 09:36
 精彩回答 2  元偷偷看……

一周热门 更多>