2016-07-18 7 views
1

연결된 장치에 사용자 정의 전송 속도를 10400으로 설정하려고합니다. Qt Creator IDE를 사용하여 장치와 상호 작용합니다. 그러나 몇 가지 방법을 통해 기본 전송 속도 인 9600에서 전송 속도를 변경할 수 없습니다.Linux - 연결된 장치에 사용자 정의 전송 속도를 설정하는 방법

나는 QSerialPort::setBaudRate()을 시도했지만 지원되지 않는 제수로 인해 실패했습니다. 내가 stty -F /dev/ttyUSB0 10400 시도했지만 잘못된 인수로 반환합니다.

freediag API를 사용하여 이제는 전송 속도를 10400으로 설정하려고합니다. 그러나 제공된 빈약 한 설명서로 인해 전송 속도를 설정하는 방법을 잘 모르겠습니다. 이 명령은 IB 10입니다. 그러나이 명령을 어디에서 실행할 것인지 잘 모르겠습니다 (잘못된 디렉터리에서 명령을 실행 중일 수 있습니다)?

내가 시도하는 것보다 다른 해결책이 있다면, 옵션이 부족하여 설명해주십시오.

답변

1

장치가 USB 가상 COM 포트를 통해 연결되었다고 가정합니다. 이 응용 프로그램에서 QSerialPort은 USB 위의 추상화 계층이므로 USB baud rate를 stty으로 직접 설정하려고하면 작동하지 않습니다 (USB가 매우 엄격하게 정의 된 프로토콜 인 경우 모두 가능합니다).

당신이하려고하는 것처럼 QSerialPort 개체의 보오가 설정하려고하지만, 10400은 표준 보오율이 아닙니다. 장치가 해당 보 (baud)를 사용할 가능성은 매우 낮습니다. QSerialPort::setBaudRate()과 14400을 대신 사용해보십시오.

설정에 대한 세부 정보가 포함 된 게시물을 수정해야합니다. 장치의 특성은 무엇입니까? RS232, RS485 또는 다른 직렬 프로토콜을 사용합니까? 의사 소통을 제대로하고 있는지, 하드웨어 나 소프트웨어 측면에서 올바른 의사 소통을하기 위해 어떤 결과를 기대하는지 예제 코드를 가지고 있습니까?

+0

참고로 표준 보드 속도는 110, 300, 600, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200, 128000 및 256000 bits per second – automaton