DIODES-LOGO

DIODES AP33772 USB PD угаалтуур хянагч Raspberry Pi I2C интерфэйс

DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-БҮТЭЭГДЭХҮҮН

Танилцуулга

  • USB PD33772 Type C холбогчоор тоноглогдсон төхөөрөмжийн (TCD, Эрчим хүчний угаалтуур) протоколын төхөөрөмжөөр ажилладаг AP3.0 угаалтуур хянагч нь USB PD3.0 Type C холбогчоор тоноглогдсон PD3.0-аас зохих Power Data Object (PDO) хүсэлт гаргах зорилготой юм. .XNUMX нийцтэй Цэнэглэгч (PDC, Эрчим хүчний эх үүсвэр).
  • Зураг 1-д PD3.0 угаалтуур хянагч IC (AP33772)-д суулгагдсан, USB PD3.0 декодер (AP43771)-ээр дамжуулан PDC-тэй физик байдлаар холбогдсон TCD-г дүрсэлсэн байна.
  • C-ээс C төрлийн кабель. Суурилуулсан USB PD3.0-д нийцсэн программ хангамж дээр тулгуурлан AP33772 ба AP43771 хосууд нь PD3.0 цэнэглэх тохиромжтой төлөвийг тогтоохын тулд USB PD3.0 стандарт хавсралтын процедурыг давах болно.
  • AP33772 угаалтуур хянагч EVB нь систем зохион бүтээгчид USB тэжээлийн цэнэглэгчээс PDO хүсэлтийг I33772C интерфэйсээр дамжуулан AP2 суурилуулсан тушаалуудыг илгээж ашиглахад хялбар, олон талт боломжийг олгодог. Ердийн системийн загвар нь тусгай програм хангамж (жишээ нь, IDE) тохируулах шаардлагатай MCU програмчлалыг шаарддаг бөгөөд боловсруулахад цаг хугацаа шаардсан процесс байж болно.
  • Үүний эсрэгээр, Raspberry Pi (RPI) нь хэрэглэгчдэд ээлтэй Linux үйлдлийн систем дээр ажилладаг, уян хатан GPIO тээглүүрээр тоноглогдсон нэг самбарт компьютер (SBC) нь PD цэнэглэгчтэй ажилладаг AP33772 Sink EVB-ийг баталгаажуулах хялбар арга юм. Энэхүү гарын авлагын зорилго нь системийн дизайнеруудыг RPI дээр програм хангамжийн баталгаажуулалтыг хурдан дуусгах үр дүнтэй платформоор хангах, дараа нь зах зээлийн хурдацтай эргэлтийн шаардлагыг хангахын тулд хөгжүүлэлтийг хүссэн MCU руу шилжүүлэх явдал юм.
  • AP33772 EVB хэрэглэгчийн гарын авлагын нэмэлт баримт бичиг болох энэхүү хэрэглэгчийн гарын авлага нь I33772C интерфэйсээр дамжуулан RPI SBC-ээр AP2 EVB-ийг удирдах хялбар аргыг харуулсан болно.
  • AP1-тэй холбогдохын тулд 33772-р зурагт үзүүлсэн MCU блокийн үүргийг RPI гүйцэтгэдэг. Энэхүү хэрэглэгчийн гарын авлага нь регистрийн тодорхойлолт, ашиглалтын талаархи олон мэдээллийг агуулдагamples, Гэсэн хэдий ч бүрэн бөгөөд хамгийн шинэчлэгдсэн мэдээллийг AP33772 EVB хэрэглэгчийн гарын авлагаас авна уу. (Иш 2-ыг үзнэ үү)DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-1
  • Зураг 1 – Ердийн TCD нь USB Type-C PD33772/PPS Дагаж мөрдөх эх адаптераас тэжээл авахын тулд I2C интерфейстэй AP3.0 PD угаалтуур хянагчийг ашигладаг.

Баталгаажуулах платформын тохиргоо

AP33772 угаалтуур хянагч EVB
Зураг 2 угаалтуур хянагч EVB-ийн зургийг харуулж байна. Энэ нь Type-C холбогч, I2C зүү, тасалдал хийх GPIO3 зүү, OTP-д зориулсан NTC термистор, цэнэглэх төлөвийг харуулах LED үзүүлэлт, ачааллын Vout холбогчтой.DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-2

