精华内容
下载资源
问答
  • 1.平台:RK3288 2.系统:Ubuntu 18.04.4 ...2.生成的设备名可能会变化,可能由于设备插入的先后顺序不一样,导致先插入的设备会生成ttyUSB0,后插入设备就可能是ttyUSB1? 解决方法: 1.先查找ttyUSB*设备的usb端口号,

    1.平台:RK3288
    2.系统:Ubuntu 18.04.4 LTS

    现象:
    首先这里有两个同样的usb转串口的设备插入系统不同的USB口,然后系统的/dev目录下就会以生成两个ttyUSB*设备,一个是ttyUSB0,一个是ttyUSB1.

    问题:
    1.不知道 usb转串口的设备 对应的系统设备名是哪一个?
    2.生成的设备名可能会变化,可能由于设备插入的先后顺序不一样,导致先插入的设备会生成ttyUSB0,后插入设备就可能是ttyUSB1?

    解决方法:
    1.先查找ttyUSB*设备的usb端口号,这里以ttyUSB0为例;
    udevadm info --name=/dev/ttyUSB0列出该端口的属性
    在这里插入图片描述
    可以找到对应的usb端口号1-1.4.1;

    2.然后修改设备名生成规则,我这里是修改99-com.rules文件,具体还是得看自己的系统;
    sudo vim /etc/udev/rules.d/99-com.rules
    在这里插入图片描述
    主要是创建多一个设备名的链接文件,这里是链接文件是取名为COM0;

    3.在/dev目录查看一下
    在这里插入图片描述
    在这里插入图片描述
    这样一来要访问的串口设备名就不会一直变化,而且我的应用是串口设备必须插到对应的USB端口,所以采取这种办法。

    展开全文
  • Linux系统固定USB串口设备名称

    Linux系统固定USB串口设备名称

    查看命令

    lsusb
    

    查看usb列表,查看piduid

    ls /dev/agvcode -lh
    
    sudo service udev restart
    

    重启服务

    ls -l /dev |grep ttyUSB*
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cJZHH15G-1638753532283)(image/Linux-USB串口设备名称/image-20211012141639115.png)]

    ls -la /sys/class/tty
    

    在这里插入图片描述其中1-2:1.0 1-7.2:1.0 1-7.3:1.0 是对应的U口序号,如果要按U口固定串口设备名称会需要用到这个【即限定某个U口插入设备为固定名称】

    udevadm info -a -n /dev/ttyUSB0
    

    查看U转串芯片详细信息

    KERNELS:设备路径名

    ATTR / ATTRS:设备的属性,如idProduct/idVendor(按U转串设备固定名称)

    SUBSYSTEMS:设备类型

    固定U转串设备名称

    用户自定义规则存放在/etc/udev/rules.d/,以rules为扩展名
    在这里插入图片描述
    前两个文件是根据芯片Vid,Pid固定名称,第三个文件是根据插入口固定串口名称
    MODE是读写方式
    在这里插入图片描述

    KERNEL=="ttyUSB*", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE:="0777", SYMLINK+="novatel"
    
    KERNELS=="1-7.3:1.0", MODE:="0777", GROUP:="dialout", SYMLINK+="agvcode"
    KERNELS=="1-7.2:1.0", MODE:="0777", GROUP:="dialout", SYMLINK+="novatel"
    KERNELS=="1-2:1.0", MODE:="0777", GROUP:="dialout", SYMLINK+="lpms"
    

    参考

    Linux系统固定USB串口设备名称

    ubuntu 为USB串口绑定固定的设备名

    展开全文
  • 2015-09-07 10:46:45win8.1系统USB转串口不能识别设备出现错误代码10的解决方法分享给大家,win8.1系统插入USB设备提示“指定不存在的设备”,左下角有小黄色感叹号,导致设备无法识别不能识别...2016-12-02 10:52:...

    2015-09-07 10:46:45

    win8.1系统USB转串口不能识别设备出现错误代码10的解决方法分享给大家,win8.1系统插入USB设备提示“指定不存在的设备”,左下角有小黄色感叹号,导致设备无法识别不能识别...

    2016-12-02 10:52:57

    一般情况下,win8系统电脑itunes、itools等工具,是可以识别iphone、ipad等设备的。但因升级或降级itunes后,导致iphone、ipad设备无法识别,检查u...

    2019-01-28 13:59:48

    在win10系统中,如果串品设备第一次插入电脑的话,系统就会走动分配一个端口号,很多USB转串口线插入电脑后,获得的串口号是随机分配的,如果我们需要将它设置成指定的串口号,该如何修...

    2017-06-28 13:44:36

    Win7系统识别不了usb鼠标设备怎么办呢?现在常见的鼠标有两种,一种是ps2接口的鼠标,另一种是USB接口的接口的鼠标,这两种鼠标只是接口不同。操作Win7系统的时候都离不开US...

    2015-04-17 15:49:20

    电脑无法识别usb设备怎么办?正常情况下,当我们在电脑中插入USB设备后,桌面右下角就会弹出电脑正在尝试连接此USB设备的一些信息,当win8 32位系统电脑端口无法识别USB设备...

    2019-11-28 17:54:19

    串行接口简称串口,也称串行通信接口或串行通讯接口,是采用串行通信方式的扩展接口。串行接口是指数据一位一位地顺序传送。雨林木风win7旗舰版系统要怎么修改串口名称呢?其实很简单,接下...

    2016-05-13 10:36:09

    可能会有用户需要在笔记本电脑中通过USB转串口装置来连接使用串行端口的设备,因为现在的笔记本电脑很少具备串行接口。一般购买的USB转串口装置会提供对应的驱动程序,我们需要在电脑中正...

    2015-09-21 15:03:01

    有用户反馈win7系统电脑插入USB设备后出现“正在安装驱动”,识别速度慢,将USB设备插入其他电脑却能被快速识别。那么要怎么解决此问题呢?不要着急,接下来系统城小编为大家介绍Wi...

    2016-10-16 10:09:42

    有用户在电脑产生系统故障后进行了重装操作,但是在重装后,发现电脑系统出现了不能识别USB的问题,无法打开USB设备也就不能使用USB接口的键盘鼠标等设备。这应该是系统中的USB驱动...

    2017-02-07 11:40:09

    原本在windows7系统电脑上可以被成功识别的设备,在windows10系统电脑上反而无法识别了,这该怎么办呢?我们该如何操作呢?如果你也遇到了这个问题,那么不妨参考下小编分享的...

    2015-09-29 14:58:09

    现在的笔记本电脑上几乎没有配备有串行端口,可是在某些情况下,比如很多工控领域还很广泛使用串口。这个时候我们就可以使用USB转串口接线,来使笔记本通过串口连接通讯。下面由系统城小编来...

    2019-09-05 16:04:51

    win7系统在哪里设置指纹识别功能?win7专业版系统自带生物识别功能,也就是指纹识别,如果电脑有指纹扫描设备,那么用户就可以通过指纹识别登录系统。很多用户电脑具备指纹扫描功能,为...

    2016-01-25 10:28:19

    iTunes可以连接苹果设备进行升级,管理、备份资料。若电脑系统中安装有iTunes工具,那么当iPhone手机或其他移动设备连接电脑后,会识别该设备,连接成功,然后可以进行同步操...

    2017-04-25 17:39:28

    U盘是一款移动存储工具,可以帮助用户保存和移动重要文件,已经成为不可缺少的设备了。把U盘插Win8.1系统上一直不能识别,别的电脑上是能识别的,所以排除U盘故障问题,那么是什么原因...

    2015-11-19 10:22:21

    Windows10系统​用户在将USB移动硬盘或U盘插入到电脑上时,偶尔会碰到系统提示“无法识别USB设备”问题,而同一个USB设备在其他几台电脑上却能正常显示。这该怎么办呢?下面...

    2017-01-19 15:41:34

    我们知道在电脑中插入新的USB移动设备就会显示发现USB设备的提示,但是有的用户反映电脑反而弹出“无法识别USB设备”。对此,应该如何解决?如果有需要的话,不妨参考接下来介绍的方法...

    2015-08-27 15:06:48

    部分用户说插入U盘或USB设备时电脑上却无法识别,没有任何响应。检查并非USB端口坏了,怎么回事呢?其实是由于Win8.1系统中的一些BUG导致USB口驱动错误,导致USB设备无法...

    2019-06-28 11:25:00

    很多win7系统用户都喜欢在电脑中安装iTools来对苹果设备进行管理,然而有时候会遇到iTools无法识别苹果设备的情况,该怎么办呢,下面就随系统城小编一起来看看win7系统中i...

    2018-10-22 16:24:09

    M.2接口固态硬盘无法识别怎么办?相比于普通的SATA接口固态硬盘,m.2固态硬盘速度要快的多,m.2接口已经普及,大部分主板都配备M.2接口,所以很多人都安装了m.2固态硬盘,不...

    2019-11-14 11:59:44

    在使用win7旗舰版系统电脑的时候,系统经常会出现各种各样的问题。最近就有用户反应自己的电脑出现了无法识别usb设备的情况。感到比较苦恼,不知道怎么解决。那今天小编就来给大家分享w...

    2018-05-28 17:41:45

    在使用windows7系统的过程中,有时候会遇到电脑没有声音的情况,然后重新安装声卡设备之后还是不行,经过检查是因为声卡设备无法被电脑所识别,该怎么办呢,针对windows7系统无...

    2017-03-14 16:56:11

    现在很多电脑设备都是采用无线的形式,比如:鼠标、键盘等等,无线鼠标是指无线缆直接连接到主机的鼠标,一般采用27M、2.4G、蓝牙技术实现与主机的无线通讯。可是一些用户遇到Win8识...

    2017-02-18 15:10:13

    手机设备插入win8系统电脑后发现无法被失败,为什么win8系统电脑不识别手机?尝试重启启动电脑多次还是一样,那么win8系统电脑不识别手机该如何解决呢?不要担心,今天系统城小编和...

    2019-01-23 14:38:35

    无线wif网络已经非常普及了,大家也比较熟悉,由于wifi在没有改名字之前的名字都会显示成路由器的名字,一串长长的数字,看起来不方便识别。为方便大家识别,win10电脑怎么改wif...

    2016-05-21 09:24:29

    现在我们在电脑系统中经常会利用到云存储技术。不过在没有网络的时候,我们还是会借助USB存储设备来拷贝电脑资料,比如U盘。不过有用户反映电脑中出现了无法识别部分USB设备的问题,在设...

    展开全文
  • #!/bin/bashdeclare -i a=0declare -i b=0while [[ ! -e "/sys/class/tty/ttyUSB0" ]]dosudo sleep 0.01sa=...then #等待一段时间没有检测ttyUSB0设备到会自动跳出whilebreakfidonewhile [[ ! -e "/sys/class/tty/t...

    #!/bin/bash

    declare -i a=0

    declare -i b=0

    while [[ ! -e "/sys/class/tty/ttyUSB0" ]]

    do

    sudo sleep 0.01s

    a=a+1

    if [ $a -eq 300 ];then  #等待一段时间没有检测ttyUSB0设备到会自动跳出while

    break

    fi

    done

    while [[ ! -e "/sys/class/tty/ttyUSB1" ]]

    do

    sudo sleep 0.01s

    b=b+1

    if [[ $b -eq 300||$a -ne 0 ]];then  #if USB0 been detected ,also get out of while

    break

    fi

    done

    if [[ ! -e /sys/class/tty/ttyUSB0&&! -e /sys/class/tty/ttyUSB1 ]]; then #如果不存在ttyUSB设备

    echo "Not have ttyUSB0 or not have ttyUSB1"

    else                                   #如果完美检测到了两个ttyUSB设备,则将信息log到device_usb.txt当中

    tty1=$(ls -l /sys/class/tty/ttyUSB0)

    tty2=$(ls -l /sys/class/tty/ttyUSB1)

    sudo ls -l /sys/class/tty/ttyUSB0 /sys/class/tty/ttyUSB1 > ./device_usb.txt

    fi

    if [ ! -n "$tty1" ] ;then   # "! -n" shows blank var  #非空检测

    echo "tty1 is empty"

    fi

    #delay 0.01s to make sure the device_usb.txt complete

    sudo sleep 0.01s

    #remove the old USB device shortcut

    if [ ! -e "/dev/ttydata" ] ;then # 如果/dev/ttydata本身不存在

    echo "-------------/dev/ttydata not found"

    else                                     #如果存在,则需删除之,然后重新创建之

    echo "/dev/ttydata is exist"

    sudo rm /dev/ttydata

    fi

    #exct Python language to get the rignt USB interface

    ./getUSB.py    #调用当前路径下的getUSB.py这个Python语言,明确此次是哪个,ttyUSB0,或者ttyUSB1挂载在端口3-1.1上

    usbdev=$(cat ./usbdev) #获取到这个设备

    echo "the device is : "

    echo $usbdev

    sudo ln -s /dev/$usbdev /dev/ttydata #将这个设备软连接到/dev/ttydata以后每次打开这个ttydata即可

    getUSB.py:

    #!/usr/bin/python

    #coding:utf-8

    import re  #正在表达式

    sss = open("./device_usb.txt","rb") #打开device_usb.txt设备,并读取内容

    www = open("./usbdev","wb")  #当前路径下创建usbdev文件,后续会写入内容

    s_read = sss.read()

    usb3/3-1/3-1.1/

    r = r"usb3/3-1/3-1\.1.+(ttyUSB[0-9])"

    #正则中“.”需要转义,所以使用“\.”表示“.”

    #这个规则是找到

    usb3/3-1/3-1.1/这个字符串后面紧跟的是此次上电生成的ttyUSB0或者ttyUSB1

    output = re.findall(r,s_read)

    www.write(output[0]) #将结果写到usbdev中

    www.close()

    sss.close()

    完成之后 设置开机项目,将文件夹当道一个位置,然后设置开机启动cmd.sh(在/etc/rc.local中设置)则每次开机之后,会从/dev/ttydata获取到固定端口的数据

    这两天在ubuntu中开发跟串口有关程序时,发现来回拔插串口线或者插多个串口线时总是出现串口号ttyUSB*不固定的问题, 给应用程序带来不少麻烦,遂google解决。

    linux中设备号一般按先后顺序一次向后增大,udev规则文件可以解决这个蛋疼的问题。udev是一种Linux2.6内核采用的/dev 目录的管理系统(可以把它认为是windows中的设备管理器),它通过从sysfs获得的信息,可以提供对特定设备的固定的设备名。sysfs是linux2.6内核的一种新型文件系统,它提供了当前设备的基本信息。

    udev的重要功能就是为为设备提供固定的设备名, 根据Wirting udev rules的详细介绍, udev有如下功能:

    Rename a device node from the default name to something else

    Provide an alternative/persistent name for a device node by creating a symbolic link to the default device node

    Name a device node based on the output of a program

    Change permissions and ownership of a device node

    Launch a script when a device node is created or deleted (typically when a device is attached or unplugged)

    Rename network interfaces

    简单阅读之后创建文件/etc/udev/rules.d/10-local.rule, 内容如下

    [html]  view plain

    copy

    span>KERNEL=="ttyUSB*", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303",MODE:="0777", SYMLINK+="user_uart"

    span>KERNEL=="ttyUSB*", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523",MODE:="0777", SYMLINK+="mcu_uart"

    意思就是匹配sys中内核名为ttyUSB*的设备,属性匹配依据生产商编号idVendor和产品号idProduct, 设定读写权限为0777, 符号链接名为user_uart-----PL2303串口转USB, mcu_uart----CH340串口转USB。

    idVendor和idProduct由 lsusb  -vvv 命令查看。

    保存退出后udev规则就生效了,重新拔插两个串口设备,就可以看到/dev/user_uart指向/dev/ttyUSB0, /dev/mcu_uart指向/dev/ttyUSB1. 这样以来,我只要在程序里打开/dev/user_uart或/dev/mcu_uart就可以一直准确的打开指定的串口设备了。

    PS:如果您的两个串口用的都是PL2303或者都是CH340/CP2102,那就真的无能为力了。。。

    常用的匹配类型:

    * BUS:匹配总路类型,比如PCI USB等

    * KERNEL:- 匹配Kernel设备名,比如hda hdb.

    * DRIVER :- 匹配Kernel的驱动程序名

    * SUBSYSTEM: - 匹配子系统名。

    * ID :- 匹配总路系统的ID (e.g. PCI bus ID)。

    * PLACE :- 匹配物理位置  (对USB很有用)

    资料链接:

    http://www.cnblogs.com/ynxf/p/6379449.html

    http://biancheng.dnbcw.net/linux/295328.html

    展开全文
  • 我正在编译OpenWrt(基于Linux的无线路由器),我在OpenWrt源上添加了一块板,我的板有两个uart端口,我可以声明并启用两个uart端口,两个uart端口为’uartfull’, ‘uartlite’.‘uartlite’注册到’/ dev / ttyS1′,’...
  • 参考下固定USB串口设备号(防止设备重复挂载、保证对外接设备信息稳定读取)linux下多个usb设备固定名称方法为 USB设备绑定固定的设备名最近,研究下了如何在linux绑定串口号,不然每次插拔后串口号可能变,就特别麻烦....
  • C#如何获取所有的USB COM端口设备信息呢?为什么要获取USB串口驱动信息,比如我们在操作扫描仪,巴枪的时候,都需要用到,如下图:如果我们仅仅只是获取COM1与COM2这两个端口的话,使用C#自带的SerialPort类就可以了...
  • 虚拟串口设备驱动,虚拟串口的完整源代码,包括注释和开发日志。据说市值5万人民币!Virtual Serial Device DriverWindows2K下虚拟串口设备驱动程序及相关应用程序内容列表===========主要功能使用说明各模块说明工作...
  • http://blog.chinaunix.net/u3/118615/showart_2320858.html1...在linux中,uart设备可以抽象成两类设备:serial设备和console设备。在cpm_uart_core.c中可以清楚的发现,对uart设备实现了两套驱动,分别针对这两类...
  • 4:重启udev服务 如果没有检测到重定向串口 在重启设备 sudo /etc/init.d/udev restart 5:查看结果 ls -l /dev |grep ttyUSB 这五个步骤应该足够了 无论对相同芯片的串口 或者 不同芯片的串口 都可以按照上述方式...
  • 按照计划,本课会讲解修改uboot和内核让JZ2440支持设备树。但前面修改uboot已经讲解完了,修改内核也没必要单独讲,可以直接看内核补丁,修改的方法也并不复杂。内核补丁路径:doc_and_sources_for_device_tree/...
  • 串口设备应用笔记摘要本应用笔记描述了如何使用 RT-Thread 的串口设备,包括串口配置、设备操作接口的应用。并给出了在正点原子 STM32F4 探索者开发板上验证的代码示例。本文的目的和结构本文的目的和背景串口(通用...
  • /* 核对连接上的串口设备是正确的设备 fdSerial 串口文件描述符 send 要发送的信息 receive 核对的信息 */ int checkDevice(int fdSerial, char* send, char* receive); /* 调试串口使用 fdSerial 串口文件描述符 *...
  • 利用udev固定串口名字

    2021-05-14 12:33:15
    linux的串口设备每次插入可能生产的文档不一样,导致每次都需要查看一下设备名是什么,如果是写在代码里的,还需要更改代码或者配置文档,可以利用udev生成自己指定的设备名字。可以man udev看下...
  • 有关win10系统超级终端软件连接串口设备的操作方法想必大家有所耳闻。但是能够对win10系统超级终端软件连接串口设备进行实际操作的人却不多。其实解决win10系统超级终端软件连接串口设备的问题也不是难事,小编这里...
  • Linux下字符设备驱动

    2021-05-13 15:18:41
    【linux操作系统驱动分类】字符设备: 串口,led,按键,一次只读取一个字节数据块设备: 一次读取多个字节(512字节), 硬盘,内存网络设备: 一次读取多字节数据本文引用地址:... 串口,Led,I2Cb开头的叫块设备文件 ...
  • 此处,我希望检测的是android设备作为HOST,然后外接USB设备:一个USB接口的HART猫,内部就是USB接口串口,所以,不是这个MSC的类。 所以,感觉应该不是用这个“USB Mass Storage”才对。 4.再去继续找。 -> 看到...
  • 在 linux系统下进行串口调试或者开发时配合简单易用的串口调试工具那是必不可少。这篇博客对当前用的较多的,且我自己经常用的一些串口工具做一下汇总,大家可以参考一下。实验环境:OS: Ubuntu16.04Kernel: 4.4.0--...
  • input_init()=>=>class_register(&input_class);...创建proc下的目录和文件register_chrdev(INPUT_MAJOR, "input", &...注册驱动程序到cdev_map上,以待驱动设备.drivers\input\keyboard\pxa3...
  • 设备开发中,常用到基于USB的虚拟串口,此类接口在linux平台上被枚举为ttyUSB设备。当有多个ttyUSB设备时,常常导致分不清是哪个功能接口。其实还是可以很容易分出来的,在sysfs中通过以下步骤查看可以轻而易举的...
  • 我正在编译OpenWrt(基于Linux的无线路由器),我在OpenWrt源上添加了一块板,我的板有两个uart端口,我可以声明并启用两个uart端口,两个uart端口为’uartfull’, ‘uartlite’.‘uartlite’注册到’/ dev / ttyS1′,’...
  • Ubuntu18.04下串口配置设备绑定USB端口号 1.查看串口设备ID 使用 lsusb 可以看到 star@star:/etc/udev/rules.d$ lsusb Bus 001 Device 002: ID 8087:8001 Intel Corp. Bus 001 Device 001: ID 1d6b:0002 Linux ...
  • 当计算机或者其他USB主机上使用多个USB转串口设备时,会遇到多个串口无法与具体的串口设备对应起来的问题,包括更换不同USB端口串口序号发生改变,多个设备USB插拔顺序不同导致串口序号改变等问题。 本文提出几种...
  • linux树莓派下绑定USB口,固定USB串口设备号,解决USB转串口ID相同情况 摘要:在树莓派USB口,虽然设备会变,但是位置不变,每个位置都有个KERNELS号,因此可以通过绑定这个位置的ID。 一,查询已有的串口的KERNELS...
  • php获取手机设备信息

    2021-03-23 15:47:00
    //版本public function getOS(){$ua = $_SERVER['...if (strpos($ua, 'Android') !== false) {preg_match("/(?<=Android )[\d\.]{1,}/", $ua, $version);return 'Platform:Android OS_Version:'.$ve...
  • 一、核心数据结构串口驱动有3个核心数据结构,它们都定义在1、uart_driveruart_driver包含了串口设备名串口驱动名、主次设备号、串口控制台(可选)等信息,还封装了tty_driver(底层串口驱动无需关心tty_driver)。...
  • Linux命令:ps&comma;netstat&comma;topps ps用于查看当前运行的进程.如果想查看动态的进程信息,可以使用top命令.查看详细命令帮助使用man ps. ps最常用的选项组合就是ps aux: # ps aux USER PID %CPU ...1-...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 67,585
精华内容 27,034
关键字:

串口设备的设备名