WIFI技术学习
直播中

梁宏满

7年用户 922经验值
私信 关注
[问答]

两个STM32服务器如何连接做客户端的stm32?

通信如图所示。三个STM32是在一个板子上的,wifi 为esp8266模块。
两个stm32做服务器和一个做客户端。内部通信用tcp/ip。
现在有几个疑问:
1.上位机通过路由,把命令给有WIFI通信的STM32,这时候WIFI应该是做为STA模式,子模式下它应该是TCP 客户端模式还是服务器模式。
因为WIFI接收的信号实际是串口接收的BUF里面。那么应该信号应该怎么转给这个stm32的网络下TCP客户端?
就是硬件上应该如何处理。(本来有线的话RJ45接路由就可以了。)
2.硬件上,两个STM32服务器,如何连接做客户端的stm32?
不知道我说明白了没,大概意思就这样。

回帖(4)

李辉

2019-5-13 09:57:29
问题已解决
举报

颜婷

2019-5-13 10:04:28
你得弄明白一个概念。是客户端发起connet服务器申请。服务器一直处于监听状态,收到请求才握手建立连接,然后通讯。你客户端还想connect不同的服务器IP?我就不说别的,,esp8266有那能力做三个socket吗??
举报

韩宁

2019-5-13 10:17:43
为什么不可以呢。我给客户端创建三个线程,三个端口号,对应和哪个个服务器连接的时候,再连接。我本意并不是用esp8266来做三个soket,而是通过esp8266得到上位机的命令,然后给客户端,然后分给两个CPU。因为我之前做过一个项目就是一个客户端连接两个服务器,实现了两线程通讯。如果换成三个stm32板子,通过交换器这样的我会做,也能实现。现在就是在一个板子上,有加了WIFI。不知道该怎么处理我那两个疑问。
举报

李维兴

2019-5-13 10:31:00
也许是我想复杂了。我的另一个方案,不用TCP/IP,板内通讯用串口,上面那个做客户端的32,接受上位机WIFI发来的命令,只要把命令广播给其他两个CPU(它俩可以接受相同的命令帧),这样做就是给上位机回复数据的时候不太好处理。朋友看这样可以吗?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分