Raspberry Pi Zero 2W

  • RPI-ийн хамгийн сүүлийн үеийн хувилбар нь I33772C зүүгээр дамжуулан AP2 угаалтуур хянагч EVB-ийг удирдах чадвартай. Raspberry Pi Zero 2 W (RPI Z2W) нь зардлын үр ашиг, олон талт байдлын үүднээс энэхүү хэрэглэгчийн гарын авлагад ашиглагдаж байна. Энэ нь бүх RPI-ийн дунд хамгийн бага форматтай бөгөөд WiFi болон Bluetooth-тэй нэгдсэн бөгөөд нэмэлт бүрэлдэхүүн хэсэггүйгээр утасгүй холболтыг бий болгодог. Энэ нь AP33772 угаалтуур хянагч EVB баталгаажуулалтын платформын зорилгыг төгс гүйцэтгэдэг.
  • Хэрэглэгч Raspberry Pi-ийн албан тушаалтныг шалгаж болно webнэмэлт мэдээлэл авах сайт (https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/)DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-3DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-4

Баталгаажуулах платформын холболт болон асаалт

Зураг 5 Баталгаажуулалтын платформын бүрэн холболт, тохиргоог харуулж байна. Хэрэглэгч дараах алхмуудыг хийх ёстой.

  1. RPI болон AP33772 EVB хооронд SCL, SDA болон GND зүүг холбоно уу
  2. 65W PD цэнэглэгч болон AP33772 EVB-ийг Type-C кабелиар холбоно уу
  3. RPI болон PD цэнэглэгчийг асаана уу.DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-5

Raspberry Pi програм хангамжийн тохиргоо

Raspberry Pi үйлдлийн систем

  • RPI дэмждэг олон төрлийн үйлдлийн системүүд байдаг. Эдгээрийн дотроос Raspberry Pi үйлдлийн систем нь RPI албан ёсны сайтаас хамгийн их ашиглагддаг, санал болгодог учраас сонгосон.

