微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于Java语言的51单片机串口通讯PC机程序

基于Java语言的51单片机串口通讯PC机程序

时间:11-20 来源:互联网 点击:

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:

StringBuffer readBuffer = new StringBuffer();

String scannedInput = null;

int c;

try {

while ((c = inputStream.read()) != 0x00 && c != 0x0D && c != 0x0A) {

readBuffer.append( (char) c);//数据包以回车或者换行表示结束

}

scannedInput = readBuffer.toString();

ioBean.Receiver.append("\n" + scannedInput);

TimeStamp = new java.util.Date().toString();

System.out.println(TimeStamp + ": scanned input received:" + scannedInput);

inputStream.close();

} catch (IOException e) {}

break;

}

}

4.测试程序

程序运行后如图四所示。

为了方便程序运行,我们作一个批处理文件,和程序生成的jar文件放在一个目录里,这样就可以很方便的在含有Java虚拟机的系统里运行我们的程序了。可以将JBuilder运行窗口(Messages)的信息直接拷贝过来,当然也可以自己建立。

我的批处理文件如下所示:

@echo off

@REM设置路径包括Java虚拟机和程序jar文件路径

set path=%JAVA_HOME%\bin

set classpath=%cd%\comm.jar

@REM运行程序,注意在主程序前增加包名,否则找不到主函数

echo Now initializing the program,please wait a minite...

java comm.CommApplication

图4 Test my programme

4展望

Java作为一个逐渐成熟的程序设计语言,在网络和嵌入式系统越来越多地得到广泛的应用,但是微机底层程序开发发展缓慢。本文应用Java作为串口上位机程序开发语言,是考虑到Java语言的各种优越性,主要是其平台无关性,强大的可移植性,这一点在不久的将来会受到更多的重视。

本文代码可免费使用,如果需要本文程序的源代码,请于本作者联系,gooseli@163.com。

参考资料:

1.A How-To on Accessing serial ports in the Windows environment using the Java Communications API,By Rick Proctor,www.borland.com,2004年3月14日,http://bdn.borland.com/article/0,1410,31915,00.html

2.The Java Communications API Documentations,www.sun.com,2004年11月

3.JBuilder 9集成开发实例解析,张洪斌编,机械工业出版社,2004年1月

4.精通JBuilder 9,飞思科技产品研发中心编,电子工业出版社,2003年8月

5.单片微机原理及应用,丁元杰、赵秀菊、陈瀛清编,机械工业出版社,1999年8月

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top