전압 레벨이 서로 다른 디바이스(Device) 간의 I2C 통신을 해야 될 경우 레벨시프터(Level Shifter)를 사용한다.
A 디바이스 전압 레벨이 1.8V이고 B 디바이스 전압 레벨이 5V인데 A 디바이스와 B 디바이스 간의 I2C 통신을 해야 되는 상황일 때 레벨시프터를 사용한다.
레벨시프터 IC가 있지만 FET를 사용하는 방법이 심플하고 비용과 PCB 공간적으로 유리한 점이 많아 FET를 활용한 레벨시프터를 소개하고자 한다.
아래 사진은 레벨시프터 회로도이다.
A 디바이스와 B 디바이스 사이에 FET가 위치하고 각 디바이스 전압 레벨에 맞게 풀업(Pull-up) 저항으로 전압을 걸어준다.
FET의 드레인과 소스의 극성에 주의할 필요가 있으며 FET의 게이트는 낮은 전압 쪽의 전원에 결선된다.
단순한 회로이지만 한 가지 주의해야 되는 사항이 있다.
FET의 문턱전압이라 불리는 Gate Threshold Voltage를 확인해야 된다.
필자는 레벨시프터에 사용되는 FET는 FDV301N을 사용한다.
FDV301N을 사용하는 이유는 Gate Threshold Voltage와 연관이 있다.
아래 사진은 2N7002의 Electrical Characteristics이다.
Gate Threshold Voltage 항목을 통해 2N7002의 Gate Threshold Voltage를 알 수 있으며 MAX 2.5V이다.
2N7002의 Vgs가 2.5V 이상이 되어야 2N7002는 On 상태가 된다.
아래 사진은 FDV301N의 Electrical Characteristics이다.
Gate Threshold Voltage 항목을 통해 FDV301N의 Gate Threshold Voltage를 알 수 있으며 MAX 1.5V이다.
FDV301N의 Vgs가 1.5V 이상이 되어야 FDV301N은 On 상태가 된다.
위 회로도에서 FET를 2N7002로 사용했을 경우 2N7002의 Vgs가 1.8V이므로 2N7002는 Off 상태이다.
2N7002가 Off 상태이므로 A 디바이스와 B 디바이스가 안정적으로 통신을 할 수가 없다.
이처럼 FET로 레벨시프터를 사용하게 될 경우 디바이스 전압 레벨에 맞춰서 FET의 Gate Threshold Voltage를 확인하고 FET를 선정해야 된다.
'[Circuit Design] > Communication' 카테고리의 다른 글
EEPROM Interface (0) | 2021.08.17 |
---|