TX 출력 신호에서 RS232 통신의 전송 속도를 계산할 수 있습니까?


10

X 출력 신호에서 RS232 통신 의 전송 속도 또는 통신 속도 를 계산할 수 있습니까 ?

아래 이미지는 RS232 통신 출력 신호입니다. 나는이 사진을 0xaa로 찍었고, 최고점 사이의 기간은 100.us입니다.

외부 발진기의 주파수가 8Mhz라고 들었습니다. 그로부터 전송 속도를 계산할 수 있습니까?

RS232 신호를 보여주는 오실로스코프 트레이스


9
나는 EE가 그것을 알아야한다고 생각한다 F=1/T.
유진 Sh.

2
구성을 쉽게하기 위해 데이터에 대한 지식없이 전송 속도를 감지하는 것에 대한 질문이 될 것으로 예상했지만, 이것이 그렇습니까? @EugeneSh. 주파수의 정의를 아는 것은 전자 작업을 할 때의 기본 지식입니다.
NieDzejkob

1
힌트 :이 같은 혼란을받을 경우, 개발 시스템 당신이 표시되는 콘텐츠에 대한 사용자의 추측을 보내고 볼 수 있도록 무엇을 비교의 범위에 대한 것 같습니다. 틀렸다면 추측을 세분화하여 더 가깝게 만드십시오.
Chris Stratton

Sigrok은 오픈 소스입니까? 사람들은 "추측 빈도"가 어떻게 작동한다고 생각합니까?
mckenzm

답변:


21

부서 당 약 2.4 비트 시간 (250µs)이있는 것 같습니다. 이는 각 비트 시간을 104µs로 설정합니다. 반전하면 9.6 kBaud가됩니다. 이는 표준 전송 속도 중 하나이므로 상당히 타당하게 들립니다.


12

당신의 스코프는 에서 타이밍을 보여줍니다100μ에스


8MHz

다른 생각들 :

  1. 실제로 이라면100μ에스±2%
  2. 3.5V
  3. 이 신호는 MARK에 HI를 사용합니다 (RS-232에서 MARK는 음의 전압 임). 이는 RS-232 신호가 아닌 마이크로에서 출력되는 논리 레벨이어야합니다.

필요한 START 비트와 최소 1 비트 시간 STOP을 제거하면 데이터에 대해 적어도 7 개의 비트 시간이 남아 있을 수 있습니다.

여기에 이미지 설명을 입력하십시오

위의 내용은주의를 기울이면 엔디안과 상관없이 0x2A로 해석됩니다.

그러나 이것은 8 개의 데이터 비트에 대한 차트입니다.

여기에 이미지 설명을 입력하십시오

이 경우 해석은 스트림의 엔디안 특성에 따라 0xAA 또는 0x55입니다. 따라서 이것은 0xAA (작은 엔디안, 더 일반적이라고 생각합니다)를 나타낼 수 있습니다.

보시다시피 송신기와 수신기는 데이터 비트 수와 엔디안 특성에 대해 사전 동의해야합니다.

범위 결과는 더 긴 직렬 단어 크기로 해석 될 수 있습니다. 나는 그것들을 전에 보았다.

동의 없이는 확신하기 어렵습니다.


사이드 바로 서 :

1960 년에 RS-232가 만들어 졌을 때 텔레타이프가 5 비트에서 6 비트 (1960 년대 초 DTE)로 이동했던 시절을 기억합니다. 아빠는 집에 사무실 공간에 앉아있는 텔레타이프를 가지고있었습니다. 6 비트 RS-232 통신은 실제로 일정 시간 동안 존재했습니다.

ASCII 코딩은 1960 년대 후반과 1970 년대 초반에 널리 사용되었으며 7 비트 코딩입니다. RS-232 데이터 통신은 7 비트의 데이터를 사용하는 것이 일반적이었습니다.

나중에 통신 IC와 마이크로 컨트롤러가 공통적으로 사용되고 8 비트 레지스터 크기가 풍부하게 사용됨에 따라 RS-232는 종종 한 번에 8 비트를 송수신하도록 확장되었습니다.

오늘날 대부분의 사람들은 8 비트 통신에 사용될 것으로 기대합니다. 그러나 항상 그런 것은 아닙니다.


또한 데이터는 19,200에서 2 바이트 0x98 0xE6 일 수 있으며 s00011001Ss01100111S [s = start S = stop]로 분류됩니다. "A"[0x41]와 같은 일부 문자는 다른 전송 속도로 만들 수없는 비트 패턴을 생성합니다 (예 : Hayes가 자동 보 오트 트레이닝 시퀀스의 첫 번째 문자로 "A"를 선택한 이유). 19,200 보드에서의 바이트 시퀀스.
supercat

나는 기계식 텔레타이프 프린터 기계의 자랑스러운 소유자였습니다. 그것은 완전히 기계적이고 60baud에서 달렸다. 솔레노이드와 동기식 모터를 계산하지 않으면 완전히 기계식입니다. 시작 비트가 클러치를 풀고 선택기 휠이 돌아 가기 시작했고 프린트 헤드를 위치시키고 해머를 발사 한 후 순서대로 일이 발생했습니다. 보기에는 너무 시원했습니다. 내가 캐나다에 왔을 때 영국에 남겨 두어야했습니다. 배송하기에는 너무 무거웠습니다.
Trevor_G

rs232가 그런 극단적 인 구동 전압과 전류를 가졌던 주된 이유 중 하나입니다. RS232 케이블-> 솔레노이드 사이에는 아무 것도 없습니다.
Trevor_G

@ 슈퍼 캣 네. 시간으로 나눌 수도 있습니다. 그러나 이러한 변형은 책이 필요한 시점에 도달하기 시작합니다. 그러나 당신의 요점은 분명합니다.
jonk

1
@Trevor 나는 한 번도 소유하지 않았지만 종종 KSR-35 (매우 인상적인 기계식 캠 기반 기계)와 나중에 훨씬 저렴한 ASR-33 / KSR-33 장치를 사용했습니다. 아빠가 우리 집에서 (교통 사고로 죽기 전에) 가지고 있던 것은 이것들 중 어느 것도 아니었지만, ASR-33과 비슷한 크기의 초기 6 비트 코드 장치였습니다.
jonk

0

이것이 마이크로 컨트롤러를위한 것이라면, 오실레이터에서 보드 율을 결정할 수는 없지만 8MHz 크리스털은 확실히 9600 보드를 생성 할 수 있습니다.

첫 번째에서 마지막까지의 정확한 시간을 측정하고 말해 줄 수 있습니까? -첫 번째 공간이 약간 벗어난 것 같습니다. 트리거를 사용하는 것 같습니다. 에지 트리거이고 피크에 앉아 있으면 오실로스코프가 트리거링하는 데 문제가있을 수 있으므로 약간 더 높게 움직일 수 있습니까?


신호를 샘플링하고 발생하는 가장 작은 폭을 측정하는 경우 속도를 계산하는 것이 간단합니다. 머지 않아 시작 비트 뒤에 '1'이 와야합니다.
mckenzm

0

스코프 추적에서 전송 속도를 결정하는 것이 때로는 가능하지는 않지만 때로는 불가능합니다.

전송 속도는 비트주기의 역수이지만 신호는 여러 비트주기 동안 동일한 상태를 유지할 수 있으므로 스코프 추적에서 비트주기를 항상 명확하게 결정할 수는 없습니다.

8 비트 데이터이고 패리티가 없다고 가정하면 파형은 ~ 100ns의 비트 주기로 단일 바이트를 나타낼 수 있지만 약 50ns의 비트 주기로 2 바이트를 나타낼 수도 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.