资源简介
从串口读取传感器采集到的温湿度数据,然后存入数据库,代码可以运行我采集成功了
代码片段和文件信息
import java.io.*;
import java.util.*;
import javax.comm.*;
import java.util.ArrayList;
import java.sql.*;
public class SimpleRead implements Runnable SerialPortEventListener {
static CommPortIdentifier portId;
static Enumeration portList;
InputStream inputStream;
SerialPort serialPort;
Thread readThread;
SensorNode sn;
int flag;
int id;
String i;
static Statement stmt;
static double tmaxhmax;
public static void main(String[] args) {
boolean portFound = false;
String defaultPort = “COM1“;
if (args.length > 0) {
defaultPort = args[0];
}
portList = CommPortIdentifier.getPortIdentifiers();
while (portList.hasMoreElements()) {
portId = (CommPortIdentifier) portList.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
if (portId.getName().equals(defaultPort)) {
System.out.println(“Found port: “+defaultPort);
portFound = true;
SimpleRead reader = new SimpleRead();
}
}
}
if (!portFound) {
System.out.println(“port “ + defaultPort + “ not found.“);
}
}
public SimpleRead() {
flag=0;
sn=new SensorNode();
try {
serialPort = (SerialPort) portId.open(“SimpleReadApp“ 2000);
} catch (PortInUseException e) {}
try {
inputStream = serialPort.getInputStream();
} catch (IOException e) {}
try {
serialPort.addEventListener(this);
} catch (TooManyListenersException e) {}
serialPort.notifyondataavailable(true);
try {
serialPort.setSerialPortParams(9600 SerialPort.DATABITS_8
SerialPort.STOPBITS_1
SerialPort.PARITY_NONE);
} catch (UnsupportedCommOperationException e) {}
readThread = new Thread(this);
readThread.start();
}
public void run() {
try {
Thread.sleep(20000);
} catch (InterruptedException e) {}
}
public void serialEvent(SerialPortEvent event) {
switch (event.getEventType()) {
case SerialPortEvent.BI:
case SerialPortEvent.OE:
case SerialPortEvent.FE:
case SerialPortEvent.PE:
case SerialPortEvent.CD:
case SerialPortEvent.CTS:
case SerialPortEvent.DSR:
case SerialPortEvent.RI:
case SerialPortEvent.OUTPUT_BUFFER_EMPTY:
break;
case SerialPortEvent.DATA_AVAILABLE:
byte[] readBuffer = new byte[20];
String ts=new String();
try {
while (inputStream.available() > 0) {
int numBytes = inputStream.read(readBuffer);
ts=ts+toHex(readBuffernumBytes);
}
if(flag==0){
if(ts.startsWith(“37“)){
flag=1;
sn.clearAll();
sn.setType(swap(ts.sub
- 上一篇:基于P2P的局域网即时通信系统 java实现源码
- 下一篇:文件输出与读入
相关资源
- 指纹传感器FPC1080在android下的驱动
- Android 项目源码利用加速度传感器实
- j2ee实验-模拟传感器的Web程序-servlet
- Android项目源码利用加速度传感器实现
- Android 百度地图 SDK v3.0.0 二 定位与结
- android传感器高级编程
- 基于STM32F103的MAX30205人体体温传感器的
- 传感器有关大作业项目
- 光照传感器的使用
- android usb转rs232驱动
- 基于stm32室内温湿度监测——毕设
- Android 水准仪方向传感器
- 我的Android进阶之旅------>Android利用温
- 基于MEMS加速度传感器的计步器毕设
- Android项目源码利用加速度传感器实现
- Android记录wifi信号强度,磁场传感器,
- 使用android手机陀螺仪传感器获得手机
- Android之通过距离传感器控制屏幕熄灭
- 打开摄像头并在预览画面上显示传感
- Android传感器实战-简易指南针
- Android通过上面的距离传感器控制手机
- 通过Google内置计步器和加速度传感器
- Android开发-Sensor传感器-AndroidStudio(一
- 传感器融合论文
- android各传感器开发,显示返回数据
- android数据采集功能
- Android传感器开发与智能设备案例实战
- android计步小程序
- Android开发-Sensor传感器-AndroidStudio(二
- Android 磁场指南针(传感器-12_106)
评论
共有 条评论