출처 :
Push-Pull 일때
인풋이 1이면 아웃풋이 1이 나오고
인풋이 0이면 아웃풋이 0이 나온다.
Open Drain 일때
단순히 Push-Pull에서 위의 PMOS 트랜지스터가 disabled 된 형태이다.
인풋이 0일때 아웃풋이 0이다.
인풋이 1일때는 아웃풋이 플로팅 상태이다.
이러한 회로는 외부 전원과 풀업저항을 연결해서 사용해야하는데, MCU의 출력레벨인 3.3V가 아닌 레벨이 다른 전원 소스를 사용할 수 있게끔하여 유연성을 제공한다.
또한 오픈드레인은 I2C버스를 구성하는데도 쓰인다.
SCL, SDA 라인에는 풀업저항이 달려있고 다수의 디바이스가 연결된 형태로, 통신을 하지 않을 때는 라인이 HIGH상태를 유지하다가 어떤 마스터가 신호를 LOW로 당기고 통신을 시작했을 때 다른 마스터가 끼어들 수 없는 충돌 방지 기능이 있다.
'임베디드 개발 > 펌웨어' 카테고리의 다른 글
CISC 와 RISC (0) | 2022.06.23 |
---|---|
STM32 ] Datasheet 첫 장에 나오는 DMIPS 란 (0) | 2022.06.23 |
Memory mapped I/O 와 I/O mapped I/O (0) | 2022.06.23 |
STM32 ] __IO , volatile 타입 한정자 (Qualifier) (2) | 2022.06.23 |
비트 마스크 기법 , 원하는 비트만 조작하기 (0) | 2022.05.21 |