보통 개발보드에서 흔하게 쓰는 TTL to RS485 모듈은,
MAX485 칩을 달고 있는 아주아주아주 저렴한(모듈 소매가가 한 430원쯤?) 모듈이다.
이 모듈은 전송 방향(송신/수신)을 코드에서 직접 설정해줘야 하는게 단점이자 번거로운 점이다.
MAX485 칩에서 나온 DE/RE 핀을 송신할 때는 HIGH로, 수신할 때는 LOW로 설정해야 하는데,
보통은 DE/RE를 묶어서 제어보드의 GPIO핀에 붙이고 이를 올렸다 내렸다 하면서 제어한다.
이게 아두이노같이 GPIO가 빠릿빠릿하게 동작하는 경우에는 괜찮은데,
그렇지 않은 경우에는 타이밍이 안 맞아서 데이터가 깨지는 환장할 상황이...
그래서, 전부는 아니겠지만 많은 경우에 TX와 연동해서 전송 방향을 자동으로 설정해주는 부가 회로를 만들어 붙여서 쓴다. 동일한 MAX485 칩을 쓰는 DFRobot의 RS485 shield 같은 경우, DIP switch로 수동/자동 설정이 가능한데, 자동으로 설정하고 쓰면 shield에 있는 자동 제어 회로를 사용할 수 있게 된다.
그런데... 귀찮잖아?
이 귀찮음을 어찌하리...라고 생각했으나,
열심히 찾아보니 이 귀찮음을 이미 해결해주는 RS485 칩도 나와 있더라.
이름하여 MAX13487E... MAX485와 마찬가지로 Maxim Integrated의 칩이다.
게다가 이를 탑재한 모듈도 이미...
MAX13487E 칩도 DE/RE 핀이 나와있긴 한데,
그냥 두 핀을 묶어서 5V Vcc에 연결해주면 전송 방향 설정을 자동으로 수행한다. (오오...)
그래서 저 모듈에서는 아예 DE/RE랑 연결되는 핀헤더 자체가 없다. 그냥 RS232처럼 TX, RX, VCC, GND만 연결하면 끝.
가격은 MAX485에 비해서 조금 비싸다. 저 빨간 모듈이 국내 소매가로 2,600원 정도에서 시작하니까,
430원짜리 MAX485에 비해서는 많이 비싼 물건이다.
그래도 머리에 쥐나는 것보다야 낫지...
게다가 이 모듈에서 마음에 드는 점이 하나 더 있는데,
모듈에 탑재한 RS485 종단저항을 쓸지 말지를 사용자가 선택할 수 있게끔 제작된 것이다.
MAX485를 탑재한 430원짜리 모듈의 경우, RS485 A/B 사이에 120ohm의 종단저항이 "무조건" 연결되어 있는 구조로 되어 있다.
원래 RS485에서 종단저항은 multidrop으로 연결되는 전체 구성의 양쪽 끝단에만 설치하는게 정상인데,
430원짜리 모듈은 이를 안 쓰려면 일일이 저항을 떼어내어야 한다.
반면에 MAX13487EESA+를 탑재한 빨간 모듈은 저항은 탑재하되, 저항과 B라인 사이의 연결이 끊겨있어서, 전체 구조에서 다수를 차지하는 중간 장치들은 손을 안대도 되고, 양 끝단의 장치에서만 끊어져있는 R16 부분만 인두로 이어주면 종단저항이 활성화된다. ON/OFF가 필요하면 그냥 스위치를 달아버려도 되고.
가격이 조금 세긴 하지만, 여러 번거로움을 줄일 수 있어서 이번에 구입한 모듈이 제법 마음에 든다.
'IT > IoT' 카테고리의 다른 글
STM32MP1 BSP 2.0.0 공개 (0) | 2020.06.24 |
---|---|
저렴한 STM32MP157C 개발 보드, ODYSSEY-STM32MP157C (0) | 2020.06.22 |
C.H.I.P. 윈도용 드라이버 설치 (0) | 2019.01.06 |
Intel Quark EDKII 1.0.2 빌드 실패 시 해결 방법 (0) | 2014.12.25 |
Bluetooth 4.0을 품은 아두이노, BLUNO (0) | 2014.11.29 |