zoukankan      html  css  js  c++  java
  • 树莓派固定USB端口号的方法

        树莓派的USB端口接通时被映射为一个文件存在/dev/目录下,通常是ttyUSB0, ttyUSB1等等。实际应用它存在这样一个问题,树莓派并不是指定哪一个端口就是ttyUSB0,或哪一个就是ttyUSB1,而是把第一个接入设备的USB口定为ttyUSB0, 第二个是ttyUSB1,这在接一个设备时是优点,可是接多个设备,在程序里就分不清ttyUSB0,ttyUSB1到底指的哪一个设备了。  所以应给各个USB口定一个固定的名字,在程序中好让我们准确地找到它。方法如下:

    1.查看USB

     

    执行命令:ls -l /sys/class/tty

     

    在树莓派系统里,其实对USB口是有区分的,反复插拔USB,并执行上面的命令,可以找出系统对USB口的命名规律。

    不论怎样插拔USB,端口自身都是上面的编号,因此,只要给这几个编号指定别名就可以了

    2.编辑配置文件

    执行命令:sudo vi /etc/udev/rules.d/99-com.rules

    在文件末尾加入下面内容

     

    KERNEL=="ttyUSB*",KERNELS=="1-1.2",MODE:="0777",SYMLINK+="device2"
    KERNEL=="ttyUSB*",KERNELS=="1-1.3",MODE:="0777",SYMLINK+="device3"
    KERNEL=="ttyUSB*",KERNELS=="1-1.4",MODE:="0777",SYMLINK+="device4"
    KERNEL=="ttyUSB*",KERNELS=="1-1.5",MODE:="0777",SYMLINK+="device5"

    以上几句话的意思就是为USB编号指定别名。

    3.重启服务

    执行命令:sudo /etc/init.d/udev restart

    4.查看结果

    执行命令:ls -l/dev | grep ttyUSB

    可见,不论ttyUSB*怎样变,端口都有一个自己的名字

    5. 程序中访问

     

    import serial
     
    ser2 = serial.Serial('/dev/device2',9600)
    ser3 = serial.Serial('/dev/device3',9600)
  • 相关阅读:
    .NET网址集合(自己备用)
    在所有页面自动注册prefix
    ASP.NET里实现水晶报表的打印
    C#经典书籍推荐
    自定义file类型input框样式的方法
    安装VS2008后要做的事
    ASP.NET中使用Include的要点
    增加新记录时ObjectDataSoruce和FormViw中的相关事件使用总结
    兼容IE/FF的手动触发事件的函数 ( forward )
    ASP.NET 自定义的一个日期验证控件
  • 原文地址:https://www.cnblogs.com/zhouzhishuai/p/10438776.html
Copyright © 2011-2022 走看看