10 关于TCPIP 中数据收发问题?

发布于 2020-09-10 09:15:11

请问一个问题,我在裸机程序中,当PC发送来消息的时候,我会在中断中处理,并把消息缓存解析,执行相应操作后返回。
那么我现在用的 rtthread实时操作系统,当外部消息来了之后怎么办呢?
用的 rtt 提供的接口,
发送: ret = send(sock, send_data, strlen(send_data), 0);
接收:bytes_received = recv(sock, recv_data, BUFSZ - 1, 0);
我已经实现程序启动后,连接socket,两个线程向PC发送数据。

但是接收怎么办呢,在不影响程序实时性的情况下我怎么办,比较稳妥呢?

查看更多

关注者
0
被浏览
128
2 个回答
森森胡
森森胡 2020-09-10

接收是PC机接收吗

小半仙
小半仙 2020-09-14

如果发送和接受的数据频率都不高,可以使用select加timeout,最简单就是分2个线程,接收线程阻塞接受就可以,接受函数就是recv,参考:https://www.rt-thread.org/document/site/application-note/components/network/an0011-network-started/#_5

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友