-
Notifications
You must be signed in to change notification settings - Fork 21
Stm32 Serial Debugging
Stm32 Value line discovery 보드는 PC와 USB로 시리얼통신하는 기능이 없다. 그래서 시리얼통신 전용 케이블을 통해 통신해야 한다.
자세히 얘기하자면, Stm32보드의 USART1포트 PA10,9(Rx,Tx)를 컴퓨터에 연결하기 위한 커넥터가 필요하다. 컴퓨터는 USB포트를 많이 사용하니 시리얼 Rx,Tx 선을 USB에 꽂을 수 있는 커넥터가 필요하다. 이를 흔히 TTL to USB 보드 라고 한다. TTL은 시리얼통신 규격 중 하나다. 0~5V 전압차로 이진수를 표현하는데, 시리얼 통신으로 많이 RS232도 시리얼통신 규격 중하나고, +-15V 전압차로 이진수를 표현한다. 이는 컴퓨터의 역사와 일맥상통하는데, 초창기 PC들은 좀더 높은 전압에서 동작했기 때문이다. 결국 TTL 신호를 RS232신호에 바로 붙이면, 제대로 동작하지 않는다. 그 역도 마찬가지다. 그러니 똑같은 시리얼통신 커넥터라고 하더라도 상황에 따라 잘 맞춰야 한다. 일반적인 MCU들은(Stm32도) 시리얼 정보를 TTL로 보내기 때문에, Stm32보드를 컴퓨터의 USB단자와 연결하려면 TTL to USB 보드가 있어야 한다. RS232 케이블이 있는 상태라면, RS232 to TTL 커넥터만 있으면 된다.
시중에 Serial to USB 보드들이 많으니 이를 이용하면 된다. 아래 보드는 기능이 많아서 가격이 3만원이다. 밑에것은 더 싸다.
http://eleparts.co.kr/EPX47FVV
만약 Serial to USB 케이블이 있다면, 이 것을 이용하면 된다.

핀 배치를 확인해서 Rx,Tx 포트를 맞춰주면 된다. 그러나 위에 나온 케이블은 RS232 프로토콜을 사용하고 있어서, 중간에 TTL to RS232 컨버터가 있어야 한다. 똑같은 시리얼통신 계열이지만, 내부적으로는 약간씩 다르다. MCU에서 내보내는 TTL 시리얼통신은 0~5V사이지만, RS232는 +-15V사이 전압을 필요로한다. 이를 컨버팅 해주는 칩이 Max3232, Max232 칩이다.
http://www.devicemart.co.kr/1112601
Serial To USB 케이블은 있지만 Max3232칩이 없다면, 위에 것만 사면된다. 싸다. 5500원
여러가지 시리얼통신 종류를 확인하려면 문서 RS232통신.pdf 문서를 보자.
###레퍼런스



