安卓工业平板电脑之通信串口方案

2021-07-30 11:39:22 admin 24

安卓工业平板电脑之通信串口方案

   Android与串口设备通信的方案有四种:安卓工业平板电脑之通信串口方案

   第一种是直接用SDK的BluetoothSocket类来进行蓝牙通信,外部设备再用蓝牙转串口进行控制。这种方式有较高延时,蓝牙模块需要供电,低带宽。

   第二种是使用USB转RS232方式(使用内核驱动和使用Android驱动两种方式),这种方式不需要硬件改动,不需要另外的供电,延时很小且有较高带宽。但是Android设备需要硬件上支持USB Host接口(一般Android平板支持,Android手机一般是没有的),另外可能需要root以改变/dev/ttyUSB0文件权限来加载一个内核模块。开发需要使用android_serialport_api。

安卓工业平板串口

   第三种是最容易的方案,直接使用串口进行连接,但是这种方式兼容性不好,只有少数设备支持,而且串口不支持流控制(由Android提供的USB Host API决定的)。使用时也用android_serialport_api。

   第四种是将Android作为USB从机,外部设备作为USB主机与之通信,这种方式几乎与所有Android设备兼容(一般都有USB从口),无需root,低延迟,高带宽。

   Android串口全面解决方案:

   串口(RS-232/RS-485)主要用于工业测量和控制,计算机以及Windows正在部分被平板和Android代替,计算机串口也在逐步被Android串口取代。本文介绍了在Android下的几种串口解决方案。从连接方式上来分,分为无线和有线,无线又分为蓝牙和WiFi,有线分为主板自带和USB口扩展。从实现方式上来分,分为自带串口的专用设备、对通用设备进行串口扩展。如果是用于高可靠性要求的工业测控,有线串口是必须的。因为有线的抗干扰能力远远强于无线。如果用于日常的测控,无线则更加方便,因为无需布线。

   1、蓝牙串口转换器:BLU232型蓝牙/串口转换器只有DB-9/DB-9转接头大小,将android智能手机或者平板电脑的蓝牙信号转换出RS-232/RS-485口,无线通信距离10米。BLU232可以为带蓝牙的Android设备扩展出一个无线串口。1、将BLU232接上电源,LED灯亮。2、蓝牙——“添加蓝牙设备”,无线扫描找到蓝牙BOLUTEK,输入配对密码:1234。3、BLU232默认为从机状态、波特率等格式为(9600,n,8,1)。在ANDROID下可以使用“蓝牙串口.apk”等软件进行智能手机的串口通信。

   2、WiFi串口转换器串行通信:WiFi串口转换器实现无线WiFi与RS-232/RS-485/422串口的转换,这样Android智能设备可以用无线WiFi进行串口通信,无线通信距离50米。产品本身可通过浏览器进行设置,无须其它任何专用软件或装置。由于设备本身是通过TCP/IP协议来虚拟串口通信的,所以Android智能手机或者平板电脑也可以直接用TCP/IP通信。先安装TCP-TEST.APK(TCP网络助手),并连接到无线信号。运行TCP网络助手,选中“tcp client”,键入AP232L默认的IP地址(192.168.1.1)和端口(2001),按“增加”即可。现在就可以与AP232L的串口进行通信了。成功连接后,可以在发送区输入你要发送的数据或字符。这些数据将以透明模式转换到设备的串口发送出来。如果这时设备连接到某个计算机的串口,就可以用串口调试助手软件监测到并显示这些数据,注意设置的网络串口的波特率。同样AP232L的串口数据将透明传输到TCP网络助手的界面中,并在接收区显示。

   3、USB网络串口转换器:USB网络串口转换器是一种采用全新原理设计的USB-串口转换器。支持串口通信协议,还支持TCP/IP网络协议。原理上USB232ET不同于已有的任何一种USB串口转换器,它的特点在于内置了TCP/IP网络协议、还内置了Android平板电脑的USB驱动程序,所以接到平板电脑上时无需驱动即可使用。将USB232ET通过USB线连接到平板电脑USB-OTG口。USB232ET产品的RS-232/485/422串口端是一个DB-9针座,具有RS-232、RS-484、RS-422全部引脚。USB232ET的配置程序用于查看或修改USB232ET产品的IP地址、串口波特率等。连接通了以后可以通过网页查看USB232ET的IP地址、设置和修改密码。USB232ET的应用程序同样可以使用“TCP网络助手.APK”。

   4、USB串口接收器:USB232KB型USB串口接收器用于Android平板电脑接收串口数据,无需驱动程序也无需应用程序,带RS-232和RS-485口。将USB232KB通过USB接到连接到平板电脑USB-OTG口,无须供电,无需驱动。波仕USB232KB产品的RS-232串口端是一个DB-9针座,引脚分配同计算机的RS-232口,但是只有RXD和GND。RS-232的通信速率固定为9600bps,N,8,1。将"USB模式选择”,选中“主机模式”。无需任何应用程序,只要平板电脑的任何可以输入文字的地方均可以接收串口数据,比如WPS、短信或者微信等。串口接收到的数据必须是英文字母、数字、空格、换行等有效ASCII字符。由于不能够发送数据,所以接USB232KB的平板电脑只能够作为从机。 

   5、自带串口的Android开发板 Frendly-Arm的Android开发板基于Tiny6410搭建Android 2.3系统,Android程序实现对6410串口的读写,串口接收射频模块cc1100数据包。首先要将友善之臂非开源的libfriendlyarm-hardware.so文件导入工程,新建libs-armeabi-libfriendlyarm- hardware.so,然后将开源的JAVA文件导入工程的scr文件夹下,新建三层包com.friendlyarm.AndroidSDK,最写自己的android入口程序。下面是友善之臂“Android串口调试助手”的界面。如果将整个开发系统移植到采用相同CPU的平板电脑则该平板电脑就具有了同样功能的Android串口。由于带权限保护,所以如果直接将这个“Android串口调试助手”安装于用户自己的Android装置后运行会显示“错误:你没有读写串口权限”.