본문 바로가기

아두이노우노 R4

i2c 충돌나면 풀업저항 다는 게 제일 먼저 할 일

반응형

 

예전에 만든 미세먼지 보드는 ssd1306 OLED와 PM2008 미세먼지 센서를 I2C 인터페이스로 연결하여 잘 동작했다. 새로 만든 보드는 OLED를 새로 구입하여 연결했는데 동작하지 않아서 이틀 동안 내내 시험하고 프로그램 수정하고 참 주옥같은 시간을 보냈다. 

 

결국 SCL, SDA 라인에 아래처럼 풀업 저항을 달아 깔끔하게 해결했다. 머릿속에는 이미 해결책이 들어 있었는데 밖으로 나오기엔 시간이 필요했는지, 아니면 게으르고 미루는 습성 둘 다 일거다. 여하튼 잘 해결했다. 멈추지 않고 잘 동작한다.

 

I2C OLED 새로 샀는데 아마 풀업저항이 내부적으로 없었던 이유로 보이는데 왜 안달았을까? 아래와 같은 일이 발생하면 우선 이무것도 잃을 것이 없으니 무조건 풀업저항을 달아준다. 저항은 10K 오옴을 넘지 않아야 한다.

 

- I2C 조금 동작하다가 멈추는 경우

- 디버깅 하다 보면 부품 문제가 아니고 MCU 라는 의심이 들 경우

- I2C 인터페이스 부품을 새로 산 경우 

 

 

 

 

 

 

제품개발 교육보드 - 아두이노 우노 R4 미니마

 

 

반응형

더욱 좋은 정보를 제공하겠습니다.~ ^^