现有一批单片机,带有网络模块,可通过 gprs/wifi 等网络模块以 tcp/ip 协议向 tcp server 发送数据,亦可接收 tcp server 的指令进而控制硬件。
现在需要有一个页面向单片机发送指令,单片机执行指令后返回执行结果,页面需要即时显示,以便确认指令是否发送/执行成功。
现有的做法是建立一个 webserver,这个 webserver 接收页面上对指定单片机的请求,将请求解析成指令,然后保存在 redis 队列中,tcp server 轮询这个 redis 队列,检测到队列有值时,将指令发送给对应的单片机。这样的流程可以给单片机发送指令,但是不能即时将单片机对指令的执行结果返回值反馈到页面上。
主要是有多个单片机,单片机只能使用 tcp/ip 发送和接收数据,如果是一台单片机且有固定 ip,那可以在单片机上搭建 webserver 来接收请求并执行。
请问没有比较好的方法实现这个流程?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.