Linux的PySerial“更好”端口名称?

时间:2015-09-21 20:54:54

标签: linux serial-port pyserial

对此的跟进问题:permanent USB port names? (Linux)

在Windows上,端口名称在实际物理端口之间不会更改。它们沿着“COM3”,“COM6”等行。 在Linux上,如果我先插入一个USB设备,它将是“ttyUSB0”,如果我在任何其他物理端口插入同一设备,它将是“ttyUSB1”。如果我想通过Pyserial将2个Arduinos连接到PC,那将无法工作。

在上面的回答中,我看到了一种获得类似IP的“序列名称”的方法。我怎样才能将它提供给PySerial类呢?

1 个答案:

答案 0 :(得分:0)

一个例子:

#ifndef _STRINGFWD_H
#define _STRINGFWD_H 1

#pragma GCC system_header

#include <bits/c++config.h>

namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION

  template<typename _Alloc>
    class allocator;

/**
 *  @defgroup strings Strings
 *
 *  @{
*/

template<class _CharT>
struct char_traits;

 template<typename _CharT, typename _Traits = char_traits<_CharT>,
          typename _Alloc = allocator<_CharT> >
  class basic_string;

 template<> struct char_traits<char>;

 typedef basic_string<char>    string;   /// A string of @c char

#ifdef _GLIBCXX_USE_WCHAR_T
  template<> struct char_traits<wchar_t>;

  typedef basic_string<wchar_t> wstring;   /// A string of @c wchar_t
#endif

#if (defined(__GXX_EXPERIMENTAL_CXX0X__) \
     && defined(_GLIBCXX_USE_C99_STDINT_TR1))

  template<> struct char_traits<char16_t>;
  template<> struct char_traits<char32_t>;

  typedef basic_string<char16_t> u16string; /// A string of @c char16_t
  typedef basic_string<char32_t> u32string; /// A string of @c char32_t

#endif
   /** @}  */

_GLIBCXX_END_NAMESPACE_VERSION
} // namespace

#endif  // _STRINGFWD_H