OS дүрсийг татаж аваад SD карт бэлтгэ

  • Raspberry Pi Imager хэрэгслийг компьютер дээрээ татаж аваад суулгана уу (https://www.raspberrypi.com/software/). Зөв үйлдлийн системийн дүрс бүхий Micro-SD-г бэлтгэхийн тулд зааврыг дагана уу (https://youtu.be/ntaXWS8Lk34/). 32BG ба түүнээс дээш хэмжээтэй Micro-SD карт ашиглахыг зөвлөж байна.DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-6

Raspberry PI үйлдлийн систем суурилуулах

  • Өмнө нь зураг авагчтай байсан Micro-SD картыг RPI-ийн Micro-SD үүрэнд оруулна уу. Цахилгаан адаптер, хулгана/гар, HDMI дэлгэцийг холбоно уу. RPI-г асаагаад үйлдлийн системийн суулгац болон үндсэн тохиргоог дуусгахын тулд зааврыг дагана уу. Хамгийн сүүлийн үеийн шинэчлэлтүүд OS дээр байгаа эсэхийг шалгаарай.

Шаардлагатай функцуудыг тохируулах

  • RPI дээр I2C интерфэйсийг амжилттай ажиллуулахын тулд бид SSH, VNC болон I2C функцуудыг тохируулах эсвэл суулгах ёстой.

Raspberry Pi тохиргоо - SSH, VNC, I2C

  • RPI-г ачаалсны дараа "Raspberry Pi Configure" хэрэгслийг нээж, SSH, VNC болон I2C функцуудыг асаана уу.DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-7

I2C дамжуулах хурдны тохиргоо

  • /boot/config.txt доторх dtparam болон dtoverlay-тай холбоотой мөрүүдийг солино уу file хамт:
  • dtoverlay=i2c-bcm2708
  • dtparam=i2c_arm=on,i2c_arm_baudrate=640000

I2C-Tools суурилуулах

  • I2C-Tools нь Raspberry Pi үйлдлийн систем дээр тушаалын мөрөнд ажилладаг энгийн командуудыг өгдөг багаж хэрэгсэл юм. I2C-tools-ийг үйлдлийн систем дээр суулгана: sudo apt install i2c-tools

SMBus2 суурилуулалт

  • SMBus2 нь Python орчинд хэрэглэгчдэд I2C интерфейсийг удирдахад тохиромжтой функцуудыг хангадаг Python модуль юм. Python-д зориулсан SMBus2 модулийг үйлдлийн систем дээр суулгана: sudo pip3 install smbus2

Үндсэн тушаал Examples

  • Энэхүү хэрэглэгчийн гарын авлага нь RPI дээр I2C интерфейстэй ажиллах хоёр өөр аргыг харуулж байна. Эдгээр нь I2C-Tools Utility болон Python SMBus2 модуль юм. Хоёр аргын үндсэн командуудыг энэ хэсэгт танилцуулсан.

 I2C-Tools Command Examples

  • I2C-Tools хэрэгслийн багц нь i2cdetect, i2cget, i2cset командуудыг өгдөг. Хялбаршуулсан хэрэглээг өмнөх хэсэгт тайлбарласан болноampЭнэ хэсгийн доор. I2C-Tools хэрэгслийн талаарх бүрэн мэдээллийг эндээс авна уу https://linuxhint.com/i2c-linux-utilities/.
  • Хүснэгт 1-д энэ хэсгийн командын ашиглалтыг ойлгоход хэрэглэгчдэд хялбар болгох үүднээс AP33772 бүртгэлийн хураангуйг үзүүлэв. Бүртгэлийн бүрэн мэдээллийг авахыг хүсвэл AP33772 угаалтуур хянагч EVB хэрэглэгчийн гарын авлагаас үзнэ үү.
Бүртгүүлэх Тушаал Урт Атрибут Асаалттай байна Тодорхойлолт
 

SRCPDO

 

0х00

 

28

 

RO

 

Бүх 00 цаг

Power Data Object (PDO) нь PD Source (SRC) тэжээлийн чадавхийг ил гаргахад ашиглагддаг.

Нийт урт нь 28 байт

PDONUM 0х1С 1 RO 00 цаг Хүчинтэй эх сурвалжийн PDO дугаар
БАЙДАЛ 0x1D 1 RC 00 цаг AP33772 статус
МАСК 0x1E 1 RW 01 цаг Тасалдал идэвхжүүлэх маск
БОТЬTAGE 0х20 1 RO 00 цаг LSB 80 мВ
ОДОО 0х21 1 RO 00 цаг LSB 24 мА
TEMP 0х22 1 RO 19 цаг Температур, нэгж: °C
OCPTHR 0х23 1 RW 00 цаг OCP босго, LSB 50mA
OTPTHR 0х24 1 RW 78 цаг OTP босго, Нэгж: °C
DRTHR 0х25 1 RW 78 цаг Үнэлгээг бууруулах босго, Нэгж: °C
TR25 0х28 2 RW 2710 цаг Дулааны эсэргүүцэл @25°C, Нэгж: Ом
TR50 0х2А 2 RW 1041 цаг Дулааны эсэргүүцэл @50°C, Нэгж: Ом
TR75 0х2С 2 RW 0788 цаг Дулааны эсэргүүцэл @75°C, Нэгж: Ом
TR100 0x2E 2 RW 03CEh Дулааны эсэргүүцэл @100°C, Нэгж: Ом
RDO 0х30 4 WO 00000000 цаг Request Data Object (RDO) нь эрчим хүчний чадавхийг хүсэхэд ашиглагддаг.
VID 0х34 2 RW 0000 цаг Борлуулагчийн ID, Ирээдүйн програмуудад зориулагдсан
PID 0х36 2 RW 0000 цаг Бүтээгдэхүүний ID, Ирээдүйн хэрэглээнд зориулагдсан
ЗАХИАЛСАН 0х38 4 Ирээдүйн програмуудад зориулж нөөцөлсөн

Хүснэгт 1 – AP33772 Бүртгэлийн хураангуй

I2C - i2cdetect-д холбогдсон бүх төхөөрөмжийг илрүүлэх

  • Одоогоор I2C-2 автобусанд холбогдсон бүх i1c төхөөрөмжийг харуулахын тулд командын мөрөнд дараахыг бичнэ үү: i2cdetect -y 1
  • Хэрэв AP33772 угаалтуур хянагч EVB хавсаргасан бол хэрэглэгч төхөөрөмжийг 0x51 хаягаар хавсаргасан байхыг харах ёстой.

SRCPDO-г унших (0x00~0x1B)

  • i2cget тушаал нь 2 байтаас урт унших блокыг дэмждэггүй. Хэрэглэгч бүх 28 байт урт PDO өгөгдлийг харуулахын тулд "for loop" ашиглах шаардлагатай. Бүх PDO өгөгдлийг харуулахын тулд {0..27}-д i-д зориулсан bash командын мөрөнд дараахыг бичнэ үү; do i2cget -y 1 0x51 $ib; хийсэн
  • 28 PDO-г төлөөлөх 7 байт өгөгдөл гарч ирнэ

PDONUM (0x1C) унших

  • Нийт хүчинтэй PDO-н тоог харуулахын тулд командын мөрөнд дараахыг бичнэ үү: i2cget -y 1 0x51 0x1c b

STATUS унших (0x1D)

  • Энэ команд нь үнэлгээний бууралт, OTP, OCP, OVP, Хүсэлтээс татгалзсан, Хүсэлтийг дуусгасан, Бэлэн гэх зэрэг угаалтуур хянагчийн статусыг мэдээлдэг. Статусын мэдээллийг харуулахын тулд командын мөрөнд дараахыг бичнэ үү: i2cget -y 1 0x51 0x1d b
  • Хэрэглэгч RDO хүсэлт бүрийн дараа БҮРЭН бит уншиж RDO хүсэлтийг амжилттай баталгаажуулахын тулд энэ тушаалыг ашиглах ёстой. 4.1.5 MASK бичих (0x1E)
  • Энэ тушаал нь AP3-ийн GPIO33772 пинээр дамжуулан хост руу дохио өгдөг тасалдлыг идэвхжүүлдэг. Тасалдал нь Deating , OTP, OCP, OVP, Request Rejected, Request Completed, and Ready зэрэг орно. Тодорхой тасалдлыг идэвхжүүлэхийн тулд харгалзах битийг нэг болгож тохируулна уу. Жишээ ньample, OCP тасалдлыг идэвхжүүлэхийн тулд тушаал хүлээх мөрөнд дараахыг бичиж MASK бүртгэлийн 4-р битийг нэг болгож тохируулна уу: i2cset -y 1 0x51 0x1e 0x10 b
  • OCP хамгаалалт асаалттай үед AP3-ийн GPIO33772 зүү өндөр болно.

VOL-г уншина ууTAGE (0x20)

  • Энэ тушаал нь боть тайлагнадагtage-г AP33772 угаалтуур хянагчаар хэмждэг. боть мэдээлэхtage, командын мөрөнд дараахыг бичнэ үү: i2cget -y 1 0x51 0x20 b
  • Тайлбарласан утгын нэг нэгж нь 80мВ-ыг илэрхийлнэ.

CURRENT (0x21) унших

  • Энэ команд нь AP33772 угаалтуур хянагчаар хэмжсэн гүйдлийг мэдээлдэг. Одоогийн мэдээллийг мэдээлэхийн тулд командын мөрөнд дараахыг бичнэ үү: i2cget -y 1 0x51 0x21 b
  • Тайлбарласан утгын нэг нэгж нь 24 мА байна.

TEMP унших (0x22)

  • Энэ тушаал нь AP33772 угаалтуур хянагчаар хэмжсэн температурыг мэдээлдэг. Температурыг мэдээлэхийн тулд командын мөрөнд дараах зүйлийг бичнэ үү.
    i2cget -y 1 0x51 0x22 b
  • Тайлбарласан утгын нэг нэгж нь 1 хэмийг илэрхийлнэ.
  • OCPTHR (0x23), OTPTHR (0x24), DRTHR (0x25) унших, бичих
  • OCP, OTP, болон Deating босгонуудыг OCPTHR, OTPTHR, DRTHR регистрүүдэд утгыг бичиж хэрэглэгчийн хүссэн утга болгон өөрчилж болно. Хуучин хүний ​​хувьдample, OCP босгыг 3.1А болгож өөрчлөхийн тулд хэрэглэгч командын мөрөнд дараахыг бичиж 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 0x23 b i2cget -y 1 0x51 0x24 b i2cget -y 1 0x51 0x25 b
  • Унших, бичих TR25 (0x28~0x29), TR50 (0x2A~0x2B), TR75 (0x2C~0x2D), болон TR100 (0x2E~0x2F)
  • Murata 10KΩ сөрөг температурын коэффициент (NTC) NCP03XH103 термистор нь AP33772 EVB дээр суурилагдсан. Эцсийн загварт термисторыг өөр болгон өөрчлөх нь хэрэглэгчийн сонголт юм. Хэрэглэгч TR25, TR50, TR75, TR100 бүртгэлийн утгуудыг ашигласан термисторын үзүүлэлтийн дагуу шинэчлэх ёстой. Жишээ ньampле,
  • Загвар хийхэд Муратагийн 6.8КОм 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 w 0e
  • Утгыг уншихын тулд командын мөрөнд дараах зүйлийг бичнэ үү: i2cget -y 1 0x51 0x28 w i2cget -y 1 0x51 0x2a w i2cget -y 1 0x51 0x2c w i2cget -y 1 0x51 0x2e w
  • Гаралтын утга нь 2 байт үг юм. Командууд нь 2 байт үгтэй шууд харьцдаг тул хэрэглэгчид энд бага хэмжээний байт дарааллын талаар санаа зовох хэрэггүй болно.

RDO бичих (0x30~0x33)

  • PDO хүсэлтийн хэлэлцээний процедурыг эхлүүлэхийн тулд 4 байт өгөгдлийг RDO (Request Data Object) бүртгэлд бага байт дарааллаар бичдэг. Өмнөх шигample, 3V ба 15А-тай PDO3 хүсэлт гаргахын тулд RDO бүртгэлд 0x3004B12C бичигдэнэ. Тушаал хүлээх мөрөнд дараах зүйлийг бичнэ үү: i2cset -y 1 0x51 0x30 0x2c 0xb1 0x04 0x30 i
  • Хамгийн бага ач холбогдол бүхий байтыг (0x2C) эхлээд жижиг эндиан байт дарааллын тэмдэглэгээнд тохируулан бичнэ. AP9 угаалтуур хянагч EVB хэрэглэгчийн Хүснэгт 10, Хүснэгт 33772-ыг үзнэ үү.
  • RDO агуулгын дэлгэрэнгүй мэдээллийг авах гарын авлага.
  • Хэрэглэгч RDO регистрийг тэг өгөгдөлтэй бичиж хатуу дахин тохируулах боломжтой: i2cset -y 1 0x51 0x30 0x00 0x00 0x00 0x00 i
  • AP33772 угаалтуур хянагчийг анхны байдалд нь оруулж, гаралтыг унтраана.

Python SMBus2 тушаал Examples

  • Python нь дэмжигдсэн модулиудаараа илүү алдартай болж байна. SMBus2 нь эдгээрийн нэг бөгөөд I2C унших, бичих командуудыг удирдах чадвартай. SMBus2 нь унших_байтын_өгөгдөл, уншсан_үг_өгөгдөл, унших_i2c_блок_өгөгдөл, бичих_байт_өгөгдөл, үг_өгөгдөл бичих, i2c_блок_өгөгдлийн бичих командуудыг өгдөг. Хялбаршуулсан хэрэглээг өмнөх хэсэгт тайлбарласан болно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 нэг байт өгөгдлийг буцаана.

PDONUM (0x1C) унших

  • Нийт хүчинтэй PDO-ийн тоог уншихын тулд python3 орчинд дараахыг ашиглана уу:
  • SMBus.read_byte_data(0x51, 0x1c)
  • Хүчинтэй PDO тоог харуулсан нэг байт өгөгдлийг буцаана.

STATUS унших (0x1D)

  • Энэ команд нь Угаах , OTP, OCP, OVP, Хүсэлтээс татгалзсан, Хүсэлт дууссан, Бэлэн гэх мэт угаалтуур хянагчийн статусыг мэдээлдэг. Статусын мэдээллийг уншихын тулд python3 орчинд дараахыг ашиглана уу.
  • SMBus.read_byte_data(0x51, 0x1d)
  • Хэрэглэгч RDO хүсэлт бүрийн дараа БҮРЭН битийг уншиж амжилттай RDO хүсэлтийг баталгаажуулахын тулд энэ тушаалыг ашиглаж болно.

MASK бичих (0x1E)

  • Энэ тушаал нь AP3-ийн GPIO33772 пинээр дамжуулан хост руу дохио өгдөг тасалдлыг идэвхжүүлдэг. Тасалдал нь Deating , OTP, OCP, OVP, Request Rejected, Request орно.
  • Дууссан, бэлэн байна. Тодорхой тасалдлыг идэвхжүүлэхийн тулд харгалзах битийг нэг болгож тохируулна уу. Жишээ ньample, OCP тасалдлыг идэвхжүүлэхийн тулд дараах python4 орчныг ашиглан MASK регистрийн 3-р битийг нэг болгож тохируулна уу:
  • SMBus.write_byte_data(0x51, 0x1e, 0x10)
  • OCP хамгаалалт асаалттай үед AP3-ийн GPIO33772 зүү өндөр болно.

VOL-г уншина ууTAGE (0x20)

  • Энэ тушаал нь боть тайлагнадагtage-г AP33772 угаалтуур хянагчаар хэмждэг. боть мэдээлэхtage, python3 орчинд дараахыг ашиглана уу:
  • SMBus.read_byte_data(0x51, 0x20)
  • Тайлбарласан утгын нэг нэгж нь 80мВ-ыг илэрхийлнэ.

CURRENT (0x21) унших

  • Энэ команд нь AP33772 угаалтуур хянагчаар хэмжсэн гүйдлийг мэдээлдэг. Одоогийн байдлыг мэдээлэхийн тулд python3 орчинд дараахыг ашиглана уу
  • SMBus.read_byte_data(0x51, 0x21)
  • Тайлбарласан утгын нэг нэгж нь 24 мА байна.

TEMP унших (0x22)

  • Энэ тушаал нь AP33772 угаалтуур хянагчаар хэмжсэн температурыг мэдээлдэг. Температурыг мэдээлэхийн тулд python3 орчинд дараахыг ашиглана уу.
  • SMBus.read_byte_data(0x51, 0x22)
  • Тайлбарласан утгын нэг нэгж нь 1 хэмийг илэрхийлнэ.

OCPTHR (0x23), OTPTHR (0x24), DRTHR (0x25) унших, бичих 

  • OCP, OTP, болон Deating босгонуудыг OCPTHR, OTPTHR, DRTHR регистрүүдэд утгыг бичиж хэрэглэгчийн хүссэн утга болгон өөрчилж болно. Хуучин хүний ​​хувьдample, OCP-ийн босгыг 3.1А болгож өөрчлөхийн тулд хэрэглэгч 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)
  • Урсгах босгыг 100°C болгож өөрчлөхийн тулд хэрэглэгч дараах python0 орчныг ашиглан DRTHR руу 64x100 (=3) гэж бичих хэрэгтэй: SMBus.write_byte_data(0x51, 0x25, 0x64)
  • 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)
  • Murata 10KΩ сөрөг температурын коэффициент (NTC) NCP03XH103 термистор нь AP33772 EVB дээр суурилагдсан. Эцсийн загварт термисторыг өөр болгон өөрчлөх нь хэрэглэгчийн сонголт юм. Хэрэглэгч TR25, TR50, TR75, TR100 бүртгэлийн утгыг ашигласан термисторын техникийн үзүүлэлтийн дагуу шинэчлэх ёстой. Жишээ ньample, 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 орчинд дараахыг ашиглана уу: SMBus.read_word_data(0x51, 0x28) SMBus.read_word_data(0x51, 0x2a) SMBus.read_word_data(0x51, 0x2c) SMBus.read_word_da(0x51c)
  • Буцах утга нь мөн 2 байт үг юм. Командууд нь 2 байт үгтэй шууд харьцдаг тул хэрэглэгчид энд бага хэмжээний байт дарааллын талаар санаа зовох хэрэггүй болно.

