- 浏览: 148864 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
august_000:
很有道理,我已经亲自测试过了:
public class ...
单例模式之线程安全解析 -
Chris_bing:
一个单例有这么多名堂,最后那个内部类的解决方案很有创意啊,受教 ...
单例模式之线程安全解析
笔记本ubuntu系统Java开发串口程序
一、 开发环境配置
由于笔记本没有串口,并且在ubuntu下没有虚拟串口软件(我没有找到~~~),所以需要用虚拟机安装ubuntu系统,我用的是VM ware 7.0,系统是ubuntu 11.04,当然宿主系统是XP SP3。
以下开发环境配置步骤:
1、 在XP下安装VSPD XP 5.1,增加一对串口COM1和COM2
2、 在XP下运行串口调试助手UartAssist,测试串口是否能够正常使用
3、 在XP下安装虚拟机VM ware 7.0,在虚拟机下安装ubuntu11.04,安装完成后关闭系统,点击“编辑虚拟机设置”,在接下来的步骤中点击“添加”,选择“串口”,选择“物理端口”,选择“COM1”,添加完成,确定
4、 如果第2步中串口调试助手正在连接COM1,断开COM1的连接,(如果不断开,虚拟机无法使用COM1),在XP下用UartAssist连接上COM2,波特率9600,8,1
5、 启动虚拟机,进入ubuntu系统(当然,首先要安装VM tools和eclipse),在Ubuntu软件中心中搜索串口测试软件CuteCom,并安装,在“应用程序”-“其他”中选择“CuteCom”,运行,Open串口“ttyS0”(这就是XP系统中的COM1,只不过两个系统中的名字不一样),设置波特率9600,8,1,打开串口
6、 在CuteCom中输入aaaaa,回车发送
7、 回到XP中,如果UartAssist正在监听COM2,那么会在UartAssist中接收到aaaaa
二、 编写程序测试
我使用的是rxtx包,需要在eclipse中进行相关配置
1、 创建一个工程,在工程中创建一个lib的文件夹,把RXTXcomm.jar和librxtxSerial.so、librxtxParallel.so复制到lib文件夹中
2、 右键点击工程,选择 properties –> build path ->Library , 将这三个文件add Jars ,点击RXTXcomm.jar左边的下三角,选择Native library location ,把它的目录设置为项目中lib的目录(这一步如果不能设置好,会出现错误:java.lang.UnsatisfiedLinkError: /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/i386/client/librxtxSerial.so: /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/i386/client/librxtxSerial.so: cannot open shared object file: Permission denied thrown while loading)
3、 创建一个类,这里我给出一个例子(对别人的适当修改)
运行此程序,在XP中UartAssist输入任意数据并发送就能在程序中看到结果了
4、 如果想在Ubuntu中用程序测试串口的输入输出,则需要在虚拟机中添加两个串口COM1和COM2,并且必须保证打开虚拟机之前,在XP系统中没有其他的程序(比如UartAssist)在使用这两个虚拟串口,否则会出错
5、 在Ubuntu中的eclipse中编写两个程序用来测试程序,需要在上个例子程序中分别打开ttyS0和ttyS1(分别对应XP中的COM1和COM2),两个程序调试串口的例子我会放在附件中
2011.6.15
一、 开发环境配置
由于笔记本没有串口,并且在ubuntu下没有虚拟串口软件(我没有找到~~~),所以需要用虚拟机安装ubuntu系统,我用的是VM ware 7.0,系统是ubuntu 11.04,当然宿主系统是XP SP3。
以下开发环境配置步骤:
1、 在XP下安装VSPD XP 5.1,增加一对串口COM1和COM2
2、 在XP下运行串口调试助手UartAssist,测试串口是否能够正常使用
3、 在XP下安装虚拟机VM ware 7.0,在虚拟机下安装ubuntu11.04,安装完成后关闭系统,点击“编辑虚拟机设置”,在接下来的步骤中点击“添加”,选择“串口”,选择“物理端口”,选择“COM1”,添加完成,确定
4、 如果第2步中串口调试助手正在连接COM1,断开COM1的连接,(如果不断开,虚拟机无法使用COM1),在XP下用UartAssist连接上COM2,波特率9600,8,1
5、 启动虚拟机,进入ubuntu系统(当然,首先要安装VM tools和eclipse),在Ubuntu软件中心中搜索串口测试软件CuteCom,并安装,在“应用程序”-“其他”中选择“CuteCom”,运行,Open串口“ttyS0”(这就是XP系统中的COM1,只不过两个系统中的名字不一样),设置波特率9600,8,1,打开串口
6、 在CuteCom中输入aaaaa,回车发送
7、 回到XP中,如果UartAssist正在监听COM2,那么会在UartAssist中接收到aaaaa
二、 编写程序测试
我使用的是rxtx包,需要在eclipse中进行相关配置
1、 创建一个工程,在工程中创建一个lib的文件夹,把RXTXcomm.jar和librxtxSerial.so、librxtxParallel.so复制到lib文件夹中
2、 右键点击工程,选择 properties –> build path ->Library , 将这三个文件add Jars ,点击RXTXcomm.jar左边的下三角,选择Native library location ,把它的目录设置为项目中lib的目录(这一步如果不能设置好,会出现错误:java.lang.UnsatisfiedLinkError: /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/i386/client/librxtxSerial.so: /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/i386/client/librxtxSerial.so: cannot open shared object file: Permission denied thrown while loading)
3、 创建一个类,这里我给出一个例子(对别人的适当修改)
package com.test; import gnu.io.CommPort; import gnu.io.CommPortIdentifier; import gnu.io.NoSuchPortException; import gnu.io.PortInUseException; import gnu.io.SerialPort; import gnu.io.SerialPortEvent; import gnu.io.SerialPortEventListener; import gnu.io.UnsupportedCommOperationException; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.Enumeration; import java.util.TooManyListenersException; public class SimpleRead2 implements SerialPortEventListener { //SerialPortEventListener 监听器,我的理解是独立开辟一个线程监听串口数据 static CommPortIdentifier portId; //串口通信管理类 static Enumeration portList; //已经连接上的端口的枚举 InputStream inputStream; //从串口来的输入流 OutputStream outputStream;//向串口输出的流 SerialPort serialPort; //串口的引用 public SimpleRead2() { try { portId = CommPortIdentifier.getPortIdentifier("/dev/ttyS0"); } catch (NoSuchPortException e1) { //没有这个串口 e1.printStackTrace(); } try { serialPort = (SerialPort) portId.open("myapp", 2000);//打开串口名字为myapp,延迟为2毫秒 } catch (PortInUseException e) { //串口正在使用 } try { inputStream = serialPort.getInputStream(); outputStream = serialPort.getOutputStream(); } catch (IOException e) { } try { serialPort.addEventListener(this); //给当前串口天加一个监听器 } catch (TooManyListenersException e) { } serialPort.notifyOnDataAvailable(true); //当有数据时通知 try { serialPort.setSerialPortParams(2400, SerialPort.DATABITS_8, //设置串口读写参数 SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); } catch (UnsupportedCommOperationException e) { } } public void serialEvent(SerialPortEvent event) {//SerialPortEventListener 的方法,监听的时候会不断执行 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[1000]; try { while (inputStream.available() > 0) { int numBytes = inputStream.read(readBuffer); } System.out.println(new String(readBuffer)); char[] a= {0x16,0x16,0x20,0x10,0x69,0x0,0x03,0x20,0x01,0x22}; byte[] b = new String(a).getBytes(); outputStream.write(b); } catch (IOException e) { } break; } } public static void main(String[] args) { SimpleRead2 reader = new SimpleRead2(); //实例一个 } }
运行此程序,在XP中UartAssist输入任意数据并发送就能在程序中看到结果了
4、 如果想在Ubuntu中用程序测试串口的输入输出,则需要在虚拟机中添加两个串口COM1和COM2,并且必须保证打开虚拟机之前,在XP系统中没有其他的程序(比如UartAssist)在使用这两个虚拟串口,否则会出错
5、 在Ubuntu中的eclipse中编写两个程序用来测试程序,需要在上个例子程序中分别打开ttyS0和ttyS1(分别对应XP中的COM1和COM2),两个程序调试串口的例子我会放在附件中
2011.6.15
- 串口调试例子程序.rar (7.2 KB)
- 下载次数: 7
发表评论
-
(转)Spring声明式事务配置详解
2013-11-11 16:45 1834Spring声明式事务功能应该是大家应用Spring中使用的最 ... -
(转)Java几款性能分析工具的对比
2013-11-01 14:26 1047来源:http://www.javaweb.cc/langua ... -
HashMap的遍历
2013-11-01 14:15 9111、新建一个HashMap Map<Integer , ... -
java将汉子转换成汉语拼音
2013-11-01 13:51 935import net.sourceforge.pinyin4j ... -
Spring加载properties文件的两种方式
2013-10-31 10:05 0在spring中可以通过下面的方式将配置文件中的项注入到配置中 ... -
动态加载spring .xml中的bean对象
2013-10-30 15:27 0在java中如何取得spring.xml中加载的bean对象? ... -
(转)Spring mvc+hibernate+freemarker(实战)
2013-10-28 19:40 1014http://zz563143188.iteye.com/bl ... -
(转)Java之美[从菜鸟到高手演变]系列之博文阅读导航
2013-10-28 17:00 1746Java之美[从菜鸟到高手演变]系列之博文阅读导航 http: ... -
(转)openssl 制作证书和签名java方法
2013-10-28 15:03 0Win32OpenSSL_Light-0_9_8k.exe ... -
(转)面向接口编程详解
2013-10-25 12:34 5老文章,自己学习。 面向接口编程详解(一) http://w ... -
(转)Java架构师之路:JAVA程序员必看的15本书
2013-10-08 18:24 0作为Java程序员来说,最 ... -
Java获取CPU ID和磁盘ID
2013-09-25 20:18 0原文链接:http://www.rgagnon.com/jav ... -
Java编程之备用程序段
2013-09-25 14:57 0记录一些程序段,供日常备用,持续增加中…… 1. Java中 ... -
(转)Java编程之AOP
2013-09-25 14:45 0链接: http://hw19886200.iteye.com ... -
Java编程之性能优化
2013-09-25 14:28 767最近的机器内存又爆满 ... -
使用axis2传输附件
2013-09-25 10:40 1078服务端Service文件: import java.io. ... -
Java应用程序项目打包成exe文件
2013-09-23 09:16 01.程序打包 首先将程序打成Jar包,打包命 ... -
(转)Java事务处理类型及差异总结
2013-09-18 13:54 1621一、什么是Java事务 ... -
JAVA文件_加密
2013-09-13 16:09 0import java.awt.*; import java ... -
(转)Java 实现Rsa 加密
2013-09-13 16:08 0import java.io.*; public class ...
相关推荐
在Ubuntu操作系统中,使用Qt开发串口程序是一个常见的任务,特别是在进行嵌入式系统开发或者设备通信时。Qt是一个强大的跨平台应用开发框架,支持多种操作系统,包括Linux。本篇文章将详细讲解如何在Ubuntu环境下...
### Ubuntu安装Java开发环境详细指南 #### 一、下载与准备 1. **下载JDK** ...通过以上步骤,可以在Ubuntu系统上成功安装并配置Java开发环境,包括JDK和Eclipse IDE,从而满足Java开发的基本需求。
在Ubuntu 16.04 LTS系统上安装和配置Eclipse以进行Java开发是一个程序员日常工作中常见的任务。这个压缩包"eclipse-java"应该包含了Eclipse IDE的特定版本,针对Java开发者优化。 首先,我们需要了解Java开发环境的...
在本篇指南中,我们将详细介绍如何在Ubuntu系统上搭建Java开发环境。这对于希望在Linux平台上进行Java应用开发的技术人员来说是必不可少的基础工作。本文将覆盖从选择合适的JDK版本、安装JDK到配置环境变量等步骤,...
在Ubuntu系统中搭建Java开发环境是一项基础且重要的工作,这对于任何想要在Linux环境下进行Java编程的开发者来说都是必要的。Ubuntu是基于Debian的开源操作系统,它提供了强大的命令行工具和丰富的软件包管理器,...
在Ubuntu 10系统中配置Java开发环境是一件非常重要的事情,本文将指导您如何在Ubuntu系统中配置Java开发环境(JDK+Eclipse)。在本文中,我将一步步地指导您完成JDK的安装和配置,以及Eclipse的安装和配置。 安装 ...
ubuntu下安装JAVA开发环境其实还是比较简单的,我们就以安装常用的jdk、eclipse、tomcat、svn client(找到一个可以和windows中的小乌龟类似的但安装还有点问题解决后会补上)、oracle client为例讲讲如何安装(相关...
标题中的“ubuntu下java可用的gdal库及使用示例代码”揭示了本文将要讨论的是如何在Ubuntu 10.04操作系统环境下,利用Java语言与GDAL(Geospatial Data Abstraction Library)库进行交互,从而实现对地理空间数据的...
在本文中,我们将深入探讨如何在Ubuntu操作系统下,利用C++编程语言开发一个上位机程序,通过串口通信来控制电机。这个程序是基于Qt框架中的QSerialPort类实现的,它允许我们与电机驱动板进行高效的数据交互。下面...
本文旨在为希望在 Ubuntu 12.04 系统上搭建 Java 开发环境的新手提供一份详细的指南。通过本教程,您将学习如何安装 JDK(Java Development Kit)、配置环境变量、安装 Tomcat 服务器以及 Eclipse IDE,最终构建一个...
在Ubuntu系统中搭建Java 7开发环境主要涉及的是如何通过PPA源来安装Oracle JDK 7。PPA(Personal Package Archives)是Ubuntu的一种扩展机制,它允许用户从第三方源安装软件包,使得软件的安装、更新更为方便。下面...
自己写的一个很简单的Ubuntu下读写串口的C++程序,有比较详细的注释,分享给大家参考
ubuntu12.04下Java开发环境的搭建
标题中的“ubuntu下的串口调试助手小软件”指的是在Ubuntu操作系统上开发的一种应用程序,它的主要功能是帮助用户进行串行通信的调试。串行通信是一种常见的数据传输方式,尤其在嵌入式系统、物联网设备以及老旧的...
Ubuntu 8.04用户可以通过终端或图形化的软件管理器来安装Sun的Java运行环境(Sun Java Runtime Environment, JRE)与Java开发工具包(Sun Java Development Kit, JDK)。通过终端安装JRE的命令为: ```bash sudo apt-...
在Linux环境下,尤其是Ubuntu操作系统中,将USB接口的设备识别为串行端口常常需要安装特定的驱动程序。USB转串口芯片是常见于将USB接口转换为标准RS-232串行端口的硬件设备,这类设备在嵌入式开发、数据采集和串口...