pyserial 예제

이 예제에서는 한 번에 여러 포트에서 작동하는 직렬 포트 서비스에 TCP/IP를 구현합니다. 직렬 포트와 네트워크 소켓에 대해 선택된 스레드가 없으므로 POSIX 시스템에서만 실행됩니다. 또한 소스 배포 또는 온라인에서 예제 디렉터리에서 예제 파일을 살펴보십시오. 이제 Miniterm을 예제대신 모듈로 사용할 수 있습니다. 자세한 내용은 serial.tools.miniterm을 참조하십시오. 이 예제는 원시 소켓 연결만 내보냅니다. 아래 예제는 클라이언트가 원격 직렬 포트를 훨씬 더 많이 제어할 수 있도록 합니다. 모든 것이 계획으로 가는 경우 파이썬 프로그램이 실행되고 PIC 장치가 켜져있을 때 아래 표시된 창과 비슷한 것을 볼 수 있습니다. 그렇다면, 우리의 PIC 프로그램과 파이썬 프로그램은 서로 완벽하게 의사 소통하고 있습니다. 이 예제는 매우 간단하지만 파이썬이 PIC, AVR, STM, Arduino 및 심지어 라즈베리 파이를 포함한 마이크로 컨트롤러 프로젝트에 쉽게 통합 될 수 있음을 보여줍니다! 파이썬 -m serial.tools.list_ports는 사용 가능한 포트 목록을 인쇄합니다. 또한 정규기를 첫 번째 인수로 추가할 수도 있으며 목록에일치하는 항목만 포함됩니다. 단위 테스트는 명령줄(sys.argv[1])에 다른 장치 이름이나 URL이 제공되지 않는 한 포트 loop:// 수행됩니다. 예를 들어, 연결된 USB 직렬 컨버터hwgrep://USB 사용하거나 /dev/ttyUSB0 또는 COM1과 같은 실제 이름(플랫폼에 따라 다름)에서 테스트를 실행합니다.

함수는 유용한 기능을 제공하며 아래 함수 프로토타입은 다음과 같습니다. PySerial이 프로젝트에 포함되어 있으므로 파이썬 IDLE을 열고 직렬 포트 프로젝트를 만들 시간입니다! PIC의 코드는 세 가지 주요 영역으로 구성됩니다: 간단한 프로그램에서는 먼저 이전에 정의된 직렬 포트를 엽니다. 프로그램에서 포트를 “클레임”하고 다른 프로세스가 포트에 액세스하지 못하도록 할 수 있기 때문에 open() 함수를 호출해야 합니다. 포트가 열리지 않은 경우에도 포트에 액세스할 수 없습니다. 위에 표시된 매개 변수를 정의하는 것 외에도 직렬 모듈을 가져와야 합니다. 아래 코드 추출은 직렬 모듈을 가져오고 패리티, 원 스톱 비트 및 2초의 시간 표시없이 115200 baud에서 COM3를 사용하도록 UART 포트를 구성하는 방법을 보여줍니다. 우리의 파이썬 직렬 포트 프로그램을 테스트하기 위해, 우리는 XC8을 사용하여 코딩 될 매우 작은 PIC 칩, PIC16F1825를 사용할 것입니다. 이 칩에는 UART 포트가 있어 USB-직렬 컨버터(예: FTDI 232R)에 직접 연결할 수 있습니다. 다행히도 여기에 사용되는 FTDI 모듈은 USB 포트의 전원을 제공하므로 전원 회로가 필요하지 않습니다 (구성하기 쉽습니다).

“38400,8,E,1″에서 열린 포트, 비 차단 HW 핸드 셰이킹: pySerial serial serial.tools.miniterm 라는 작은 콘솔 기반 터미널 프로그램을 포함 합니다. 그것은 파이썬 -m serial.tools.miniterm (모든 옵션의 목록을 얻기 위해 옵션 -h를 사용)로 시작할 수 있습니다. 이 프로젝트는 여러 단위 테스트를 사용하여 기능을 확인합니다. 그들은 모두 루프 백 커넥터가 필요합니다. 스크립트 자체에는 더 많은 정보가 포함되어 있습니다. 모든 테스트 스크립트는 디렉터리 테스트에 포함되어 있습니다. 파이썬에 대한 많은 좋은 기능 중 하나는 PIP 도구를 사용할 때 라이브러리를 설치하는 것이 얼마나 쉬운지입니다. 컴퓨터에서 터미널 또는 명령 프롬프트를 열고 “PIP”를 입력합니다. 인식할 수 없는 오류가 발생하면 PIP가 올바르게 설치되지 않은 것입니다. 파이썬을 설치할 때 “환경 변수에 추가” 옵션이 선택되어 있는지 확인합니다.