RDO бичих (0x30~0x33)

  • PDO хүсэлтийн хэлэлцээний процедурыг эхлүүлэхийн тулд 4 байт өгөгдлийг RDO (Request Data Object) бүртгэлд бага байт дарааллаар бичдэг. Өмнөх шигample, 3V ба 15А-тай PDO3 хүсэлт гаргахын тулд RDO бүртгэлд 0x3004B12C бичигдэнэ. Python3 орчинд дараахыг ашиглана уу:
  • SMBus.write_i2c_block_data(0x51, 0x30, [0x2c, 0xb1, 0x04, 0x30])
  • RDO агуулгын дэлгэрэнгүй мэдээллийг AP9 угаалтуур хянагч EVB хэрэглэгчийн гарын авлагын Хүснэгт 10, Хүснэгт 33772-аас үзнэ үү.
  • Хэрэглэгч RDO регистрийг тэг өгөгдөлтэй бичиж хатуу дахин тохируулах боломжтой.
  • SMBus.write_i2c_block_data(0x51, 0x30, [0x00, 0x00, 0x00, 0x00])
  • AP33772 угаалтуур хянагчийг анхны байдалд нь оруулж, гаралтыг унтраана.

Практик Examples

Example 1: Bash I2C-Tools Example: ap33772_querypdo.bash
Энэ эксample бүх хүчинтэй PDO-г шалгаж, боть жагсаавtage болон одоогийн чадавхийн мэдээлэл гарч байна.
Кодын дэлгэрэнгүй мэдээлэлDIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-8

