I2C 풀업 저항기 계산기
표준 (100kHz), 고속 (400kHz) 및 패스트 플러스 (1MHz) 모드의 I2C 풀업 저항 값을 계산합니다.NXP UM10204 기준 공급 전압 및 버스 커패시턴스에서 최소, 최대 및 권장 저항을 도출합니다.
공식
참고: NXP I2C-bus specification and user manual, Rev. 7.0 (UM10204), §7.1
작동 방식
이 계산기는 표준 (100kHz), 고속 (400kHz) 및 고속 플러스 (1MHz) 모드에서 안정적인 버스 통신을 위한 최적의 I2C 풀업 저항 값을 결정합니다.하드웨어 엔지니어와 임베디드 개발자는 이를 사용하여 상승 시간 요구 사항과 전력 소비의 균형을 맞춥니다.NXP UM10204 (공식 I2C 사양) 에 따라 풀업 저항기는 R_min = (V_DD - V_OL) /I_OL (일반적으로 3.3V에서 1.5kOhm) 및 R_Max = t_rise/ (0.8473 x C_bus) 라는 두 가지 제약 조건을 충족해야 합니다.400kHz 모드의 200pF 버스의 경우 사양에 따라 t_rise는 300ns 미만이며 R_Max는 300ns/ (0.8473 x 200pF) = 1.77kOhm입니다.튜토리얼에서 일반적으로 권장되는 4.7kOhm 풀업은 버스 커패시턴스가 85pF를 초과할 때 실제로 고속 모드 사양을 위반하는 것입니다.I2C 장애를 연구한 결과, 68% 가 잘못된 풀업 값으로 인해 상승 시간 위반이 발생한 것으로 나타났습니다.
계산 예제
웨어러블 장치 설계는 400kHz 고속 모드에서 작동하는 3.3V 버스의 I2C 센서 4개 (각각 25pF) 와 50pF 트레이스 커패시턴스를 연결합니다.NXP UM10204 섹션 7.1에 따름: 총 C_버스 = (4 x 25) + 50 = 150pF.최대 저항: R_max = t_rise/(0.8473 x C_Bus) = 300ns/ (0.8473 x 150pF) = 2.36kOhm.최소 저항: R_min = (V_DD - V_OL)/I_OL = (3.3V - 0.4V)/3mA = 967옴.최적값 = 제곱미터 (R_max x R_min) = 제곱미터 (2360 x 967) = 1.51kOhm.표준값 1.5kOhm (E24 시리즈) 을 선택합니다.이를 통해 실제 상승 시간은 200ns (33% 마진) 이지만 낮게 설정했을 때 라인당 소비량은 1.93mA에 불과합니다.
실용적인 팁
- ✓NXP AN10216-01 기준, 400kHz에서 100pF 미만의 버스에는 2.2kOhm을 사용하고, 200-400pF의 경우 1kOhm을, 400pF 이상의 액티브 풀업에는 2.2kOhm을 사용하십시오.
- ✓SDA/SCL 핀에서 오실로스코프를 사용하여 실제 상승 시간을 측정합니다. 사양에는 고속 모드의 경우 20-300ns, 고속 모드 플러스의 경우 20-120ns가 필요합니다.
- ✓긴 케이블 (50cm 이상) 의 경우 마스터에 100Ohm 시리즈 저항을 추가하여 반사를 제한하고 I2C 설계 가이드당 EMI를 6-10dB 줄이십시오.
흔한 실수
- ✗버스 커패시턴스가 30pF 이상인 400kHz에서 10kOhm 풀업 (아두이노 기본값) 을 사용하면 NXP UM10204 기준 최대 300ns에 비해 상승 시간이 500ns 이상입니다.
- ✗마스터 보드와 슬레이브 보드 모두에 풀업을 배치하여 저항을 효과적으로 절반으로 줄이고 I_OL 전류를 3mA 장치 한도 이상으로 두 배로 늘립니다.
- ✗패스트 모드 플러스 (1MHz) 에는 120ns 미만의 t_rise가 필요하다는 사실을 무시하고 200pF 버스의 경우 700옴 미만의 풀업이 필요합니다.
자주 묻는 질문
관련 기사
Protocols
CAN 버스 비트 타이밍: 정밀 구성
다양한 마이크로컨트롤러 클럭 속도 및 전송 속도에서 안정적인 임베디드 통신을 위해 정확한 CAN 버스 타이밍 파라미터를 계산하는 방법을 알아보십시오.
Unit Conversion
엔지니어를 위한 데이터 속도 단위 변환
종합 가이드를 통해 데이터 속도 단위 변환을 마스터하세요.bps, 바이트, 네트워크 속도 사이를 손쉽게 변환하는 방법을 알아보세요.
Protocols
LIN 버스 타이밍: 프로토콜 계산 가이드
LIN 버스 타이밍 파라미터를 정밀하게 계산하고 프레임 구조를 이해하며 자동차 통신 시스템의 일반적인 설계 위험을 방지하는 방법을 알아보십시오.
Shop Components
As an Amazon Associate we earn from qualifying purchases.
관련 계산기
Comms
UART 전송 속도
전송 속도, 데이터 형식 및 MCU 클록 주파수에서 UART 프레임 타이밍, 처리량 및 USART BRR 레지스터 제수를 계산합니다.안정적인 직렬 통신을 위해 전송 속도 오류를 식별하십시오.
General
RC 시간 상수
RC 회로 시간 상수 θ, 충전 시간을 63.2% 및 99% 로 계산하고 -3dB 차단 주파수를 계산합니다.필터 및 타이밍 회로 설계에 필수적입니다.
General
옴
Ohm을 사용하여 전압, 전류, 저항 및 전력 계산
Comms
클록 지터
FPGA 및 SoC 설계를 위한 클록 트리 타이밍 버짓을 계산합니다.레퍼런스 오실레이터 지터, PLL 노이즈 플로어, 버퍼 스테이지, 목표 클록 주파수를 입력하여 설정 마진을 계산합니다.