DIODES AP33772 USB PD 싱크 컨트롤러 Raspberry Pi I2C 인터페이스
소개
- USB PD33772 Type C Connector-equipped Device(TCD, Energy Sink)의 프로토콜 장치로 동작하는 AP3.0 Sink Controller는 USB PD3.0 Type C Connector-equipped PD3.0에서 적절한 PDO(Power Data Object)를 요청하기 위한 것이다. .XNUMX 규정 준수 충전기(PDC, 에너지원).
- 그림 1은 PD3.0 싱크 컨트롤러 IC(AP33772)가 내장된 TCD가 USB PD3.0 디코더(AP43771)가 내장된 PDC에 물리적으로 연결되는 것을 보여줍니다.
- Type C-to-Type C 케이블. 내장된 USB PD3.0 호환 펌웨어를 기반으로 AP33772 및 AP43771 쌍은 USB PD3.0 표준 연결 절차를 거쳐 적절한 PD3.0 충전 상태를 설정합니다.
- AP33772 싱크 컨트롤러 EVB는 시스템 설계자가 I33772C 인터페이스를 통해 AP2 내장 명령을 전송하여 USB 전력 공급 충전기에서 PDO를 요청할 수 있도록 사용 편의성과 뛰어난 다양성을 제공합니다. 일반적인 시스템 설계에는 특정 소프트웨어(예: IDE) 설정이 필요한 MCU 프로그래밍이 필요하며 시간 소모적인 개발 프로세스가 될 수 있습니다.
- 이와는 대조적으로 사용자 친화적인 Linux OS에서 실행되고 유연한 GPIO 핀이 장착된 단일 보드 컴퓨터(SBC)인 RPI(Raspberry Pi)는 PD 충전기와 함께 작동하는 AP33772 Sink EVB를 검증하는 간단한 방법을 제공합니다. 이 가이드의 목표는 시스템 설계자에게 RPI에 대한 소프트웨어 검증을 신속하게 완료한 다음 원하는 MCU로 개발을 포팅하여 신속한 턴어라운드 시장 요구 사항을 충족할 수 있는 효과적인 플랫폼을 제공하는 것입니다.
- AP33772 EVB 사용 설명서의 보충 문서인 이 사용 설명서는 I33772C 인터페이스를 통해 RPI SBC로 AP2 EVB를 제어하는 쉬운 방법을 설명합니다.
- AP1와 인터페이스하기 위한 그림 33772의 MCU 블록 역할은 RPI가 담당합니다. 이 사용자 가이드는 예를 들어 많은 레지스터 정의 및 사용 정보를 다룹니다.amp그러나 전체 최신 정보는 AP33772 EVB 사용 설명서를 참조하십시오. (참조 2 참조)
- 그림 1 – 일반적인 TCD는 I33772C 인터페이스가 있는 AP2 PD 싱크 컨트롤러를 사용하여 USB Type-C PD3.0/PPS 준수 소스 어댑터에서 전원을 요청합니다.
검증 플랫폼 설정
AP33772 싱크 컨트롤러 EVB
그림 2 싱크 컨트롤러 EVB의 사진을 보여줍니다. Type-C 커넥터, I2C 핀, 인터럽트용 GPIO3 핀, OTP용 NTC 서미스터, 충전 상태를 표시하는 LED 표시기, 부하에 대한 Vout 커넥터가 특징입니다.
라즈베리파이 제로 2W
- 모든 최신 버전의 RPI는 I33772C 핀을 통해 AP2 싱크 컨트롤러 EVB를 제어할 수 있습니다. Raspberry Pi Zero 2W(RPI Z2W)는 비용 효율성과 다용성을 위해 이 사용 설명서에서 사용됩니다. 모든 RPI 중 폼팩터가 가장 작으며 WiFi와 Bluetooth가 통합되어 있어 추가 구성 없이 무선 연결이 가능합니다. AP33772 싱크 컨트롤러 EVB 검증 플랫폼의 역할을 완벽하게 수행합니다.
- 사용자는 Raspberry Pi 공식을 확인할 수 있습니다. web추가 정보 사이트(https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/)
검증 플랫폼 연결 및 전원 켜기
그림 5 검증 플랫폼의 완전한 연결 및 설정을 보여줍니다. 사용자는 다음 단계를 따라야 합니다.
- RPI와 AP33772 EVB 사이에 SCL, SDA 및 GND 핀 연결
- 65W PD 충전기와 AP33772 EVB를 Type-C 케이블로 연결
- RPI 및 PD 충전기의 전원을 켭니다.
라즈베리 파이 소프트웨어 설정
라즈베리파이 OS
- RPI를 지원하는 다양한 운영 체제가 있습니다. 이 중에서 RPI 공식 사이트에서 가장 많이 사용하고 추천하는 Raspberry Pi OS를 선택했습니다.
OS 이미지 다운로드 및 SD 카드 준비
- PC에 Raspberry Pi Imager 도구를 다운로드하고 설치합니다(https://www.raspberrypi.com/software/). 지침에 따라 올바른 OS 이미지가 로드된 Micro-SD를 준비합니다(https://youtu.be/ntaXWS8Lk34/). 32BG 이상의 Micro-SD 카드를 권장합니다.
라즈베리 파이 OS 설치
- RPI의 Micro-SD 슬롯에 이전에 이미저와 함께 로드된 Micro-SD 카드를 삽입합니다. 전원 어댑터, 마우스/키보드 및 HDMI 모니터를 연결합니다. RPI의 전원을 켜고 지시에 따라 OS 설치 및 기본 설정을 완료합니다. 최신 업데이트가 OS에 포함되어 있는지 확인하십시오.
필수 기능 설정
- RPI에서 I2C 인터페이스를 성공적으로 실행하려면 SSH, VNC 및 I2C 기능을 구성하거나 설치해야 합니다.
Raspberry Pi 구성 – SSH, VNC, I2C
- RPI 부팅 후 "Raspberry Pi Configure" 유틸리티를 열고 SSH, VNC 및 I2C 기능을 켭니다.
I2C 전송 속도 구성
- /boot/config.txt에서 dtparam 및 dtoverlay 관련 행을 교체합니다. file 와 함께:
- dtoverlay=i2c-bcm2708
- dtparam=i2c_arm=on,i2c_arm_baudrate=640000
I2C 도구 설치
- I2C-Tools는 Raspberry Pi OS의 명령줄에서 실행되는 간단한 명령을 제공하는 도구 세트입니다. 다음을 실행하여 OS에 I2C 도구를 설치합니다. sudo apt install i2c-tools
SMBus2 설치
- SMBus2는 사용자가 Python 환경에서 I2C 인터페이스를 제어할 수 있는 편리한 기능을 제공하는 Python 모듈입니다. 다음을 실행하여 Python용 SMBus2 모듈을 OS에 설치합니다. sudo pip3 install smbus2
기본 명령 예amp레
- 이 사용자 가이드는 RPI에서 I2C 인터페이스로 작업하는 두 가지 다른 방법을 보여줍니다. I2C-Tools 유틸리티와 Python SMBus2 모듈입니다. 이 섹션에서는 두 가지 방법의 기본 명령을 소개합니다.
I2C 도구 명령 Examp레
- I2C-Tools 유틸리티 패키지는 i2cdetect, i2cget 및 i2cset 명령을 제공합니다. 단순화된 사용법은 ex에 설명되어 있습니다.amp이 섹션 아래의 파일. I2C-Tools 유틸리티에 대한 자세한 내용은 다음을 참조하십시오. https://linuxhint.com/i2c-linux-utilities/.
- 표 1은 사용자의 편의를 위해 이 섹션에서 명령 사용을 요약하기 위한 AP33772 레지스터 요약을 보여줍니다. 전체 등록 정보는 AP33772 싱크 컨트롤러 EVB 사용 설명서를 참조하십시오.
등록하다 | 명령 | 길이 | 기인하다 | 전원 켜짐 | 설명 |
SRCPDO |
0x00 |
28 |
RO |
모든 00h |
SRC(PD 소스) 전원 기능을 노출하는 데 사용되는 PDO(Power Data Object).
총 길이는 28바이트입니다. |
PDONUM | 0x1C | 1 | RO | 00시간 | 유효한 소스 PDO 번호 |
상태 | 0x1D | 1 | RC | 00시간 | AP33772 상태 |
마스크 | 0x1E | 1 | RW | 01시간 | 인터럽트 활성화 마스크 |
권TAGE | 0x20 | 1 | RO | 00시간 | LSB 80mV |
현재의 | 0x21 | 1 | RO | 00시간 | 최하위 24mA |
온도 | 0x22 | 1 | RO | 19시간 | 온도, 단위: °C |
OCPTHR | 0x23 | 1 | RW | 00시간 | OCP 임계값, LSB 50mA |
OTTPHR | 0x24 | 1 | RW | 78시간 | OTP 임계값, 단위: °C |
DRTHR | 0x25 | 1 | RW | 78시간 | 경감 임계값, 단위: °C |
TR25 | 0x28 | 2 | RW | 2710시간 | 열 저항 @25°C, 단위: Ω |
TR50 | 0x2A | 2 | RW | 1041시간 | 열 저항 @50°C, 단위: Ω |
TR75 | 0x2C | 2 | RW | 0788시간 | 열 저항 @75°C, 단위: Ω |
TR100 | 0x2E | 2 | RW | 03CEh | 열 저항 @100°C, 단위: Ω |
RDO | 0x30 | 4 | WO | 00000000시간 | RDO(Request Data Object)는 전원 기능을 요청하는 데 사용됩니다. |
영상 | 0x34 | 2 | RW | 0000시간 | 공급업체 ID, 향후 애플리케이션용으로 예약됨 |
피디 | 0x36 | 2 | RW | 0000시간 | 제품 ID, 향후 적용을 위해 예약됨 |
예약된 | 0x38 | 4 | – | – | 향후 응용 프로그램을 위해 예약됨 |
표 1 – AP33772 레지스터 요약
I2C에 연결된 모든 장치 감지 – i2cdetect
- 현재 I2C-2 버스에 연결된 모든 i1c 장치를 표시하려면 명령 프롬프트에 다음을 입력하십시오. i2cdetect -y 1
- AP33772 Sink Controller EVB가 연결된 경우 장치가 0x51 주소에 연결된 것으로 사용자에게 표시되어야 합니다.
SRCPDO 읽기(0x00~0x1B)
- i2cget 명령은 2바이트보다 긴 블록 읽기를 지원하지 않습니다. 사용자는 28바이트 길이의 모든 PDO 데이터를 표시하려면 "for 루프"를 사용해야 합니다. 모든 PDO 데이터를 표시하려면 {0..27}의 i에 대한 bash 명령 프롬프트 아래에 다음을 입력하십시오. do i2cget -y 1 0x51 $ib; 완료
- 28개의 PDO를 나타내는 7바이트 데이터가 표시됩니다.
PDONUM 읽기(0x1C)
- 유효한 PDO의 총 수를 표시하려면 명령 프롬프트에 다음을 입력하십시오. i2cget -y 1 0x51 0x1c b
상태 읽기(0x1D)
- 이 명령은 디레이팅, OTP, OCP, OVP, 요청 거부됨, 요청 완료 및 준비를 포함한 싱크 컨트롤러의 상태를 보고합니다. 상태 정보를 표시하려면 명령 프롬프트에 다음을 입력하십시오. i2cget -y 1 0x51 0x1d b
- 사용자는 COMPLETE 비트를 읽어 성공적인 RDO 요청을 보장하기 위해 각 RDO 요청 후에 이 명령을 사용해야 합니다. 4.1.5 쓰기 마스크(0x1E)
- 이 명령은 AP3의 GPIO33772 핀을 통해 호스트에 신호를 보내는 인터럽트를 활성화합니다. 인터럽트에는 Derating, OTP, OCP, OVP, Request Rejected, Request Completed 및 Ready가 포함됩니다. 특정 인터럽트를 활성화하려면 해당 비트를 XNUMX로 설정합니다. 예를 들어amp파일에서 OCP 인터럽트를 활성화하려면 명령 프롬프트에서 다음을 입력하여 MASK 레지스터의 비트 4를 2로 설정합니다. i1cset -y 0 51x0 1x0e 10xXNUMX b
- OCP 보호가 트리거되면 AP3의 GPIO33772 핀이 높아집니다.
VOL 읽기TAG전자(0x20)
- 이 명령은 볼륨을 보고합니다.tage는 AP33772 싱크 컨트롤러에 의해 측정됩니다. 볼륨을 보고하려면tage, 명령 프롬프트에 다음을 입력합니다. i2cget -y 1 0x51 0x20 b
- 보고된 값의 한 단위는 80mV를 나타냅니다.
현재 읽기(0x21)
- 이 명령은 AP33772 싱크 컨트롤러에서 측정한 전류를 보고합니다. 전류를 보고하려면 명령 프롬프트에 다음을 입력하십시오. i2cget -y 1 0x51 0x21 b
- 보고된 값의 한 단위는 24mA를 나타냅니다.
TEMP 읽기(0x22)
- 이 명령은 AP33772 싱크 컨트롤러에서 측정한 온도를 보고합니다. 온도를 보고하려면 명령 프롬프트에 다음을 입력하십시오.
i2cget -y 1 0x51 0x22b - 보고된 값의 한 단위는 1°C를 나타냅니다.
- OCPTHR(0x23), OTPTHR(0x24) 및 DRTHR(0x25) 읽기 및 쓰기
- OCP, OTP 및 Derating 임계값은 OCPTHR, OTPTHR 및 DRTHR 레지스터에 값을 기록하여 사용자가 원하는 값으로 변경할 수 있습니다. 전직으로amp파일에서 OCP 임계값을 3.1A로 변경하려면 사용자는 명령 프롬프트에서 다음을 입력하여 OCPTHR에 0x3E(=3100/50=62=0x3E)를 작성해야 합니다. i2cset -y 1 0x51 0x23 0x3e b
- OTP 임계값을 110°C로 변경하려면 사용자는 명령 프롬프트에서 다음을 입력하여 OTPTHR에 0x6E(=110)를 작성해야 합니다.
- OCPTHR, OTPTHR 및 DRTHR에서 값을 읽으려면 명령 프롬프트에서 다음을 입력하십시오.
- i2cget -y 1 0x51 0x23b i2cget -y 1 0x51 0x24b i2cget -y 1 0x51 0x25b
- TR25(0x28~0x29), TR50(0x2A~0x2B), TR75(0x2C~0x2D), TR100(0x2E~0x2F) 읽기 및 쓰기
- AP10 EVB에는 Murata 03KΩ 음의 온도 계수(NTC) 서미스터 NCP103XH33772이 채워져 있습니다. 최종 설계에서 서미스터를 다른 것으로 변경하는 것은 사용자의 선호입니다. 사용자는 사용된 서미스터의 사양에 따라 TR25, TR50, TR75 및 TR100 레지스터 값을 업데이트해야 합니다. 예를 들어amp르,
- Murata의 6.8KΩ NCP03XH682가 설계에 사용됩니다. 25°C, 50°C, 75°C 및 100°C에서의 저항 값은 각각 6800Ω(0x1A90), 2774Ω(0x0AD6), 1287Ω(0x0507) 및 662Ω(0x0296)입니다. 이러한 레지스터에 해당 값을 쓰려면 명령 프롬프트에서 다음을 입력하십시오.
- i2cset -y 1 0x51 0x28 0x1a90 w i2cset -y 1 0x51 0x2a 0x0ad6 w i2cset -y 1 0x51 0x2c 0x0507 w i2cset -y 1 0x51 0x2e 0x0296 w
- 값을 읽으려면 명령 프롬프트에 다음을 입력하십시오.
- 출력 값은 2바이트 워드입니다. 명령이 2바이트 워드를 직접 처리하므로 사용자는 여기에서 리틀 엔디안 바이트 순서에 대해 걱정할 필요가 없습니다.
쓰기 RDO(0x30~0x33)
- PDO 요청 협상 절차를 시작하기 위해 4바이트 데이터가 little-endian 바이트 순서로 RDO(Request Data Object) 레지스터에 기록됩니다. 예를 들어amp3V 및 15A로 PDO3을 요청하려면 0x3004B12C가 RDO 레지스터에 기록됩니다. 명령 프롬프트에 다음을 입력합니다: i2cset -y 1 0x51 0x30 0x2c 0xb1 0x04 0x30 i
- 리틀 엔디안 바이트 순서 표기법에 맞게 최하위 바이트(0x2C)를 먼저 작성해야 합니다. AP9 싱크 컨트롤러 EVB 사용자의 표 10 및 표 33772을 참조하십시오.
- 자세한 RDO 콘텐츠 정보 안내.
- 사용자는 모두 2인 데이터로 RDO 레지스터를 작성하여 하드 리셋을 실행할 수 있습니다: i1cset -y 0 51x0 30x0 00x0 00x0 00x0 00xXNUMX i
- AP33772 싱크 컨트롤러가 초기 상태로 재설정되고 출력이 꺼집니다.
Python SMBus2 명령 Examp레
- Python은 다양한 지원 모듈로 인해 점점 더 인기를 얻고 있습니다. SMBus2는 그 중 하나이며 I2C 읽기 및 쓰기 명령을 처리할 수 있습니다. SMBus2는 read_byte_data, read_word_data, read_i2c_block_data, write_byte_data, write_word_data, write_i2c_block_data 명령을 제공합니다. 단순화된 사용법은 ex에 설명되어 있습니다.amp이 섹션 아래의 파일. SMBus2 모듈에 대한 전체 정보는 다음을 참조하십시오. https://smbus2.readthedocs.io/en/latest/.
SRCPDO 읽기(0x00~0x1B)
- SMBus.read_i2c_block_data는 최대 32바이트 블록 데이터 읽기를 지원하는 효과적인 명령입니다. 모든 28바이트 PDO 데이터를 읽으려면 python3 환경에서 다음을 사용하십시오.
- SMBus.read_i2c_block_data(0x51, 0x00, 28)
- 28개의 PDO를 나타내는 7개의 XNUMX바이트 데이터가 목록 데이터 구조로 반환됩니다.
PDONUM 읽기(0x1C)
- 유효한 PDO의 총 수를 읽으려면 python3 환경에서 다음을 사용하십시오.
- SMBus.read_byte_data(0x51, 0x1c)
- 유효한 PDO 카운트를 나타내는 XNUMX바이트 데이터가 반환됩니다.
상태 읽기(0x1D)
- 이 명령은 Derating , OTP, OCP, OVP, Request Rejected, Request Completed 및 Ready를 포함한 싱크 컨트롤러의 상태를 보고합니다. 상태 정보를 읽으려면 python3 환경에서 다음을 사용하십시오.
- SMBus.read_byte_data(0x51, 0x1d)
- 사용자는 COMPLETE 비트를 읽어 성공적인 RDO 요청을 보장하기 위해 각 RDO 요청 후에 이 명령을 사용할 수 있습니다.
쓰기 마스크(0x1E)
- 이 명령은 AP3의 GPIO33772 핀을 통해 호스트에 신호를 보내는 인터럽트를 활성화합니다. 인터럽트에는 Derating, OTP, OCP, OVP, Request Rejected, Request가 포함됩니다.
- 완료 및 준비. 특정 인터럽트를 활성화하려면 해당 비트를 XNUMX로 설정합니다. 예를 들어amp파일에서 OCP 인터럽트를 활성화하려면 python4 환경에서 다음을 사용하여 MASK 레지스터의 비트 3를 XNUMX로 설정합니다.
- SMBus.write_byte_data(0x51, 0x1e, 0x10)
- OCP 보호가 트리거되면 AP3의 GPIO33772 핀이 높아집니다.
VOL 읽기TAG전자(0x20)
- 이 명령은 볼륨을 보고합니다.tage는 AP33772 싱크 컨트롤러에 의해 측정됩니다. 볼륨을 보고하려면tage, python3 환경에서 다음을 사용하십시오.
- SMBus.read_byte_data(0x51, 0x20)
- 보고된 값의 한 단위는 80mV를 나타냅니다.
현재 읽기(0x21)
- 이 명령은 AP33772 싱크 컨트롤러에서 측정한 전류를 보고합니다. 현재를 보고하려면 python3 환경에서 다음을 사용하십시오.
- SMBus.read_byte_data(0x51, 0x21)
- 보고된 값의 한 단위는 24mA를 나타냅니다.
TEMP 읽기(0x22)
- 이 명령은 AP33772 싱크 컨트롤러에서 측정한 온도를 보고합니다. 온도를 보고하려면 python3 환경에서 다음을 사용하십시오.
- SMBus.read_byte_data(0x51, 0x22)
- 보고된 값의 한 단위는 1°C를 나타냅니다.
OCPTHR(0x23), OTPTHR(0x24) 및 DRTHR(0x25) 읽기 및 쓰기
- OCP, OTP 및 Derating 임계값은 OCPTHR, OTPTHR 및 DRTHR 레지스터에 값을 기록하여 사용자가 원하는 값으로 변경할 수 있습니다. 전직으로amp파일에서 OCP 임계값을 3.1A로 변경하려면 사용자는 python0 환경에서 다음을 사용하여 OCPTHR에 3x3100E(=50/62=0=3x3E)를 작성해야 합니다. SMBus.write_byte_data(0x51, 0x23, 0x3e)
- OTP 임계값을 110°C로 변경하려면 사용자는 python0 환경에서 다음을 사용하여 OTPTHR에 6x110E(=3)를 작성해야 합니다. SMBus.write_byte_data(0x51, 0x24, 0x6e)
- Derating 임계값을 100°C로 변경하려면 사용자는 python0 환경에서 SMBus.write_byte_data(64x100, 3x0, 51x0)를 사용하여 DRTHR에 25x0(=64)를 써야 합니다.
- OCPTHR, OTPTHR 및 DRTHR에서 값을 읽으려면 python3 환경에서 다음을 사용하십시오. SMBus.read_byte_data(0x51, 0x23) SMBus.read_byte_data(0x51, 0x24) SMBus.read_byte_data(0x51, 0x25) .
- TR25(0x28~0x29), TR50(0x2A~0x2B), TR75(0x2C~0x2D), TR100(0x2E~0x2F) 읽기 및 쓰기
- AP10 EVB에는 Murata 03KΩ 음의 온도 계수(NTC) 서미스터 NCP103XH33772이 채워져 있습니다. 최종 설계에서 서미스터를 다른 것으로 변경하는 것은 사용자의 선호입니다. 사용자는 사용된 서미스터의 사양에 따라 TR25, TR50, TR75 및 TR100 레지스터 값을 업데이트해야 합니다. 예를 들어amp즉 Murata의 6.8KΩ NCP03XH682가 설계에 사용됩니다. 25°C, 50°C, 75°C 및 100°C에서의 저항 값은 각각 6800Ω(0x1A90), 2774Ω(0x0AD6), 1287Ω(0x0507) 및 662Ω(0x0296)입니다. 이러한 레지스터에 해당 값을 쓰려면 python3 환경에서 다음을 사용하십시오.
- SMBus.write_word_data(0x51, 0x28, 0x1a90) SMBus.write_word_data(0x51, 0x2a, 0x0ad6) SMBus.write_word_data(0x51, 0x2c, 0x0507) SMBus.write_word_data(0x51, 0x2e, 0x0296)
- 값을 읽으려면 python3 환경에서 다음을 사용하십시오.
- 반환 값도 2바이트 단어입니다. 명령이 2바이트 워드를 직접 처리하므로 사용자는 여기에서 리틀 엔디안 바이트 순서에 대해 걱정할 필요가 없습니다.
쓰기 RDO(0x30~0x33)
- PDO 요청 협상 절차를 시작하기 위해 4바이트 데이터가 little-endian 바이트 순서로 RDO(Request Data Object) 레지스터에 기록됩니다. 예를 들어amp3V 및 15A로 PDO3을 요청하려면 0x3004B12C가 RDO 레지스터에 기록됩니다. python3 환경에서 다음을 사용하십시오.
- SMBus.write_i2c_block_data(0x51, 0x30, [0x2c, 0xb1, 0x04, 0x30])
- 자세한 RDO 콘텐츠 정보는 AP9 싱크 컨트롤러 EVB 사용 설명서의 표 10 및 표 33772을 참조하십시오.
- 사용자는 모두 XNUMX인 데이터로 RDO 레지스터를 작성하여 하드 리셋을 실행할 수 있습니다.
- SMBus.write_i2c_block_data(0x51, 0x30, [0x00, 0x00, 0x00, 0x00])
- AP33772 싱크 컨트롤러가 초기 상태로 재설정되고 출력이 꺼집니다.
실용적인 예amp레
Example 1: Bash I2C-도구 Examp파일: ap33772_querypdo.bash
이 전ample는 모든 유효한 PDO를 확인하고 vol을 나열합니다.tage 및 현재 기능 정보 출력.
코드 세부정보
코드 실행 및 출력
Example 2: 파이썬 SMBus2 Examp파일: ap33772_allpdo.py3
이 전ample는 모든 유효한 PDO를 확인하고 하나씩 위아래로 요청합니다.
코드 세부정보
코드 실행 및 출력
Examp코드 다운로드
Ex 목록amp르 코드
- Examp파일 코드에는 Bash 스크립트 및 Python 버전이 있습니다.
- ap33772_querypdo: 모든 PDO 정보 조회
- ap33772_reqpdo: 모든 PDO 정보를 보고하고 사용자가 지정한 PDO 요청을 보냅니다.
- ap33772_allpdo: 모든 PDO 정보를 보고하고 모든 PDO 요청을 위아래로 진행합니다.
- ap33772_pps: 모든 PDO 정보를 보고하고 ramp전체 PPS vol을 위아래로tag50mV 단계 크기의 e 범위
- ap33772_vit: 보고서 볼륨tage, 전류 및 온도 정보
Examp파일 다운로드 사이트
Example 코드는 Github에서 다운로드할 수 있습니다. 다운로드하려면 다음 명령을 실행하십시오. git clone https://github.com/diodinciot/ap33772.git-ap33772
참고문헌
- AP33772 데이터시트(USB PD3.0 PPS 싱크 컨트롤러): https://www.diodes.com/products/power-management/ac-dc-converters/usb-pd-sink-controllers/
- AP33772 I2C 싱크 컨트롤러 EVB 사용 설명서: https://www.diodes.com/applications/ac-dc-chargers-and-adapters/usb-pd-sink-controller/
- 라즈베리 파이 제로 2W: https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/
- 라즈베리 파이 OS: https://www.raspberrypi.com/software/
- I2C 도구 유틸리티: https://linuxhint.com/i2c-linux-utilities/
- SMBus2 모듈: https://smbus2.readthedocs.io/en/latest/
개정 내역
개정 | 발행일 | 논평 | 작가 |
1.0 | 4/15/2022 | 최초 릴리스 | 에드워드 자오 |
중요 공지
- DIODES INCORPORATED는 이 문서와 관련하여 상품성 및 특정 목적에의 적합성에 대한 묵시적 보증을 포함하되 이에 국한되지 않는 어떠한 종류의 명시적 또는 묵시적 보증도 하지 않습니다(및 모든 관할권의 법률에 따른 동등한 보증).
- Diodes Incorporated와 그 자회사는 이 문서 및 여기에 설명된 모든 제품에 대한 추가 통지 없이 수정, 개선, 개선, 정정 또는 기타 변경을 할 수 있는 권리를 보유합니다. Diodes Incorporated는 이 문서 또는 여기에 설명된 제품의 적용 또는 사용으로 인해 발생하는 어떠한 책임도 지지 않습니다. Diodes Incorporated는 특허 또는 상표권이나 타인의 권리에 따라 라이선스를 양도하지 않습니다. 이 문서의 모든 고객 또는 사용자 또는 해당 응용 프로그램에 설명된 제품은 그러한 사용의 모든 위험을 감수해야 하며 Diodes Incorporated 및 Diodes Incorporated에 대표되는 제품을 소유한 모든 회사를 보유하는 데 동의합니다. web모든 피해에 대해 무해한 사이트.
- Diodes Incorporated는 승인되지 않은 판매 채널을 통해 구매한 제품과 관련하여 어떠한 책임도 보증하거나 수락하지 않습니다.
고객이 의도하지 않았거나 승인되지 않은 용도로 Diodes Incorporated 제품을 구매하거나 사용하는 경우 고객은 Diodes를 배상하고 보유해야 합니다. - Incorporated와 그 대리인은 이러한 의도하지 않거나 승인되지 않은 신청과 관련된 개인 상해 또는 사망에 대한 청구로 인해 직간접적으로 발생하는 모든 청구, 손해, 비용 및 변호사 비용에 대해 무해합니다.
- 여기에 설명된 제품은 하나 이상의 미국, 국제 또는 외국 특허 출원 중일 수 있습니다. 여기에 언급된 제품 이름 및 표시는 하나 이상의 미국, 국제 또는 외국 상표의 보호를 받을 수도 있습니다.
- 이 문서는 영어로 작성되었지만 참조를 위해 여러 언어로 번역될 수 있습니다. 이 문서의 영어 버전만이 Diodes Incorporated에서 발표한 최종적이고 결정적인 형식입니다.
생명 유지 장치
- Diodes Incorporated 제품은 Diodes Incorporated CEO의 명시적인 서면 승인 없이는 생명 유지 장치 또는 시스템의 중요한 구성 요소로 사용할 수 없습니다. 본원에서 사용된 바와 같이:
- A. 생명 유지 장치 또는 시스템은 다음과 같은 장치 또는 시스템입니다.
- 체내에 이식할 예정이거나
- 생명을 유지하거나 유지하며 라벨에 제공된 사용 지침에 따라 적절하게 사용했을 때 제대로 작동하지 않으면 사용자에게 심각한 부상을 초래할 것으로 합리적으로 예상할 수 있습니다.
- B. 핵심 구성 요소는 작동 실패가 생명 유지 장치의 고장을 유발하거나 안전 또는 효율성에 영향을 미칠 것으로 합리적으로 예상되는 생명 유지 장치 또는 시스템의 모든 구성 요소입니다.
- 고객은 생명 유지 장치 또는 시스템의 안전 및 규제 파급 효과에 필요한 모든 전문 지식을 보유하고 있으며 제품 및 다이오드 사용과 관련된 모든 법적, 규제 및 안전 관련 요구 사항에 대해 전적인 책임이 있음을 인정하고 동의합니다. Diodes Incorporated에서 제공할 수 있는 장치 또는 시스템 관련 정보 또는 지원에도 불구하고 안전에 중요한 생명 유지 장치 또는 시스템에 통합된 제품.
- 또한 고객은 Diodes Incorporated 제품을 안전에 필수적인 생명 유지 장치나 시스템에 사용함으로써 발생하는 모든 손해에 대해 Diodes Incorporated와 그 대리인에게 완전히 배상해야 합니다.
- 저작권 © 2017, Diodes Incorporated
- www.diodes.com
문서 / 리소스
![]() |
DIODES AP33772 USB PD 싱크 컨트롤러 Raspberry Pi I2C 인터페이스 [PDF 파일] 사용자 가이드 AP33772 USB PD 싱크 컨트롤러 Raspberry Pi I2C 인터페이스, AP33772, USB PD 싱크 컨트롤러 Raspberry Pi I2C 인터페이스, Raspberry Pi I2C 인터페이스, Pi I2C 인터페이스 |