Кодын гүйцэтгэл ба гаралтDIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-9

Example 2: Python SMBus2 Жишээ ньample: ap33772_allpdo.py3
Энэ эксample бүх хүчинтэй PDO-г шалгаж, тэдгээрийг нэг нэгээр нь дээш доош дарааллаар нь асууна.
Кодын дэлгэрэнгүй мэдээлэлDIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-10DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-11DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-12

Кодын гүйцэтгэл ба гаралтDIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-13DIODES-AP33772-USB-PD-Sink-Controller-Raspberry-Pi-I2C-Интерфэйс-FIG-14

Example код татаж авах

Экс жагсаалтample кодууд

  • Example кодууд нь Bash Script болон Python хувилбаруудтай
  1. ap33772_querypdo: бүх PDO мэдээллийг асуудаг
  2. ap33772_reqpdo: бүх PDO мэдээллийг тайлагнаж, хэрэглэгчийн тодорхойлсон PDO хүсэлтийг илгээдэг
  3. ap33772_allpdo: бүх PDO мэдээллийг тайлагнаж, бүх PDO хүсэлтийг дээш, доош байдлаар дамжуулдаг.
  4. ap33772_pps: бүх PDO мэдээллийг мэдээлэх ба ramps дээш доош бүхэлд нь PPS ботьtage хүрээ 50мВ алхамын хэмжээтэй
  5. ap33772_vit: тайлан ботьtage, одоогийн болон температурын мэдээлэл
