DIODES AP33772 USB PD सिंक कंट्रोलर रास्पबेरी Pi I2C इंटरफेस
परिचय
- AP33772 सिंक कंट्रोलर, USB PD3.0 टाइप सी कनेक्टर-सुसज्ज डिव्हाइस (TCD, एनर्जी सिंक) च्या प्रोटोकॉल डिव्हाइस म्हणून काम करत आहे, USB PD3.0 टाइप C कनेक्टर-सुसज्ज PD3.0 कडून योग्य पॉवर डेटा ऑब्जेक्ट (PDO) ची विनंती करण्याचा हेतू आहे. .XNUMX अनुपालन चार्जर (PDC, ऊर्जा स्त्रोत).
- आकृती 1 TCD दर्शवते, PD3.0 सिंक कंट्रोलर IC (AP33772) सह एम्बेड केलेले, PDC शी भौतिकरित्या जोडलेले आहे, USB PD3.0 डीकोडर (AP43771) सह एम्बेड केलेले आहे.
- सी-टू-टाइप सी केबल टाइप करा. अंगभूत USB PD3.0 अनुरूप फर्मवेअरवर आधारित, AP33772 आणि AP43771 जोडी योग्य PD3.0 चार्जिंग स्थिती स्थापित करण्यासाठी USB PD3.0 मानक संलग्नक प्रक्रियेतून जाईल.
- AP33772 सिंक कंट्रोलर EVB सिस्टीम डिझायनरला I33772C इंटरफेसद्वारे AP2 अंगभूत कमांड पाठवून USB पॉवर डिलिव्हरी चार्जरकडून PDO ची विनंती करण्यासाठी वापरण्यास सुलभता आणि उत्कृष्ट अष्टपैलुत्व प्रदान करते. ठराविक सिस्टीम डिझाइनसाठी MCU प्रोग्रामिंगची आवश्यकता असते ज्यासाठी विशिष्ट सॉफ्टवेअर (उदा. IDE) सेटअप आवश्यक असते आणि ती वेळखाऊ विकास प्रक्रिया असू शकते.
- याउलट, Raspberry Pi (RPI), वापरकर्ता-अनुकूल Linux OS वर चालणारा सिंगल बोर्ड कॉम्प्युटर (SBC) आणि लवचिक GPIO पिनसह सुसज्ज, PD चार्जरसह कार्यरत AP33772 सिंक EVB प्रमाणित करण्याचा एक सरळ मार्ग प्रदान करतो. या मार्गदर्शकाचे उद्दिष्ट हे आहे की सिस्टम डिझायनर्सना RPI वर सॉफ्टवेअर प्रमाणीकरण त्वरीत पूर्ण करण्यासाठी एक प्रभावी प्लॅटफॉर्म प्रदान करणे आणि नंतर विकासाला कोणत्याही इष्ट MCU मध्ये पोर्ट करणे हे आहे.
- AP33772 EVB वापरकर्ता मार्गदर्शकासाठी पूरक दस्तऐवज म्हणून, हे वापरकर्ता मार्गदर्शक I33772C इंटरफेसद्वारे RPI SBC सह AP2 EVB नियंत्रित करण्याचा एक सोपा मार्ग स्पष्ट करते.
- AP1 सह इंटरफेस करण्यासाठी आकृती 33772 मध्ये चित्रित केलेल्या MCU ब्लॉकची भूमिका RPI द्वारे खेळली जाते. या वापरकर्ता मार्गदर्शकामध्ये अनेक नोंदणी व्याख्या आणि वापर माहिती समाविष्ट आहेamples, तथापि, संपूर्ण आणि सर्वात अद्ययावत माहितीसाठी, कृपया AP33772 EVB वापरकर्ता मार्गदर्शक पहा. (संदर्भ २ पहा)
- आकृती 1 - यूएसबी टाइप-सी PD33772/पीपीएस कंप्लायन्स सोर्स अॅडॉप्टरकडून पॉवरची विनंती करण्यासाठी एक सामान्य TCD I2C इंटरफेससह AP3.0 PD सिंक कंट्रोलर वापरतो.
प्रमाणीकरण प्लॅटफॉर्म सेटअप
AP33772 सिंक कंट्रोलर EVB
आकृती 2 सिंक कंट्रोलर EVB चे चित्र दाखवते. यात Type-C कनेक्टर, I2C पिन, इंटरप्टसाठी GPIO3 पिन, OTP साठी NTC थर्मिस्टर, चार्जिंग स्थिती दर्शविण्यासाठी LED इंडिकेटर आणि लोडसाठी Vout कनेक्टर आहेत.
रास्पबेरी पाय झिरो २ डब्ल्यू
- RPI ची कोणतीही नवीनतम आवृत्ती I33772C पिनद्वारे AP2 सिंक कंट्रोलर EVB नियंत्रित करण्यास सक्षम आहे. या वापरकर्ता मार्गदर्शकामध्ये रास्पबेरी Pi Zero 2 W (RPI Z2W) चा वापर त्याच्या किमतीची प्रभावीता आणि अष्टपैलुत्वासाठी केला जातो. यात सर्व RPIs मध्ये सर्वात लहान फॉर्मफॅक्टर आहे आणि ते 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 टाइप-सी केबलने कनेक्ट करा
- RPI आणि PD चार्जर पॉवर अप करा.
रास्पबेरी पाई सॉफ्टवेअर सेटअप
रास्पबेरी Pi OS
- RPI ला समर्थन देणार्या अनेक भिन्न कार्यप्रणाली आहेत. यापैकी, Raspberry Pi OS निवडले आहे कारण ते RPI अधिकृत साइटद्वारे सर्वाधिक वापरलेले आणि शिफारस केलेले आहे.
OS प्रतिमा डाउनलोड करा आणि SD कार्ड तयार करा
- PC वर Raspberry Pi Imager टूल्स डाउनलोड आणि स्थापित करा (https://www.raspberrypi.com/software/). योग्य ओएस इमेजसह लोड केलेला मायक्रो-एसडी तयार करण्यासाठी सूचनांचे अनुसरण करा (https://youtu.be/ntaXWS8Lk34/). कृपया लक्षात ठेवा 32BG किंवा त्याहून अधिक मायक्रो-SD कार्डची शिफारस केली जाते.
रास्पबेरी पीआय ओएस स्थापना
- आधी इमेजरने लोड केलेले मायक्रो-SD कार्ड RPI च्या मायक्रो-SD स्लॉटमध्ये घाला. पॉवर अॅडॉप्टर, माउस/कीबोर्ड आणि HDMI मॉनिटर कनेक्ट करा. RPI चालू करा आणि OS इंस्टॉलेशन आणि मूलभूत सेटअप पूर्ण करण्यासाठी सूचनांचे अनुसरण करा. OS वर नवीनतम अद्यतने समाविष्ट असल्याची खात्री करा.
आवश्यक वैशिष्ट्यांचा सेटअप
- RPI वर I2C इंटरफेस यशस्वीरित्या चालवण्यासाठी, आम्ही SSH, VNC, आणि I2C वैशिष्ट्ये कॉन्फिगर किंवा स्थापित करणे आवश्यक आहे.
रास्पबेरी पाई कॉन्फिग - 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 अंतर्गत कमांड लाइनवर चालणाऱ्या सोप्या कमांड प्रदान करतो. चालवून ओएसवर I2C-टूल्स स्थापित करा: sudo apt i2c-tools स्थापित करा
SMBus2 स्थापना
- SMBus2 एक पायथन मॉड्यूल आहे जे वापरकर्त्यासाठी पायथन वातावरणात I2C इंटरफेस नियंत्रित करण्यासाठी सोयीस्कर कार्ये प्रदान करते. ओएसवर पायथनसाठी SMBus2 मॉड्यूल चालवून स्थापित करा: sudo pip3 smbus2 स्थापित करा
बेसिक कमांड उदाampलेस
- हे वापरकर्ता मार्गदर्शक RPI वर I2C इंटरफेससह कार्य करण्यासाठी दोन भिन्न पद्धती प्रदर्शित करते. ते I2C-Tools Utility आणि Python SMBus2 मॉड्यूल आहेत. दोन्ही पद्धतींच्या मूलभूत आज्ञा या विभागात सादर केल्या आहेत.
I2C-टूल्स कमांड उदाampलेस
- I2C-Tools युटिलिटी पॅकेज i2cdetect, i2cget आणि i2cset कमांड प्रदान करते. सरलीकृत वापरांचे वर्णन माजी मध्ये केले आहेampया कलमांतर्गत. I2C-Tools युटिलिटीबद्दल संपूर्ण माहितीसाठी, कृपया पहा https://linuxhint.com/i2c-linux-utilities/.
- या विभागातील कमांडचा वापर पचवण्यासाठी वापरकर्त्याच्या सोयीसाठी तक्ता 1 AP33772 रजिस्टर सारांश दाखवते. संपूर्ण नोंदणी माहितीसाठी, कृपया AP33772 सिंक कंट्रोलर EVB वापरकर्ता मार्गदर्शक पहा.
नोंदणी करा | आज्ञा | लांबी | विशेषता | विद्युतप्रवाह चालू करणे | वर्णन |
SRCPDO |
0x00 |
28 |
RO |
सर्व 00 ता |
पॉवर डेटा ऑब्जेक्ट (PDO) PD सोर्स (SRC) पॉवर क्षमता उघड करण्यासाठी वापरला जातो.
एकूण लांबी 28 बाइट्स आहे |
PDONUM | 0x1 सी | 1 | RO | 00 ता | वैध स्रोत PDO क्रमांक |
स्थिती | 0x1D | 1 | RC | 00 ता | AP33772 स्थिती |
मास्क | 0x1E | 1 | RW | 01 ता | व्यत्यय सक्षम मास्क |
VOLTAGE | 0x20 | 1 | RO | 00 ता | LSB 80mV |
चालू | 0x21 | 1 | RO | 00 ता | LSB 24mA |
TEMP | 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 | 0x2A | 2 | RW | 1041 ता | थर्मल रेझिस्टन्स @50°C, एकक: Ω |
TR75 | 0x2 सी | 2 | RW | 0788 ता | थर्मल रेझिस्टन्स @75°C, एकक: Ω |
TR100 | 0x2E | 2 | RW | 03CEh | थर्मल रेझिस्टन्स @100°C, एकक: Ω |
आरडीओ | 0x30 | 4 | WO | 00000000 ता | रिक्वेस्ट डेटा ऑब्जेक्ट (RDO) चा वापर पॉवर क्षमतांची विनंती करण्यासाठी केला जातो. |
व्हीआयडी | 0x34 | 2 | RW | 0000 ता | विक्रेता आयडी, भविष्यातील अर्जांसाठी राखीव |
पीआयडी | 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 डेटा प्रदर्शित करण्यासाठी वापरकर्त्याला "फॉर लूप" वापरण्याची आवश्यकता आहे. सर्व 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
- पूर्ण बिट वाचून यशस्वी RDO विनंती सुनिश्चित करण्यासाठी वापरकर्त्याने प्रत्येक RDO विनंतीनंतर ही आज्ञा वापरावी. 4.1.5 MASK (0x1E) लिहा
- ही कमांड AP3 च्या GPIO33772 पिनद्वारे होस्टला सिग्नल देणारे व्यत्यय सक्षम करते. व्यत्ययांमध्ये Derating , OTP, OCP, OVP, विनंती नाकारली, विनंती पूर्ण, आणि तयार यांचा समावेश होतो. विशिष्ट व्यत्यय सक्षम करण्यासाठी, संबंधित बिट एक वर सेट करा. उदा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
- नोंदवलेल्या मूल्याचे एक युनिट 80mV चे प्रतिनिधित्व करते.
वर्तमान वाचा (0x21)
- हा आदेश AP33772 सिंक कंट्रोलरद्वारे मोजलेल्या वर्तमानाचा अहवाल देतो. वर्तमान अहवाल देण्यासाठी, कमांड प्रॉम्प्ट अंतर्गत खालील टाइप करा: i2cget -y 1 0x51 0x21 b
- नोंदवलेल्या मूल्याचे एक एकक 24mA दर्शवते.
TEMP (0x22) वाचा
- हा आदेश AP33772 सिंक कंट्रोलरद्वारे मोजलेल्या तापमानाचा अहवाल देतो. तापमानाचा अहवाल देण्यासाठी, कमांड प्रॉम्प्ट अंतर्गत खालील टाइप करा:
i2cget -y 1 0x51 0x22 b - नोंदवलेल्या मूल्याचे एक एकक 1°C दर्शवते.
- OCPTHR (0x23), OTPTHR (0x24), आणि DRTHR (0x25) वाचा आणि लिहा
- OCP, OTP, आणि Derating थ्रेशोल्ड OCPTHR, OTPTHR आणि DRTHR रजिस्टर्समध्ये मूल्ये लिहून वापरकर्त्याच्या इष्ट मूल्यांमध्ये बदलले जाऊ शकतात. माजी म्हणूनample, 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 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) वाचा आणि लिहा
- A Murata 10KΩ नकारात्मक तापमान गुणांक (NTC) थर्मिस्टर NCP03XH103 AP33772 EVB वर भरलेला आहे. अंतिम डिझाइनमध्ये थर्मिस्टर वेगळ्यामध्ये बदलणे हे वापरकर्त्याचे प्राधान्य आहे. वापरकर्त्याने वापरलेल्या थर्मिस्टरच्या वैशिष्ट्यांनुसार TR25, TR50, TR75 आणि TR100 नोंदणी मूल्ये अद्यतनित केली पाहिजेत. उदाampले,
- मुराताचे 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 0x2 w
- मूल्ये वाचण्यासाठी, कमांड प्रॉम्प्ट अंतर्गत खालील टाइप करा: 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 (रिक्वेस्ट डेटा ऑब्जेक्ट) रजिस्टरला लिटल-एंडियन बाइट क्रमाने लिहिला जातो. माजी म्हणूनample, 3V आणि 15A सह PDO3 ची विनंती करण्यासाठी, 0x3004B12C RDO रजिस्टरला लिहिले जाईल. कमांड प्रॉम्प्ट अंतर्गत खालील टाइप करा: 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 कमांड उदाampलेस
- Python त्याच्या समर्थित मॉड्यूल्सच्या उत्कृष्ट प्रकारांसाठी अधिक लोकप्रिय होत आहे. SMBus2 त्यापैकी एक आहे आणि I2C वाचन आणि लेखन आदेश हाताळण्यास सक्षम आहे. SMBus2 read_byte_data, read_word_data, read_i2c_block_data, write_byte_data, write_word_data, write_i2c_block_data कमांड प्रदान करतो. सरलीकृत वापरांचे वर्णन माजी मध्ये केले आहेamples या कलमाखाली. 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 संख्या दर्शविणारा एक बाइट डेटा परत केला जाईल.
स्थिती वाचा (0x1D)
- हा आदेश सिंक कंट्रोलरच्या स्थितीचा अहवाल देतो ज्यामध्ये डेरेटिंग , OTP, OCP, OVP, विनंती नाकारलेली, विनंती पूर्ण झाली आणि तयार आहे. स्थिती माहिती वाचण्यासाठी, python3 वातावरणात खालील वापरा:
- SMBus.read_byte_data(0x51, 0x1d)
- पूर्ण बिट वाचून यशस्वी RDO विनंती सुनिश्चित करण्यासाठी वापरकर्ता प्रत्येक RDO विनंतीनंतर ही आज्ञा वापरू शकतो.
MASK (0x1E) लिहा
- ही कमांड AP3 च्या GPIO33772 पिनद्वारे होस्टला सिग्नल देणारे व्यत्यय सक्षम करते. व्यत्ययांमध्ये डेरेटिंग , OTP, OCP, OVP, विनंती नाकारली, विनंती समाविष्ट आहे
- पूर्ण, आणि तयार. विशिष्ट व्यत्यय सक्षम करण्यासाठी, संबंधित बिट एक वर सेट करा. उदाample, OCP व्यत्यय सक्षम करण्यासाठी, MASK रजिस्टरचा बिट 4 python3 वातावरणात खालील वापरून सेट करा:
- SMBus.write_byte_data(0x51, 0x1e, 0x10)
- OCP संरक्षण ट्रिगर झाल्यावर AP3 चा GPIO33772 पिन उंच जाईल.
VOL वाचाTAGE (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 रजिस्टर्समध्ये मूल्ये लिहून वापरकर्त्याच्या इष्ट मूल्यांमध्ये बदलले जाऊ शकतात. माजी म्हणूनample, 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 वर बदलण्यासाठी, वापरकर्त्याने 0x64 (=100) DRTHR ला python3 वातावरणात खालील वापरून लिहावे: 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) वाचा आणि लिहा
- A 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_data,0x51e)
- रिटर्न व्हॅल्यू देखील 2-बाइट शब्द आहेत. कमांड 2-बाइट शब्द थेट हाताळत असल्याने, वापरकर्त्यांना येथे थोड्या एंडियन बाइट ऑर्डरबद्दल काळजी करण्याची गरज नाही.
RDO लिहा (0x30~0x33)
- PDO विनंती वाटाघाटी प्रक्रिया सुरू करण्यासाठी, 4-बाइट डेटा RDO (रिक्वेस्ट डेटा ऑब्जेक्ट) रजिस्टरला लिटल-एंडियन बाइट क्रमाने लिहिला जातो. माजी म्हणूनample, 3V आणि 15A सह PDO3 ची विनंती करण्यासाठी, 0x3004B12C RDO रजिस्टरला लिहिले जाईल. 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 सिंक कंट्रोलर त्याच्या प्रारंभिक स्थितीवर रीसेट केला जाईल आणि आउटपुट बंद केले जाईल.
प्रॅक्टिकल उदाampलेस
Example 1: बॅश I2C-टूल्स उदाample: ap33772_querypdo.bash
या माजीample सर्व वैध PDOs तपासतो आणि व्हॉल्यूमची यादी करतोtage आणि वर्तमान क्षमता माहिती बाहेर.
कोड तपशील
कोड एक्झिक्यूशन आणि आउटपुट
Example 2: Python SMBus2 उदाample: ap33772_allpdo.py3
या माजीample सर्व वैध PDOs तपासतो आणि त्यांना वर आणि खाली क्रमाने एक-एक करून विनंती करतो.
कोड तपशील
कोड एक्झिक्यूशन आणि आउटपुट
Exampकोड डाउनलोड करा
माजी यादीample कोड्स
- Example कोडमध्ये बॅश स्क्रिप्ट आणि पायथन आवृत्त्या आहेत
- ap33772_querypdo: सर्व पीडीओ माहितीसाठी क्वेरी करते
- ap33772_reqpdo: सर्व PDO माहितीचा अहवाल देतो आणि वापरकर्त्याद्वारे निर्दिष्ट केलेली PDO विनंती पाठवते
- ap33772_allpdo: सर्व पीडीओ माहितीचा अहवाल देतो आणि सर्व पीडीओ विनंत्यांवर वर आणि खाली चालतो
- ap33772_pps: सर्व PDO माहितीचा अहवाल देतो आणि आरamps संपूर्ण PPS व्हॉल्यूम वर आणि खालीtage श्रेणी 50mV पायरी आकारात
- ap33772_vit: अहवाल खंडtagई, वर्तमान आणि तापमान माहिती
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/
- रास्पबेरी पाई झिरो 2 डब्ल्यू: https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/
- रास्पबेरी Pi OS: https://www.raspberrypi.com/software/
- I2C-टूल्स उपयुक्तता: https://linuxhint.com/i2c-linux-utilities/
- SMBus2 मॉड्यूल: https://smbus2.readthedocs.io/en/latest/
पुनरावृत्ती इतिहास
उजळणी | जारी करण्याची तारीख | टिप्पणी द्या | लेखक |
1.0 | २०२०/१०/२३ | प्रारंभिक प्रकाशन | एडवर्ड झाओ |
महत्वाची सूचना
- या दस्तऐवजाच्या संदर्भात, अंतर्भूत डायोड्स कोणत्याही प्रकारची, व्यक्त किंवा निहित, कोणतीही हमी देत नाही, ज्यात, व्यापार्यता आणि सामर्थ्यक्षमतेची निहित हमी समाविष्ट आहे, परंतु मर्यादित नाही कोणत्याही अधिकार क्षेत्राच्या कायद्यांतर्गत व्हॅलेंट्स).
- डायोड इनकॉर्पोरेटेड आणि त्याच्या सहाय्यक कंपन्या या दस्तऐवजात आणि येथे वर्णन केलेल्या कोणत्याही उत्पादनास पुढील सूचना न देता बदल, सुधारणा, सुधारणा, सुधारणा किंवा इतर बदल करण्याचा अधिकार राखून ठेवतात. या दस्तऐवजाच्या अर्जामुळे किंवा वापरामुळे किंवा येथे वर्णन केलेल्या कोणत्याही उत्पादनामुळे उद्भवणारे कोणतेही दायित्व डायोड्स इनकॉर्पोरेटेड गृहीत धरत नाही; डायोड्स इनकॉर्पोरेटेड त्यांच्या पेटंट किंवा ट्रेडमार्क अधिकारांखाली कोणताही परवाना किंवा इतरांच्या अधिकारांना सूचित करत नाही. या दस्तऐवजाचा किंवा अशा अनुप्रयोगांमध्ये वर्णन केलेल्या उत्पादनांचा कोणताही ग्राहक किंवा वापरकर्ता अशा वापरातील सर्व जोखीम गृहीत धरेल आणि डायोड्स इनकॉर्पोरेट ठेवण्यास सहमत असेल आणि ज्यांची उत्पादने डायोड्स इनकॉर्पोरेटेडवर दर्शविली जातात त्या सर्व कंपन्या. webसाइट, सर्व नुकसानांपासून निरुपद्रवी.
- डायोड इनकॉर्पोरेटेड अनधिकृत विक्री चॅनेलद्वारे खरेदी केलेल्या कोणत्याही उत्पादनांच्या संदर्भात कोणतीही हमी देत नाही किंवा कोणतीही जबाबदारी स्वीकारत नाही.
ग्राहकांनी कोणत्याही अनैच्छिक किंवा अनधिकृत अनुप्रयोगासाठी डायोड इनकॉर्पोरेटेड उत्पादने खरेदी केली किंवा वापरली तर, ग्राहकांनी डायोड्सची नुकसानभरपाई केली आणि धरून ठेवली. - अशा अनैच्छिक किंवा अनधिकृत अर्जाशी संबंधित वैयक्तिक दुखापती किंवा मृत्यूच्या कोणत्याही दाव्यामुळे प्रत्यक्ष किंवा अप्रत्यक्षपणे उद्भवणारे सर्व दावे, नुकसान, खर्च आणि मुखत्यार शुल्काविरूद्ध निगमित आणि त्याचे प्रतिनिधी निरुपद्रवी होते.
- येथे वर्णन केलेली उत्पादने एक किंवा अधिक युनायटेड स्टेट्स, आंतरराष्ट्रीय किंवा परदेशी पेटंट प्रलंबित आहेत. येथे नमूद केलेली उत्पादनांची नावे आणि खुणा देखील एक किंवा अधिक युनायटेड स्टेट्स, आंतरराष्ट्रीय किंवा परदेशी ट्रेडमार्कद्वारे संरक्षित केली जाऊ शकतात.
- हा दस्तऐवज इंग्रजीमध्ये लिहिलेला आहे परंतु संदर्भासाठी अनेक भाषांमध्ये अनुवादित केला जाऊ शकतो. या दस्तऐवजाची फक्त इंग्रजी आवृत्ती डायोड्स इनकॉर्पोरेटेड द्वारे जारी केलेले अंतिम आणि निर्धारक स्वरूप आहे.
लाइफ सपोर्ट
- डायोड्स इनकॉर्पोरेटेड उत्पादने डायोड्स इनकॉर्पोरेटेडच्या मुख्य कार्यकारी अधिकाऱ्याच्या स्पष्ट लेखी मंजुरीशिवाय लाईफ सपोर्ट डिव्हाइसेस किंवा सिस्टममध्ये महत्त्वपूर्ण घटक म्हणून वापरण्यासाठी विशेषत: अधिकृत नाहीत. येथे वापरल्याप्रमाणे:
- A. लाइफ सपोर्ट डिव्हाइसेस किंवा सिस्टम ही अशी उपकरणे किंवा प्रणाली आहेत जी:
- शरीरात रोपण करण्याचा हेतू आहे, किंवा
- समर्थन किंवा जीवन टिकवून ठेवण्यासाठी आणि लेबलिंगमध्ये प्रदान केलेल्या वापराच्या सूचनांनुसार योग्यरित्या वापरताना कोणाचे कार्य करण्यात अयशस्वी झाल्यामुळे वापरकर्त्याला महत्त्वपूर्ण दुखापत होण्याची वाजवी अपेक्षा केली जाऊ शकते.
- B. एक गंभीर घटक हा जीवन समर्थन उपकरण किंवा प्रणालीमधील कोणताही घटक आहे ज्याचे कार्य करण्यात अयशस्वी झाल्यामुळे जीवन समर्थन उपकरणाच्या अपयशास कारणीभूत ठरू शकते किंवा त्याची सुरक्षितता किंवा परिणामकारकता प्रभावित होऊ शकते.
- ग्राहक प्रतिनिधित्व करतात की त्यांच्या लाइफ सपोर्ट डिव्हाइसेस किंवा सिस्टमच्या सुरक्षितता आणि नियामक परिणामांमध्ये त्यांच्याकडे सर्व आवश्यक कौशल्ये आहेत आणि ते कबूल करतात आणि सहमत आहेत की ते त्यांच्या उत्पादनांशी संबंधित सर्व कायदेशीर, नियामक आणि सुरक्षा-संबंधित आवश्यकतांसाठी आणि डायोड्सच्या कोणत्याही वापरासाठी पूर्णपणे जबाबदार आहेत. अशा सुरक्षा-गंभीर, जीवन समर्थन उपकरणे किंवा प्रणालींमध्ये अंतर्भूत उत्पादने, कोणतीही उपकरणे- किंवा सिस्टम-संबंधित माहिती किंवा समर्थन असूनही, डायोड्स इनकॉर्पोरेटेडद्वारे प्रदान केले जाऊ शकते.
- पुढे, ग्राहकांनी अशा सुरक्षितता-गंभीर, जीवन-समर्थन उपकरणे किंवा प्रणालींमध्ये डायोड्स इनकॉर्पोरेटेड उत्पादनांच्या वापरामुळे उद्भवलेल्या कोणत्याही नुकसानीविरूद्ध डायोड्स इनकॉर्पोरेट आणि त्याच्या प्रतिनिधींना पूर्णपणे भरपाई करणे आवश्यक आहे.
- कॉपीराइट © 2017, डायोड इनकॉर्पोरेटेड
- www.diodes.com
कागदपत्रे / संसाधने
![]() |
DIODES AP33772 USB PD सिंक कंट्रोलर रास्पबेरी Pi I2C इंटरफेस [pdf] वापरकर्ता मार्गदर्शक AP33772 USB PD सिंक कंट्रोलर रास्पबेरी Pi I2C इंटरफेस, AP33772, USB PD सिंक कंट्रोलर रास्पबेरी Pi I2C इंटरफेस, रास्पबेरी Pi I2C इंटरफेस, Pi I2C इंटरफेस |