모듈에서 여러 풀업 저항을 처리하는 방법


9

며칠 전에 spi / i2c 인터페이스를 포함하는 개발 보드 용 모듈을 만드는 것에 대해 생각하고있었습니다.

문제는 메인 보드의 MCU 핀에 풀업 저항을 포함시키지 않았고 모듈을 추가하여 "일반"으로 만들어서 모든 사용자가 저항을 추가 할 필요없이 사용할 수 있다는 것입니다 프로토 타입 보드.

그러나 나는 다음 문제에 직면했다. 추가 모듈에 풀업 저항을 추가하고 예를 들어 둘 이상의 모듈을 동일한 버스에 연결하면 저항을 병렬로 가져 와서 저항이 떨어지고 기능을 수행하지 못하게됩니다.

그러나 풀업 저항을 메인 보드에 추가하면 MCU의 핀이 항상 액티브 로우 상태가됩니다.

따라서 주요 질문은 다음과 같습니다.

풀업 저항을 갖는 동일한 버스에 여러 개의 모듈을 연결하고 하나 이상의 모듈을 가질 때 병렬로 연결하지 않는 방법은 무엇입니까? 가능합니까?

또는 여기서 가장 좋은 해결책은 MCU에서 풀업 저항을 활성화하고 모듈에 포함시키지 않는 것입니까?

감사.-


풀업 저항 만 포함 할 별도의 모듈 생성 :)
Alexandr Zarubkin

답변:


14

각 버스의 총 길이가 1 미터 미만인 것으로 가정합니다. 이는 일반 I 2 C 및 SPI에 일반적입니다 . 또한 버스 커패시턴스는 사양 내에 있습니다.

풀업 저항 세트는 하나만 있어야합니다. 결과적으로 가장 적합한 장소는 메인 컨트롤러 보드입니다. 풀업을 모듈 위에 올려 놓지 마십시오.

어떤 경우에는 풀업을 원하고 다른 경우에는 풀업을 원하지 않는 경우.

  • 풀업 저항이 필요하지 않은 경우에는 풀업 저항을 채우지 마십시오.
  • 풀업이 점퍼를 통해 신호 라인에 연결되도록 메인 컨트롤러 보드를 설계하십시오. 풀업이 필요하지 않은 경우 단락 블록을 제거하십시오.

편집 : 솔직히, Sparkfun이 I 2 C 슬레이브 모듈 에 풀업을 넣는 것은 실수라고 생각합니다 . 불행히도, 모듈을 구입하는 모든 사람이 과도한 풀업이 문제가 될 수 있다는 것을 인식하지는 않습니다. 슬레이브 주변 보드 대신 컨트롤러 보드에 솔더 점퍼가있는 풀업이 있으면 더 좋을 것입니다. 아 .. 잠깐만 .. Arduino는 (선택적) 풀업을 수행하지 않습니다. 자, 어디서나 풀업을 쉬게합시다. 보다 빠른 초기 경험을 제공합니다. 그러나 몇 개의 슬레이브 모듈을 추가하면 버스가 작동을 멈 춥니 다.

업데이트 (2015 년 5 월) :
- 다른 스레드의 의견 관련 토론.
-최근 모듈에서 SparkFun은 Vcc와 I 2 C 풀업 저항 ( :) 사이에 솔더 블롭 점퍼를 추가하기 시작했습니다 . 따라서 풀업을보다 쉽게 ​​분리 할 수 ​​있습니다.

업데이트 (2015 년 12 월) : 여러 모듈로
I 2 C 문제를 해결하는 것과 비슷한 질문이 계속 메시지 보드에 나타납니다. 확장 된 일반 응답을 시도하십시오.


예, 실제로 내 경우는 예입니다. 예를 들어 일부 매장에서 판매되는 모든 rtc 모듈에는 풀업 저항이 포함되어 있습니다. 그렇기 때문에 나는 주요 질문에 굵게 표시했습니다. :)
Sein Oxygen

1
@SeinOxygen 풀업 저항이있는 모듈과 자체 풀업이있는 컨트롤러가있는 경우 이러한 모든 저항이 병렬로 나타나고보다 견고한 풀업 (더 작은 저항)을 나타냅니다. 풀업으로 총 3 개의 2.2kΩ 저항이 있다고 가정합니다. 총 풀업 저항은 733Ω입니다. 이는 I2C 사양을 위반합니다. 무엇을해야합니까? 모듈에서 여분의 풀업을 제거하십시오 (아마 처음에 거기에 없었을 수도 있음).
Nick Alexeev

@SeinOxygen 이 스레드의 I2C 풀업 값에 대한 추가 정보 .
Nick Alexeev

4

한 가지 옵션은 SIL 또는 DIL 저항 팩을 사용하여 각 모듈의 소켓에 장착하는 것입니다. 여러 개의 모듈로 시스템을 구축 할 때는 마지막 모듈을 제외한 모든 모듈에서 빼냅니다. 이것은 점퍼보다 작은 보드 공간을 절약합니다.

이 주제의 변형에는 단일 점퍼로 제어되는 저항기를 연결하거나 분리하는 FET 스위치 또는 커넥터의 예비 핀이 포함될 수 있습니다 (따라서 다른 모듈이 연결되어 있으면 저항기가 자동으로 분리됨)

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