ExampТатаж авах сайт

Example Кодуудыг Github-аас татаж авах боломжтой. Татаж авахын тулд дараах тушаалыг өгнө үү: git clone https://github.com/diodinciot/ap33772.git-ap33772

Лавлагаа

  1. AP33772 мэдээллийн хуудас (USB PD3.0 PPS угаалтуур хянагч): https://www.diodes.com/products/power-management/ac-dc-converters/usb-pd-sink-controllers/
  2. AP33772 I2C угаалтуур хянагч EVB хэрэглэгчийн гарын авлага: https://www.diodes.com/applications/ac-dc-chargers-and-adapters/usb-pd-sink-controller/
  3. Raspberry Pi тэг 2 Вт: https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/
  4. Raspberry Pi үйлдлийн систем: https://www.raspberrypi.com/software/
  5. I2C-Tools хэрэгсэл: https://linuxhint.com/i2c-linux-utilities/
  6. SMBus2 модуль: https://smbus2.readthedocs.io/en/latest/

Хяналтын түүх

Хяналт Гаргасан огноо Сэтгэгдэл Зохиогч
1.0 4/15/2022 Анхны хувилбар Эдвард Жао
ЧУХАЛ МЭДЭГДЭЛ
  • НЭГДСЭН ДИОД НЬ ЭНЭ БАРИМТ БИЧИГТЭЙ ХЯЗГААРЛАХГҮЙ, ХУДАЛДААНЫ ҮЙЛЧИЛГЭЭ, ТӨЛБӨРИЙН ТӨЛӨВЛӨГӨӨНИЙ ДАЛД БАТАЛГАА ТӨЛБӨРИЙН ИЛ ТӨРЛИЙН БУЮУ БАТАЛГАА ГАРГАХГҮЙ ЯМАР Ч ХАРГАЦНЫ ХУУЛЬ).
  • Diodes Incorporated болон түүний салбар компаниуд энэ баримт бичиг болон энд тайлбарласан аливаа бүтээгдэхүүнд нэмэлт мэдэгдэлгүйгээр өөрчлөлт, сайжруулалт, сайжруулалт, залруулга болон бусад өөрчлөлт хийх эрхтэй. Diodes Incorporated нь энэ баримт бичиг эсвэл энд дурдсан аливаа бүтээгдэхүүнийг хэрэглэх, ашиглахтай холбоотой аливаа хариуцлага хүлээхгүй; Diodes Incorporated нь өөрийн патент, барааны тэмдгийн эрхийн дагуу ямар ч лиценз, бусдын эрхийг дамжуулдаггүй. Энэхүү баримт бичиг эсвэл эдгээр программд дурдсан бүтээгдэхүүний аливаа хэрэглэгч эсвэл хэрэглэгч нь ийм хэрэглээний бүх эрсдлийг хариуцах бөгөөд Diodes Incorporated болон Diodes Incorporated дээр бүтээгдэхүүнээ төлөөлдөг бүх компаниудыг эзэмшихийг зөвшөөрнө. webсайт, бүх хохирлын эсрэг хор хөнөөлгүй.
  • Diodes Incorporated нь зөвшөөрөлгүй борлуулалтын сувгуудаар худалдаж авсан аливаа бүтээгдэхүүний талаар ямар ч хариуцлага хүлээхгүй.
    Үйлчлүүлэгчид Diodes Incorporated бүтээгдэхүүнийг санамсаргүй эсвэл зөвшөөрөлгүй хэрэглээнд зориулж худалдаж авах эсвэл ашиглах тохиолдолд Диодыг нөхөн төлж, барина.
  • Incorporated болон түүний төлөөлөгчид ийм санамсаргүй буюу зөвшөөрөлгүй өргөдөлтэй холбоотой хувийн гэмтэл, амь насаа алдсантай холбоотой аливаа нэхэмжлэлээс шууд болон шууд бусаар үүссэн бүх нэхэмжлэл, хохирол, зардал, өмгөөлөгчийн хураамжийн эсрэг гэм хоргүй байсан.
  • Энд тайлбарласан бүтээгдэхүүнүүд нь нэг буюу хэд хэдэн АНУ, олон улсын болон гадаадын патентуудад хамрагдаж болно. Энд дурдсан бүтээгдэхүүний нэр, тэмдэглэгээг нэг буюу хэд хэдэн АНУ, олон улсын болон гадаадын худалдааны тэмдэгтүүд хамруулж болно.
  • Энэхүү баримт бичиг нь англи хэл дээр бичигдсэн боловч лавлагаа болгон олон хэл рүү орчуулж болно. Энэхүү баримт бичгийн зөвхөн англи хэл дээрх хувилбар нь Diodes Incorporated-аас гаргасан эцсийн бөгөөд тодорхойлогч формат юм.

АМЬДРАЛЫН ДЭМЖИГ

  • Diodes Incorporated-ын Гүйцэтгэх захирлын шууд бичгээр зөвшөөрөл авалгүйгээр Diodes Incorporated бүтээгдэхүүнийг амьдралыг дэмжих төхөөрөмж эсвэл системд чухал бүрэлдэхүүн хэсэг болгон ашиглахыг тусгайлан зөвшөөрдөггүй. Энд ашигласанаар:
  • A. Амьдралыг дэмжих төхөөрөмж буюу системүүд нь дараах төхөөрөмжүүд эсвэл системүүд юм.
  1. биед суулгах зориулалттай, эсвэл
  2. шошгон дээр заасан ашиглалтын зааврын дагуу зохих ёсоор ашиглагдаагүй тохиолдолд хэрэглэгчдэд ихээхэн хохирол учруулна гэж үзэж болно.
    • 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 интерфейс

Лавлагаа

Сэтгэгдэл үлдээгээрэй

Таны имэйл хаягийг нийтлэхгүй. Шаардлагатай талбаруудыг тэмдэглэсэн *