Tx 및 Rx와 직렬로 연결된 저항


10

내 보드를 만들고 Arduino 부트 로더와 함께 ATmega 328을 사용하고 있습니다. ATMega의 Rx 및 Tx에 연결할 FTDI 칩 또는 프로그래밍 할 직렬을 출력하는 GPS를 선택하는 DIP 스위치가 있습니다. 나는이 회로도를 참조로보고있었습니다 : http://arduino.cc/en/uploads/Main/ArduinoNano30Schematic.pdf

ATMega에서 Rx와 Tx에 2 개의 저항이 나오는 이유는 무엇입니까? FTDI 칩에 연결하기위한 것만 필요합니까, 아니면 GPS에도 있어야합니까?


나는 그것들이 종단 저항이라고 생각했지만 PCB 트레이스에 1K 임피던스가 있다면 더 큰 문제가 있습니다.
drxzcl 2016 년

1
그것을 디자인 한 사람들에게 물어보십시오.
endolith

답변:


10

그중 하나는 AVR에 출력으로 RxD가 프로그래밍되어있을 때 발생할 수있는 손상을 방지하기위한 것입니다. AVR 핀이 상당히 많은 전류를 공급하고 싱크 할 수 있기 때문에 두 장치의 핀이 손상 될 수 있습니다. 다른 저항이 필요하다고 생각하지 않습니다.


펌웨어 버그를 보상하기 위해 하드웨어를 추가하려는 경우 목록이 끝나지 않습니다. AVR에 대해서는 잘 모르지만 대부분의 마이크로 컨트롤러는 이러한 이유로 정확하게 높은 임피던스 상태의 핀으로 깨어납니다. 펌웨어가 명시 적으로 만들 때까지 일반 핀은 출력이되지 않습니다. 때로는 버그를 처리하기위한 추가 하드웨어가 프로토 타입에 적합하지만 테스트 된 펌웨어가있는 대량 제품의 경우 이는 낭비 일뿐입니다. 비록 의도적으로 이것을하지 않더라도 대부분의 디지털 출력은 함께 걸린 경우에도 잘 유지됩니다.
Olin Lathrop 2016 년

8
Arduino는 일반적으로 예술 및 디자인 학생들과 같은 사람들이 사용하므로 그러한 보호 장치가 필요합니다. OP에는 저항이 필요하지 않습니다.
레온 헬러

1
비트 뱅 모드에서 FT232의 Rx를 출력으로 설정할 있다고 생각 합니다.
코너 울프

2
@Olin 핀을 출력 핀으로 용도 변경하는 것은 일반적이며 프로그래밍과 일반 IO 모두에 사용할 수있는 기능입니다. PORTD는 아두 이노에서 가지고있는 유일한 풀 8 비트 포트이므로 정상적인 작동 중에 직렬로 말할 필요가없는 경우 tx / rx 라인을 재사용하는 것이 표준 요금입니다.
John Meacham

5

이러한 저항에 대한 정당한 이유가없는 것 같습니다. 해당 회로도의 두 부분은 모두 공통 접지로 5V에서 실행되는 것으로 보입니다. 두 칩 사이의 라인에 저항이 필요하지 않습니다.

선이 보드에서 분리 된 경우 온보드 부품을 보호하기 위해 저항을 직렬로 연결해야 할 수도 있지만, 해당 회로도에서 발생하지 않는 것 같습니다.

이것은 Arduino 회로도입니다. 그것은 누군가가 그것을 전문적으로하지 않는 좋은 기회가 있다는 것을 의미합니다. 거기에는 많은 미신이 있습니다. 인터넷에 무언가가 있다고해서 그것이 올바르게 끝난 것은 아닙니다.


6
Arduino는 특별히이 분야에 새로운 사람들을위한 것입니다. 따라서 버스 충돌을 일으킬 수있는 하드웨어 오류에 견딜 수 있도록 하드웨어를 설계하는 것은 상식입니다. 저항이 좋은 이유를 알 수 있습니다. 사람들은 실수로 TX / RX 라인을 출력으로 설정해서는 안됩니다.
코너 울프

저항기가 있어야 할 이유가 있습니다. 다른 답변을 확인하십시오.
Marcelo

5

이것은 오래되고 이미 답변 된 질문이지만, 어떤 답변에서도 저항이 있어야 할 가장 좋은 이유 중 하나를 찾지 못했습니다.

대부분의 사람들은 칩 프로그래밍을 위해 Arduino를 PC에 연결하거나 직렬 디버깅을 수행하기 위해 RX / TX 만 사용하지만 다른 사람들은 Arduino의 RX / TX 핀을 사용하여 다른 직렬 장치와 통신합니다. 이 경우 FTDI 칩과이 다른 장치가 충돌하고 단락으로 인해 두 장치가 모두 손상 될 수 있습니다. 이 저항기는 AVR RX / TX 핀에 하나가 연결되어있을 때 다른 장치와 FTDI를 "분리"하여 둘 다를 보호하고 동시에 배선 및 연결할 수 있습니다.

기억해야 할 것은 일단 다른 직렬 장치가 Arduino의 RX / TX 핀에 연결되면 저항이 풀업 / 풀다운 저항과 유사한 방식으로 FTDI의 논리 레벨을 마스킹하므로 외부 장치가 FTDI 통신보다 "선호"가 있습니다.


1
이것은 내가 대답하고 싶었던 것이 며, 내가 전에이 주제를 검색 한 이후 매우 정확합니다.
ElectronS


4

다른 오프 보드 장치가 전원이 꺼 졌을 때 Atmel에 전원을 공급하는 것을 방지하기 위해 수행 될 수 있습니다. Atmel의 내부 클램프 다이오드를 통해 흐르는 전류로 인해 ...


EE.SE에 오신 것을 환영합니다! 일반적으로 질문이 신뢰할 수 있고 답변이없는 한 이전 질문에 대답하지 않는 것이 좋습니다. 그 말로,이 특정 질문은 3 세 이상이며 받아 들일만한 대답이 있습니다. 앞으로는 이전 질문에 대한 답변을 앞 페이지의 질문 피드 맨 위로 가져오고 EE.SE에 지저분한 모양을 제공하므로 오래된 질문에 대답하지 마십시오. 감사!
Funkyguy 2011

2
@ Funkyguy 받아 들여진 대답은 사실이 아닌 사실이지만, 사실이 아닙니다.
Chris Stratton

2

보드 외부로 나가는 신호에 작은 값 (100 옴 정도) 직렬 저항을 추가하면 RF 방출이 감소 할 수 있습니다. 그러나 예시 회로도의 저항은 그다지 적합하지 않은 것 같습니다. 저항의 또 다른 용도는 정말 저렴한 mux입니다. FTDI 칩이 Arduino의 RX 핀을 구동하려고 시도하고 헤더에 아무것도 시도하지 않으면 FTDI 칩이 "승리"되지만 헤더의 무언가가 직렬 저항없이 해당 핀을 구동하려고하면 헤더의 장치가 " 승리". Arduino의 RX 핀에있는 저항기에 대한 유용성을 설명 할 수 있습니다. FTDI의 RX 핀에 연결된 "TX"와이어에 대한 다른 외부 연결이없고 보이지 않는 경우가 아니라면 TX에서 어떤 용도로 사용되는지 확실하지 않습니다 (외부 연결이있는 경우,


2

이전에 I2C 및 UART 버스에서 100 옴 저항을 보았지만 종종 ESD 보호용입니다. MCU의 내장 클램프 다이오드와 함께 작동합니다.

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