`
picasso.di
  • 浏览: 51047 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

MINA2官方教程翻译(7)传输特性之串口

    博客分类:
  • MINA
阅读更多

使用MINA2.0,你可以像编写基于TCP/IP的程序那样编写基于串口的程序。

 

获得MINA2.0

MINA 2.0的最终版本还没有release,但是你可以下载最新的版本。如果你希望从trunk构建代码,可以参考开发者指南。

 

前提

在访问串口之前,Java应用程序需要一个native库。MINA使用ftp://ftp.qbang.org/pub/rxtx/rxtx-2.1-7-bins-r2.zip,请把它放到你的JDK或JRE的lib/i386/下,并在程序启动的命令行中加入-Djava.library.path=来指定你的native库的位置。

 

连接到串口

串口通讯通过IoConnector来实现,这是有通讯媒介的点对点特性来决定的。我们假定你已经通过MINA的教程了解到了IoConnector的相关知识。连接到串口需要SerialConnector:

// create your connector
IoConnector connector = new SerialConnector()
connector.setHandler( ... here your buisness logic IoHandler ... );

与SocketConnector,并没有什么不同。让我们创建一个地址来连接串口:

SerialAddress portAddress=new SerialAddress( "/dev/ttyS0", 38400, 8, StopBits.BITS_1, Parity.NONE, FlowControl.NONE );

 第一个参数代表串口的标识符。对于Windows系统,串口一般叫做"COM1"、"COM2"以此类推,对于Linux或者一些Unix系统,通常由"/dev/ttyS0"、"/dev/ttyS1"、"/dev/ttyUSB0"来表示。

剩下的参数取决于你的硬件设备的连接特性。

  • 波特率
  • 数据位数
  • 奇偶校验
  • 流控制机制

当这些都具备,就可以连接到该地址:

ConnectFuture future = connector.connect( portAddress );
future.await();
IoSession sessin = future.getSession();

 其他的事情和使用TCP协议等一样,你可以加入你的filters和codecs。

 

 

3
0
分享到:
评论
2 楼 zfms 2012-05-25  
等待楼主解答?
1 楼 327646410 2012-03-13  
你好,mina2.0.4那个版本里,我没找到
org.apache.mina.transport.serial
有点搞不懂

相关推荐

    springboot mina 串口对接

    串口通信(Serial Communication)是指数据以串行的方式一位一位地传输,通常涉及RS-232、RS-485等标准。在SpringBoot集成Mina的场景下,我们可以利用Mina提供的API来读写串口数据,实现设备间的双向通信。 "Mina...

    mina-rxtx-2.2 实现串口通讯

    2. 创建串口服务端:在MINA中,可以通过`IoAcceptor`接口创建串口服务端。使用`NioSerialAcceptor`类,配置串口号、波特率、数据位、校验位和停止位等参数,然后启动监听。 3. 编写处理逻辑:当有连接请求到达时,...

    apache下的mina框架

    串口通信是MINA的一个独特特性,它允许开发者将串行端口用作网络通信的一种手段,这对于工业控制、自动化设备或者老旧系统的集成非常有用。 至于虚拟机内部的管道,MINA提供了内存中的通道,可以用于进程间通信或者...

    使用-Apache-MINA-2-开发网络应用

    Apache MINA 2 的核心特性之一是其事件驱动的 API 设计。这种设计将网络活动抽象为一系列事件,网络应用只需要关注并处理这些事件即可。例如,在服务端程序中,当有新的连接请求时,会触发 `sessionOpened` 事件;当...

    mina2.0.4框架

    2. **协议无关性**:MINA提供了一种抽象层,使得开发者可以轻松地切换底层传输协议,如TCP、UDP或串口,而无需修改业务逻辑代码。这对于开发跨平台、多协议的网络应用非常有利。 3. **丰富的过滤器链**:MINA中的...

    Mina2.0工作原理以及配置注意事项

    Mina通过Java NIO技术实现了对不同类型的网络传输(如TCP/IP和UDP/IP)的支持,并提供了一致且简洁的API接口。除了标准的网络通信外,Mina还支持串行通信(RS232)和虚拟机内的管道通信。这一特点使得Mina成为一个...

    Apache Mina Server 2.0 中文参考手册

    Apache Mina Server 2.0 是一个强大的网络通信框架,主要基于Java NIO技术,用于构建高性能、可扩展的TCP和UDP应用程序,同时也支持串口通信。Mina的核心特性包括非阻塞的异步传输模式,事件驱动机制,批量数据处理...

    socket框架调研文档

    Apache MINA是另一个用于开发高性能网络应用的框架,它基于Java NIO技术,支持TCP、UDP和串口通信,设计目标是提供高可用性和易用性。MINA与Netty一样,由Trustin Lee创建,但MINA的架构可能使得某些不必要的特性...

    java网络框架对比报告.pdf

    Mina提供了丰富的API,支持多种传输方式,如TCP/IP、UDP等,并且具备高度定制化的特性。 ##### 2.2 版本信息 - **1.x**: 包括1.0.x和1.1.x版本。 - **2.x**: 目前最新的稳定版本是2.0.x,本次研究中使用的版本为...

    openfire处理消息流程,及openfire详细信息.docx

    Apache MINA 是 Openfire 采用的网络应用程序框架,它为开发者提供了异步、事件驱动的网络编程接口,支持多种传输协议,如 TCP/IP、UDP/IP、串口通信以及虚拟机内部通信。MINA 的特性包括统一的 API、过滤器机制、...

    java开源包7

    Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、数据压缩、颜色转换、键盘鼠标事件转换等等。 最短路径算法实现 k-shortest-paths 这是一个实现了 Yen 的排名算法的无环路径的项目 ...

    java开源包2

    Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、数据压缩、颜色转换、键盘鼠标事件转换等等。 最短路径算法实现 k-shortest-paths 这是一个实现了 Yen 的排名算法的无环路径的项目 ...

    JAVA上百实例源码以及开源项目源代码

    EJB中JNDI的使用源码例子 1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件...

    java开源包1

    Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、数据压缩、颜色转换、键盘鼠标事件转换等等。 最短路径算法实现 k-shortest-paths 这是一个实现了 Yen 的排名算法的无环路径的项目 ...

    java开源包11

    Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、数据压缩、颜色转换、键盘鼠标事件转换等等。 最短路径算法实现 k-shortest-paths 这是一个实现了 Yen 的排名算法的无环路径的项目 ...

    java开源包3

    Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、数据压缩、颜色转换、键盘鼠标事件转换等等。 最短路径算法实现 k-shortest-paths 这是一个实现了 Yen 的排名算法的无环路径的项目 ...

    java开源包6

    Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、数据压缩、颜色转换、键盘鼠标事件转换等等。 最短路径算法实现 k-shortest-paths 这是一个实现了 Yen 的排名算法的无环路径的项目 ...

    java开源包5

    Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、数据压缩、颜色转换、键盘鼠标事件转换等等。 最短路径算法实现 k-shortest-paths 这是一个实现了 Yen 的排名算法的无环路径的项目 ...

    java开源包10

    Java Remote Desktop 是一个Java 的远程桌面软件,支持很多特性例如文件传输、数据压缩、颜色转换、键盘鼠标事件转换等等。 最短路径算法实现 k-shortest-paths 这是一个实现了 Yen 的排名算法的无环路径的项目 ...

Global site tag (gtag.js) - Google Analytics