2011/06/26

Работа с COM портом в python: PyVISA или pySerial?

Для питона существует два модуля для работы с последовательными портами, я бы однозначно рекомендовал pySerial по нескольким причинам:

1. PyVISA сложен в установке, нужно дополнительно устанавливать библиотеку nivisa.
2. PyVISA не видит эмулированный через USB последовательный порт (т.е. переходник USB->COM).
3. В PyVISA нельзя задавать порт напрямую через файл устройства, например, в случае переходника USB->COM это будет /dev/ttyUSB0.

PySerial всех этих недостатков лишен, при этом очень прост в использовании. При работе с последовательным портом не надо забывать выставить одинаковые настойки на компе и собственно устройстве, в особенности это касается скорости передачи и бита четности. Все настройки могут задаваться при создании экземпляра объекта Serial или после через атрибуты.

Страница документации.