上位机通过TCP透传发送数据,下位机接收一次然后就断开连接

2019-07-21 04:10发布

使用的是8266的案例,上位机在循环下只能发送一次输出流给STM32,接着STM32就显示关闭连接了。
下面是上位机的代码
[mw_shl_code=java,true] public static void main(String[] args) throws IOException {
            //创建一个Socket,指定服务器端的ip和端口
            ServerSocket serverSocket = new ServerSocket(8086);
            while(true) {
                Socket socket = serverSocket.accept();
                Scanner input = new Scanner(System.in);
                System.out.println("请输入");
                String userName = input.nextLine();
                OutputStream os = socket.getOutputStream();
                //PrintWriter out = new PrintWriter(socket.getOutputStream(),true);
                DataOutputStream dos = new DataOutputStream(os);//封装一下os
                dos.write(userName.getBytes());
                //out.println(userName);
                dos.close();
                dos.flush();
            }
        }[/mw_shl_code]

下位机是8266的案例,
阿里旺旺图片20190320151020.jpg


下面是STM32显示的结果,当上位机发送“w”给下位机后,下位机连接就断开了
微信图片_20190320151056.jpg



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。