DIODES AP33772 USB PD раковина контроллері Raspberry Pi I2C интерфейсі
Кіріспе
- USB PD33772 Type C қосқышымен жабдықталған құрылғының (TCD, Energy Raink) протокол құрылғысы ретінде жұмыс істейтін AP3.0 раковина контроллері USB PD3.0 типті C қосқышымен жабдықталған PD3.0 құрылғысынан дұрыс қуат деректер нысанын (PDO) сұрауға арналған. .XNUMX сәйкестік Зарядтағыш (PDC, қуат көзі).
- 1-суретте PD3.0 раковина контроллері IC (AP33772) орнатылған, PDC-ге физикалық түрде қосылған, USB PD3.0 декодері (AP43771) арқылы енгізілген TCD көрсетілген.
- C типінен C типіне кабель. Кірістірілген USB PD3.0 үйлесімді микробағдарламасына негізделген, AP33772 және AP43771 жұбы қолайлы PD3.0 зарядтау күйін орнату үшін USB PD3.0 стандартты тіркеме процедурасынан өтеді.
- AP33772 раковина контроллері EVB жүйе дизайнеріне I33772C интерфейсі арқылы AP2 кірістірілген пәрмендерін жіберу арқылы USB қуат жеткізу зарядтағышынан PDO сұрауы үшін пайдаланудың қарапайымдылығы мен үлкен әмбебаптығын қамтамасыз етеді. Әдеттегі жүйе дизайны арнайы бағдарламалық құралды (мысалы, 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-анықтаманы қараңыз)
- 1-сурет – Әдеттегі TCD USB Type-C PD33772/PPS сәйкестік көзі адаптерінен қуат сұрау үшін I2C интерфейсі бар AP3.0 PD раковина контроллерін пайдаланады.
Тексеру платформасын орнату
AP33772 Раковина контроллері EVB
2-сурет Раковина контроллерінің EVB суретін көрсетеді. Онда Type-C қосқышы, I2C түйреуіштері, үзу үшін GPIO3 істікшесі, OTP үшін NTC термисторы, зарядтау күйін көрсететін жарық диодты индикаторлар және жүктемеге арналған Vout қосқышы бар.
Raspberry Pi Zero 2 Вт
- RPI кез келген соңғы нұсқасы I33772C түйреуіштері арқылы AP2 Rack Controller EVB басқаруға қабілетті. Raspberry Pi Zero 2 Вт (RPI Z2W) осы пайдаланушы нұсқаулығында үнемділігі мен әмбебаптығы үшін пайдаланылады. Ол барлық RPI арасындағы ең кіші формафакторға ие және WiFi және Bluetooth-пен біріктірілген, ол сымсыз қосылымды қосымша құрамдассыз жасайды. Ол AP33772 раковина контроллері EVB тексеру платформасы ретінде мақсатты тамаша орындайды.
- Пайдаланушы Raspberry Pi ресми нұсқасын тексере алады webқосымша ақпарат алу үшін сайт (https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/)
Тексеру платформасын қосу және қосу
5-сурет Тексеру платформасының толық қосылымын және орнатуын көрсетеді. Пайдаланушы келесі қадамдарды орындауы керек:
- SCL, SDA және GND түйреуіштерін RPI және AP33772 EVB арасында қосыңыз
- 65 Вт PD зарядтағыш пен AP33772 EVB типті C кабелімен қосыңыз
- RPI және PD зарядтағышын қосыңыз.
Raspberry Pi бағдарламалық құралын орнату
Raspberry Pi операциялық жүйесі
- RPI қолдайтын көптеген түрлі операциялық жүйелер бар. Олардың ішінде Raspberry Pi ОЖ таңдалады, себебі ол RPI ресми сайтында ең көп қолданылатын және ұсынылған.
ОЖ кескінін жүктеп алыңыз және SD картасын дайындаңыз
- Raspberry Pi Imager құралдарын компьютерге жүктеп алыңыз және орнатыңыз (https://www.raspberrypi.com/software/). Дұрыс ОЖ кескіні жүктелген Micro-SD дайындау үшін нұсқауларды орындаңыз (https://youtu.be/ntaXWS8Lk34/). 32BG немесе одан жоғары Micro-SD картасы ұсынылады.
Raspberry PI ОЖ орнату
- Бейнелендіргішпен бұрын жүктелген Micro-SD картасын RPI Micro-SD ұясына салыңыз. Қуат адаптерін, тінтуірді/пернетақтаны және HDMI мониторын қосыңыз. RPI қосыңыз және ОЖ орнату мен негізгі орнатуды аяқтау үшін нұсқауларды орындаңыз. Операциялық жүйеде соңғы жаңартулардың қамтылғанына көз жеткізіңіз.
Қажетті мүмкіндіктерді орнату
- RPI жүйесінде I2C интерфейсін сәтті іске қосу үшін SSH, VNC және I2C мүмкіндіктерін конфигурациялау немесе орнату керек.
Raspberry Pi конфигурациясы – SSH, VNC, I2C
- RPI жүктелгеннен кейін «Raspberry Pi конфигурациялау» утилитасын ашып, 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 операциялық жүйесінде пәрмен жолында орындалатын қарапайым пәрмендерді қамтамасыз ететін құралдар жинағы. I2C-құралдарын операциялық жүйеге орнату: sudo apt install i2c-tools
SMBus2 орнату
- SMBus2 — Python ортасында I2C интерфейсін басқару үшін пайдаланушыға ыңғайлы функцияларды қамтамасыз ететін Python модулі. Python үшін SMBus2 модулін операциялық жүйеде іске қосу арқылы орнатыңыз: sudo pip3 install smbus2
Негізгі пәрмен Мысamples
- Бұл пайдаланушы нұсқаулығы RPI жүйесінде I2C интерфейсімен жұмыс істеудің екі түрлі әдісін көрсетеді. Олар I2C-Tools Utility және Python SMBus2 модулі. Екі әдістің де негізгі командалары осы бөлімде енгізілген.
I2C-құралдар пәрмені Examples
- I2C-Tools қызметтік пакеті i2cdetect, i2cget және i2cset пәрмендерін қамтамасыз етеді. Жеңілдетілген қолданулар бұрынғыampосы бөлімнің астында. I2C-Tools утилитасы туралы толық ақпаратты мына жерден қараңыз https://linuxhint.com/i2c-linux-utilities/.
- 1-кестеде пайдаланушыға осы бөлімдегі пәрменді пайдалануды қорытуға ыңғайлы болу үшін AP33772 тізілімінің қысқаша мазмұны көрсетілген. Тіркелу туралы толық ақпаратты алу үшін AP33772 раковина контроллері EVB пайдаланушы нұсқаулығын қараңыз.
Тіркелу | Пәрмен | Ұзындығы | Атрибут | Қосу | Сипаттама |
SRCPDO |
0x00 |
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 | 0x20 | 1 | RO | 00 сағ | LSB 80мВ |
Ағымдағы | 0x21 | 1 | RO | 00 сағ | LSB 24 мА |
ТЕМП | 0x22 | 1 | RO | 19 сағ | Температура, бірлік: °C |
OCPTHR | 0x23 | 1 | RW | 00 сағ | OCP шегі, LSB 50mA |
OTPTHR | 0x24 | 1 | RW | 78 сағ | OTP шегі, бірлік: °C |
DRTHR | 0x25 | 1 | RW | 78 сағ | Бағалау шегі, бірлік: °C |
TR25 | 0x28 | 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 | 0x30 | 4 | WO | 00000000 сағ | Деректер нысанын сұрау (RDO) қуат мүмкіндіктерін сұрау үшін пайдаланылады. |
VID | 0x34 | 2 | RW | 0000 сағ | Жеткізуші идентификаторы, болашақ қолданбалар үшін сақталған |
PID | 0x36 | 2 | RW | 0000 сағ | Өнім идентификаторы, болашақ қолданбалар үшін сақталған |
САҚТАДЫ | 0x38 | 4 | – | – | Болашақ қолданбалар үшін сақталған |
1-кесте – AP33772 тізілімінің қысқаша мазмұны
I2C – i2cdetect қосылған барлық құрылғыларды анықтаңыз
- Қазіргі уақытта I2C-2 шинасына қосылған барлық i1c құрылғыларын көрсету үшін пәрмен жолы астында келесіні теріңіз: i2cdetect -y 1
- AP33772 раковина контроллері 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
Оқу STATUS (0x1D)
- Бұл пәрмен рейтингті төмендету, OTP, OCP, OVP, Сұраныс қабылданбады, Сұраныс аяқталды және Дайын сияқты Раковина контроллерінің күйін хабарлайды. Күй туралы ақпаратты көрсету үшін пәрмен жолы астында келесіні теріңіз: i2cget -y 1 0x51 0x1d b
- Пайдаланушы осы пәрменді әрбір RDO сұрауынан кейін, COMPLETE битін оқу арқылы сәтті RDO сұрауын қамтамасыз ету үшін пайдалануы керек. 4.1.5 МАСКА жазу (0x1E)
- Бұл пәрмен AP3 GPIO33772 істікшесі арқылы хостқа сигнал беретін үзулерді қосады. Үзілістер шегінен шығару, OTP, OCP, OVP, Сұраныс қабылданбады, Сұраныс аяқталды және Дайын. Белгілі бір үзуді қосу үшін сәйкес битті біреуіне орнатыңыз. Мысалыample, OCP үзілуін қосу үшін, пәрмен жолының астында келесіні теру арқылы MASK регистрінің 4 битін бір етіп орнатыңыз: i2cset -y 1 0x51 0x1e 0x10 b
- AP3 GPIO33772 істікшелі OCP қорғанысы іске қосылғанда жоғары болады.
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°C-ті білдіреді.
- 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ле,
- Дизайнда Murata's 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 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 және 15A бар 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 пәрмені Мысamples
- 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)
- Бұл пәрмен раковина контроллерінің күйін хабарлайды, соның ішінде Deating , OTP, OCP, OVP, Сұраныс қабылданбады, Сұраныс аяқталды және Дайын. Күй туралы ақпаратты оқу үшін python3 ортасында келесіні пайдаланыңыз:
- SMBus.read_byte_data(0x51, 0x1d)
- Пайдаланушы бұл пәрменді әрбір RDO сұрауынан кейін COMPLETE битін оқу арқылы сәтті RDO сұрауын қамтамасыз ету үшін пайдалана алады.
MASK жазу (0x1E)
- Бұл пәрмен AP3 GPIO33772 істікшесі арқылы хостқа сигнал беретін үзулерді қосады. Үзілістерге Деу , OTP, OCP, OVP, Сұраныс қабылданбады, Сұраныс кіреді.
- Аяқталды және дайын. Белгілі бір үзуді қосу үшін сәйкес битті біреуіне орнатыңыз. Мысалыample, OCP үзілуін қосу үшін, python4 ортасының астында төмендегіні пайдалану арқылы MASK регистрінің 3 битін бір етіп орнатыңыз:
- SMBus.write_byte_data(0x51, 0x1e, 0x10)
- AP3 GPIO33772 істікшелі OCP қорғанысы іске қосылғанда жоғары болады.
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°C-ті білдіреді.
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's 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_data(0x51c)
- Қайтару мәндері де 2 байт сөздер болып табылады. Пәрмендер 2 байт сөзді тікелей өңдейтіндіктен, мұнда пайдаланушыларға аз ендіан байт реті туралы алаңдамаудың қажеті жоқ.
RDO жазу (0x30~0x33)
- PDO сұрауын келісу процедурасын бастау үшін 4 байт деректер RDO (Request Data Object) тізіліміне аз-ендиан байт ретімен жазылады. Бұрынғыдайample, 3V және 15A бар 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-құралдар мысалыample: ap33772_querypdo.bash
Бұл бұрынғыample барлық жарамды PDO-ларды тексереді және томды тізімдейдіtage және ағымдағы мүмкіндік туралы ақпарат шығады.
Код мәліметтері
Кодтың орындалуы және шығыстары
Example 2: Python SMBus2 Мысалыample: ap33772_allpdo.py3
Бұл бұрынғыample барлық жарамды PDO-ларды тексереді және оларды бір-бірден жоғары және төмен ретпен сұрайды.
Код мәліметтері
Кодтың орындалуы және шығыстары
Example Code Download
Экс. тізіміample кодтары
- Example кодтарында Bash Script және Python нұсқалары бар
- ap33772_querypdo: барлық PDO ақпаратын сұрайды
- ap33772_reqpdo: барлық PDO ақпаратын хабарлайды және пайдаланушы көрсеткен PDO сұрауын жібереді
- ap33772_allpdo: барлық PDO ақпаратын хабарлайды және барлық PDO сұрауларын жоғары және төмен бағытта жүреді
- ap33772_pps: барлық PDO ақпаратын хабарлайды және ramps бүкіл PPS томы бойынша жоғары және төменtage диапазоны 50 мВ қадам өлшемінде
- 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/
- Raspberry Pi Zero 2 Вт: https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/
- Raspberry Pi операциялық жүйесі: https://www.raspberrypi.com/software/
- I2C-Tools утилитасы: https://linuxhint.com/i2c-linux-utilities/
- SMBus2 модулі: https://smbus2.readthedocs.io/en/latest/
Қайта қарау тарихы
Қайта қарау | Берілу күні | Түсініктеме | Автор |
1.0 | 4/15/2022 | Бастапқы шығарылым | Эдвард Чжао |
МАҢЫЗДЫ ЕСКЕРТПЕ
- ҚҰРЫЛҒАН ДИОДТАР ОСЫ ҚҰЖАТҚА ҚАТЫСТЫ КЕЗ КЕЛГЕН ТҮРЛЕРГЕ ЕШҚАНДАЙ КЕПІЛДІК БЕРМЕЙДІ. ER КЕЗ КЕЛГЕН ЮРИСДИКЦИЯНЫҢ ЗАҢДАРЫНА).
- Diodes Incorporated және оның еншілес компаниялары осы құжатқа және осы құжатта сипатталған кез келген өнімге қосымша ескертусіз өзгертулер, жақсартулар, жақсартулар, түзетулер немесе басқа өзгертулер енгізу құқығын өзіне қалдырады. Diodes Incorporated компаниясы осы құжатты немесе осы құжатта сипатталған кез келген өнімді қолданудан немесе пайдаланудан туындайтын жауапкершілікті өз мойнына алмайды; Diodes Incorporated компаниясы өзінің патенті немесе сауда белгісі құқықтарына, сондай-ақ басқалардың құқықтарына сәйкес ешқандай лицензия бермейді. Осы құжаттың немесе осындай қолданбаларда сипатталған өнімдердің кез келген тұтынушысы немесе пайдаланушысы мұндай пайдаланудың барлық тәуекелдерін өз мойнына алады және Diodes Incorporated компаниясын және өнімдері Diodes Incorporated компаниясында ұсынылған барлық компанияларды ұстауға келіседі. webсайт, барлық зақымдарға қарсы зиянсыз.
- Diodes Incorporated рұқсат етілмеген сату арналары арқылы сатып алынған кез келген өнімге қатысты ешқандай кепілдік бермейді немесе жауапкершілік алмайды.
Тұтынушылар Diodes Incorporated өнімдерін кез келген мақсатсыз немесе рұқсат етілмеген қолдану үшін сатып алса немесе пайдаланса, тұтынушылар диодтардың орнын толтырады және ұстайды. - Incorporated және оның өкілдері осындай күтпеген немесе рұқсат етілмеген қолданумен байланысты жеке жарақат немесе өлім туралы кез келген шағымдан тікелей немесе жанама туындайтын барлық шағымдарға, залалдарға, шығындарға және адвокаттық төлемдерге қарсы зиянсыз болды.
- Осы құжатта сипатталған өнімдер бір немесе бірнеше Америка Құрама Штаттары, халықаралық немесе шетелдік патенттермен қамтылуы мүмкін. Осы құжатта көрсетілген өнім атаулары мен таңбалары бір немесе бірнеше Америка Құрама Штаттары, халықаралық немесе шетелдік сауда белгілерімен де қамтылуы мүмкін.
- Бұл құжат ағылшын тілінде жазылған, бірақ анықтама үшін бірнеше тілге аударылуы мүмкін. Бұл құжаттың ағылшын тіліндегі нұсқасы ғана Diodes Incorporated шығарған соңғы және анықтаушы пішім болып табылады.
ӨМІРДІ ҚОЛДАУ
- Diodes Incorporated өнімдеріне Diodes Incorporated бас атқарушы директорының тікелей жазбаша рұқсатынсыз өмірді қолдау құрылғыларында немесе жүйелерде маңызды құрамдас бөліктер ретінде пайдалануға арнайы рұқсат етілмеген. Мұнда пайдаланылғандай:
- 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 интерфейсі |