java串口接收(java如何接收串口数据)

华为云服务器特价优惠火热进行中!

2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。

合作流程:
1、点击链接注册/关联华为云账号:点击跳转
2、添加客服微信号:cloud7591,确定产品方案、价格方案、服务支持方案等;
3、客服协助购买,并拉微信技术服务群,享受一对一免费技术支持服务;
技术专家在金蝶、华为、腾讯原厂有多年工作经验,并已从事云计算服务8年,可对域名、备案、网站搭建、系统部署、AI人工智能、云资源规划等上云常见问题提供更专业靠谱的服务,对相应产品提供更优惠的报价和方案,欢迎咨询。

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

微信号:cloud7591
如需了解更多,欢迎添加客服微信咨询。
复制微信号

本文目录一览:

java 实现串口接收到数据,立马将接收到的数据通过mqtt上传到阿里云。

也不是特别麻烦,你先要清楚串口和服务器用的什么协议,假设串口用232,服务器采用TCP,那么你需要做的是建立一个客户端的发送模块,和一个串口的操作模块(结合必须要用到多线程,以队列或者委托来做数据交换);在测试之前一定要保证串口和客户端发送接收是ok的才能做结合功能。

因为你串口已经做好了,那你需要的是将采集到的数据(字符串)保存到数组中,然后创建一个指向数组的指针p,然后在客户端模块里,将发送的数据写成p。建议先将数据转16进制发,应该没毛病。

用java程序通过串口接收到的数据有问题

因为是流。。。。。。。如果想一起,就按一个分隔符,接收端再判断

byte[] buf = new byte[5]; //不写到循环内部。

while(true){

len = is.read(buf); //返回一个int值,代表接收到的字节数,数据存于buf中

if(len 0){

System.out.println("接收到的数据为: ");

System.out.println(new String(buf));

}

}

java通过串口接收数据,不正常。求大神指导

不要使用inputStream.available(),如果我没有记错的话,available返回的是没有被阻断的字节数(已经被缓冲的内容),可以尝试read(byte b[])方法,然后通过返回值是否-1来判断,如下。

    int bytesRead = inputStream.read(readBuffer);

    while (bytesRead != -1) {

        readStr += new String(readBuffer).trim();

        bytesRead = inputStream.read(readBuffer);

    }

在java的web程序中怎么使用串口通讯?

方法如下:

新建eclipse工程,添加comm.jar或者RXTXcomm.jar包。因为javacomm20-win32.zip包里有样例SimpleRead.java,可以通过这个例子测试串口是否正确。

接收数据正确后,根据传送接收双方的协议,采用CRC循环校验,根据传输的一方的校验函数判定是否是正确传输。

把正确结束的数据解析,查看自己指定的通讯规则,然后解析。

插入数据库,jdbc插入。

数据统计,定时统计每小时,每天,每月,每年的平均值,采用quartz服务来实现。

建立web工程,采用hibernate3,spring3,dwr技术把数据库数据动态显示,图表采用jfreechart,以及AJAX的运用

java优点:

java是纯面向对象编程的语言;

平台无关性 (一次编译,到处运行;Write Once,Run Anywhere);

java提供了许多内置的类库,通过这些类库,简化了开发人员的设计工作,同时缩短了项目开发时间;

提供了对Web应用开发的支持,例如,Applet,Servlet,和JSP可以用来开发Web应用程序,,Socket,RMI可以用来开发分布式应用程序的类库;

去除了c++中难以理解,容易混淆的特性(如c++中的多继承,头文件,指针,结构,单元,运算符重载,虚拟基础类,使得程序更加严谨,整洁。

JAVA中串口通信接受数据时 Inputstream.read(new byte[20])

你用循环判断一下,判断是不是默认值,当是默认值就退出,用变量记录一下循环的次数,就代表

数据的长度,取的时候只取那么长的就行了,我上次找到了的,代码被我删了,我再找找默认值,好

像是/u.....

实际上是0,但是数据中有0的话就不行

import java.net.*;

import java.io.*;

 class tcpchuanshu  {

public static void main(String[] args) throws Exception {

Socket s=new Socket("127.0.0.1",9000);

OutputStream out=s.getOutputStream();

//向输出流中写入数据

out.write("你好,服务端".getBytes());

//获取输入流数据

InputStream in=s.getInputStream();

byte[] buf=new byte[1024];

int len=0;

while((len=in.read(buf))!=-1)

{

System.out.println(new String(buf,0,len));

}

s.close();

}

}

import java.io.InputStream;

import java.io.OutputStream;

import java.net.ServerSocket;

import java.net.Socket;

class Server

{

public static void main(String[] args) throws Exception {

ServerSocket ss=new ServerSocket(9000);

System.out.println("我是服务端,监听9000端口");

Socket s=ss.accept();

System.out.println("有客户端连接");

InputStream in=s.getInputStream();

int len=0;

byte[] buf=new byte[1024];

in.read(buf);

while(buf[len]!=0)

{

len++;

}

System.out.println(new String(buf,0,len));

OutputStream out=s.getOutputStream();

out.write("你也好".getBytes());

s.close();

}

}

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

发布于 2023-03-07 22:03:06
收藏
分享
海报
61
目录

    忘记密码?

    图形验证码

    复制成功
    微信号: cloud7591
    如需了解更多,欢迎添加客服微信咨询。
    我知道了