㈠ 如何使用android studio实现串口通信
找两根带驱动程序的U装RS485的线,分别接在两电脑上并安装好驱动程序。(在计算机硬件管理器中查看是COM几口) 两根U装RS485的线A、B对接起来,形成回路即可通讯 可从网上下载一个串口调试工具,在一端发数据,在另一台电脑的串口一端接收到其发过来的数据。
㈡ 我想用Android手机与单片机进行串口通信,从而可以控制单片机,该如何实现呢
不过你还得注意的是手机的USB转串口电平是TTL电平,所以你的单片机板子的串口也得是TTL,在就是分清楚交叉连接或者直连。
㈢ 怎么查看android 设备的串口
1. 如果是linux,不需要单独安装什么串口驱动
2. 但需要使用ls /dev/tty * 查看usb 串口设备是否被检测到
2. 然后使用linux下的MINICOM进行串口信息打印,具体配置和用法可以一下
㈣ android如何读取串口数据
代码如下:
import com.friendlyarm.AndroidSDK.HardwareControler;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
public class MapGuider_Activity extends Activity{
private int serial_fd=0;
private byte[] serial_RevBuf=new byte[100];
private byte[] serial_SendBuf="fsjajd".getBytes();
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.mapguider);
serial_fd=HardwareControler.openSerialPort("/dev/s3c2410_serial1", 115200, 8, 1);
if(serial_fd!=-1)
{
System.out.println("打开串口成功");
HardwareControler.write(serial_fd, serial_SendBuf);
lac_handler.post(RevicePosDataThread);
}
else
{
System.out.println("指定的串口不存在或在其它进程中已被打开");
}
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
HardwareControler.close(serial_fd);
System.out.println("关闭串口");
lac_handler.removeCallbacks(RevicePosDataThread);
super.onDestroy();
}
Handler lac_handler =new Handler(){
@Override
public void handleMessage(Message msg) {
// TODO Auto-generated method stub
super.handleMessage(msg);
}
};
Runnable RevicePosDataThread =new Runnable()
{
int err=0;
String s;
public void run() {
// TODO Auto-generated method stub
while(true)
{
//Looper.prepare();
err=HardwareControler.select(serial_fd, 1, 0);
if(err==1)//有数据可读
{
HardwareControler.read(serial_fd, serial_RevBuf, 10);
s=new String(serial_RevBuf);
System.out.println("接收到串口数据"+s);
}
else if(err==0) //无数据可读
{
System.out.println("没有接收到串口数据");
}
else //出错
{
System.out.println("接收到串口数据出错");
}
try {
Thread.sleep(2);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
};
}
㈤ android虚拟机串口通信
工具:Virtual Serial Port Driver.
用这个工具虚拟出一对串口。
下载地址
2.用串口调试助手,测试串口通信。
3.用这个命令启动虚拟机:emulator @2.2 -scale auto -qemu -serial COM3 &
说明:
2.2:是虚拟机的名称。
COM3是你要选择的串口。
ps:在cmd中使用这个命令有两种方式:1)将安卓的sdk的tools文件夹加入到path环境变量中,2)在安卓的sdk的tools文件夹下打开cmd。
4.虚拟机中测试串口通信用谷歌的一个开源项目:android_serialport_api
5.在虚拟机中运行项目。
说明:运行前要获取设备的权限
1)在cmd中用adb shell命令,进入虚拟机命令行环境。
2)打开dev文件夹:cd dev
3)获取权限:chmod 777 ttyS2
6.谷歌的开源项目不能导入进eclipse,我整理了一下,调通了。
㈥ android上怎么通过wifi接收串口数据
可以先测试wifi模块的是否调试好, 使用串口大师,进行测试。 首先:确信串口Wifi模块匹配好?尤其是地址和端口。 使用远嘉科技的串口Wifi模块TLN13UA06配置软件与单片机连接,成功时在软件界面提示端口配置成功。 其次:串口Wifi模块传输数据量是多少?有没有超过串口口的门限?硬件流控有没有打开?没有硬件流控的情况下,软件流控有没有做好? 自动组帧触发长度:是指要达到门限长度,才会发送,否则,要等到触发时间。如果传输字符串够长,达到组帧触发长度了;否则没有的话,需要等到了触发时间。 工作在自动模式下,模块支持用户可设置的自动组帧触发长度和触发的时间。同时此模式下,模块串口传输支持硬件流控方式,提供标准的RTS/CTS 信号,手册说明用户在进行大数据量传输时启用硬件流控功能,这样可以充分保证数据的可靠传输,对于不需要流控功能的应用场合,用户只需把RTS/CTS 引脚悬空即可。 最后:尝试着用AirPeek抓一下包。看看数据发送是否成功。
㈦ android怎么用串口调试程序
看样子你windows是host linux是client, 但是我不明白为什么用com2 获取和发送内容。 因为你的client ttyS0 明显是第一个串口。 虚拟机设置串口 可以用pipe,文件或者物理串口。 你在host上访问虚拟串口的时候是和这些管道交互,或者你可以下载.
㈧ Android开发板怎么读写串口的数据
读写串口数据,需要设置波特率,数据位,数据格式一般为16进制或ascii码,建议先下个串口调试助手,或下个google的官方demo,jni层和c层的代码已经给的很详细了