「java串口编程」java串口编程linux

博主:adminadmin 2022-11-27 09:02:05 71

本篇文章给大家谈谈java串口编程,以及java串口编程linux对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java串口编程中只能用InputStream来读串口来的数据吗?

这两个方法都是阻塞式的方法,readline 方法在流关闭或者缓冲区填满之前,除非遇到回车或换行(\n 或\r)才会返回数据,否则就会一直阻塞在那里等待数据

inputstream的read方法同样是阻塞式方法,当流没有关闭时,他就会一直在那里阻塞等待数据。

试试多线程处理数据流,这样就不需要一直等待流输入了;或者在设备那边每次传输完成都关闭流,但是每次都开启关闭流好像消耗略大

在Linux下怎么用Java进行串口编程

使用串口协议登录Linux终端控制台,通过Zmodem文件传输协议接收一个外部文件。 命令:rz -y 会弹出文件浏览窗口,选择要上传的文件即可。 -y 表示若文件已存在,则覆盖。

java串口编程,数据收发

下面是C写的供你参考:

1.TCP流式套接字的编程步骤

在使用之前须链接库函数:工程-设置-Link-输入ws2_32.lib,OK!

SOCKET sockSrv=socket(AF_INET,SOCK_STREAM,0);//创建套接字(socket)。

SOCKADDR_IN addrSrv;

addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY);//转换Unsigned short为网络字节序的格式

addrSrv.sin_family=AF_INET;

addrSrv.sin_port=htons(6000);

客户端代码如下:

#include Winsock2.h

#include stdio.h

void main()

{

WORD wVersionRequested;

WSADATA wsaData;

int err;

wVersionRequested = MAKEWORD( 1, 1 );

err = WSAStartup( wVersionRequested, wsaData );加载套接字库

if ( err != 0 ) {

return;

}

if ( LOBYTE( wsaData.wVersion ) != 1 ||

HIBYTE( wsaData.wVersion ) != 1 ) {

WSACleanup()( );

return;

}

SOCKET sockClient=socket(AF_INET,SOCK_STREAM,0);创建套接字(socket)。

SOCKADDR_IN addrSrv;

addrSrv.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");

addrSrv.sin_family=AF_INET;

addrSrv.sin_port=htons(6000);

connect(sockClient,(SOCKADDR*)addrSrv,sizeof(SOCKADDR));向服务器发出连接请求(connect)。

char recvBuf[100];和服务器端进行通信(send/recv)。

recv(sockClient,recvBuf,100,0);

printf("%s\n",recvBuf);

send(sockClient,"This is lisi",strlen("This is lisi")+1,0);

closesocket(sockClient);关闭套接字。

WSACleanup()();//必须调用这个函数清除参数

}

java串口编程的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java串口编程linux、java串口编程的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-27,除非注明,否则均为首码项目网原创文章,转载请注明出处。