STMicroelectronics UM2882 C Power Delivery Dual Port Adapter Kit მომხმარებლის სახელმძღვანელო
შესავალი
STSW-2STPD01 პროგრამული პაკეტი შეიცავს აპლიკაციის წყაროს კოდს და ბიბლიოთეკებს, რომლებიც შექმნილია STEVAL-2STPD01 USB Type-C™ Power Delivery ორმაგი პორტის ადაპტერის შესაძლებლობების დემონსტრირებისთვის.
აპლიკაციის firmware მუშაობს მთავარ ARM® Cortex®-M0+ 32-ბიტიან STM32G071RBT6 მიკროკონტროლერზე, რომელიც ჩაშენებულია NUCLEO-G071RB-ში, რომელიც შედის STEVAL-2STPD01 კომპლექტში. გამორჩეული STM32CubeG0 USB PD 3.0 შუალედური პროგრამის წყალობით, ნაკრები თავსებადია USB Type-C 2.1 და Power Delivery 3.1 სპეციფიკაციებთან.
პროგრამული პაკეტი მოიცავს STPD01 DC DC კონვერტორის firmware დრაივერებს და TCPP02-M18 დაცვას, რომლებიც მართავენ USB Type-C ორ პორტს და მართავს მიკროკონტროლერს გამოყოფილი API-ების ნაკრების მეშვეობით.
STSW-2STPD01 შეიცავს ორ პროგრამულ IP-ს (Power Sharing და Power Monitor მოდულები), რომლებიც STM32G071RBT6 მიკროკონტროლერს საშუალებას აძლევს ოპტიმიზაცია მოახდინოს შეყვანის ენერგიის ბიუჯეტის ორი პორტით. STM32CubeMonUCPD GUI-ის გამოყენებით, Power Sharing მოდული საშუალებას გაძლევთ დააყენოთ შეყვანის სიმძლავრის რეიტინგი (როგორც შეყვანის მოცულობაtage და დენის მიწოდება ელექტრომომარაგებით), რაც საშუალებას აძლევს თითოეულ პორტს, შეთანხმებით PDO-ები ფიქსირებული რეიტინგისთვის. ეს საშუალებას აძლევს მიკროკონტროლერს მართოს ორი STPD01 DC-DC გადამყვანი, რომლებიც დაკავშირებულია თითოეულ USB Type-C პორტთან და დინამიურად აწარმოოს ხელმისაწვდომი გამომავალი სიმძლავრის მიხედვით, რომელიც მოლაპარაკებულია აშკარა კონტრაქტში.
მაქსიმალური შეყვანის სიმძლავრის რეიტინგში (24 V, 6 A), აპლიკაციის firmware საშუალებას აძლევს ადაპტერის კომპლექტს მიაწოდოს ოთხი ფიქსირებული PDO თითოეული პორტისთვის: 5 V 3 A-ზე, 9 V 3 A-ზე, 15 V 3 A, 20 V. 3 ა.
დასრულდაview
STSW-2STPD01 პროგრამული პაკეტის მახასიათებლები:
- USB PD შუალედური დასტა დაფუძნებული STM32CubeG0 STM32Cube MCU პაკეტი STM32G0 სერიისთვის, რომელიც მუშაობს ARM® Cortex®-M0+ 32-ბიტიან STM32G071RBT6 მიკროკონტროლერზე
- პროგრამული IP, Power Monitor მოდულის ჩათვლით
- პროგრამული IP, მათ შორის Power Sharing მოდული
დაკავშირებული ბმულები
UM2552: ”USB კვების მიწოდების სისტემების მართვა STM32 მიკროკონტროლერებით”
ეწვიეთ ვიკი გვერდს USB დენის მიწოდებასთან დაკავშირებით შესაბამისი სახელმძღვანელოებისა და რესურსებისთვის
არქიტექტურა
STSW-2STPD01 არქიტექტურა ორგანიზებულია სხვადასხვა დონეზე, როგორც ნაჩვენებია შემდეგ სურათზე.

- ტექნიკის აბსტრაქცია
- STM32CubeG0 HAL – აპარატურის აბსტრაქციის ფენა, რომელიც შეიცავს STM32G0 მიკროკონტროლერისთვის სპეციფიკურ მოწყობილობის ბიბლიოთეკებს
- დაფის მხარდაჭერის პაკეტი – ფენის პროგრამული უზრუნველყოფა და API-ები STEVAL-2STPD01-ის და ძირითადი ინტეგრირებული მოწყობილობების ყველა პროგრამული უზრუნველყოფის დრაივერების დასამუშავებლად (STPD01 და TCPP02-M18)
- Middleware
- USB PD ბიბლიოთეკა – დაყოფილია:
- Core – მოწოდებულია როგორც წყაროს კოდი და კომპილირებული ბიბლიოთეკა და შეიცავს ST USB PD შუა პროგრამული უზრუნველყოფის სტეკის მთავარ ბლოკებს:
- DPM Core – შეიცავს ძირითად სახელმწიფო მანქანებს და API-ებს აპლიკაციის ფენის დასაკავშირებლად
- Policy Engine – განახორციელოს ადგილობრივი პოლიტიკა კონკრეტული USB PD პორტისთვის
- პროტოკოლის ფენა – საშუალებას გაძლევთ გაცვალოთ შეტყობინებები Source პორტსა და Sink პორტს შორის
- მოწყობილობა – შეიცავს STM32CubeG0 MCU ადაპტაციის ფენას:
- ფიზიკური ფენა - მავთულზე ბიტების გადაცემისა და მიღება და მონაცემთა გადაცემა
- USB-C პორტის კონტროლი - Type-C გამოვლენის მდგომარეობის აპარატების დასამუშავებლად
- FreeRTOS – შეიცავს რამდენიმე API-ს ამოცანებთან, რიგებთან, სემაფორებთან და ა.შ. და ასევე გრაფიკის ფუნქციებთან მუშაობისთვის.
- განაცხადი
- Device Policy Manager – USB PD რესურსების მართვა მოწყობილობაში ერთ ან მეტ პორტში მოწყობილობის ლოკალური პოლიტიკის საფუძველზე
- დენის მონიტორი - უმაღლეს დონეზე, ავტობუსის სტატუსის მონიტორინგი, რომელიც იძენს ტომსtagელექტრონული მიმდინარე წყვილი და მოვლენების მიღწევა (შეტყობინებები და ხარვეზები)
- სიმძლავრის გაზიარება – სპეციფიკური IP ელექტროენერგიის მართვისა და განაწილებისთვის ორ პორტს შორის, დაწყებული შეყვანის ენერგიის ბიუჯეტიდან და თითოეული პორტის ოპერატიული სტატუსის გათვალისწინებით.
დაკავშირებული ბმულები
UM2552: ”USB კვების მიწოდების სისტემების მართვა STM32 მიკროკონტროლერებით” 4 სამუშაო ადგილი
პროექტის საქაღალდის სტრუქტურა
შემდეგი სურათი გვიჩვენებს პროექტის ძირითადს file ორგანიზაცია და მასთან დაკავშირებული საქაღალდის სტრუქტურა.
სურათი 2. პროექტის საქაღალდეები და file ორგანიზაცია
- BSP და მოდულები
- HAL დრაივერები
- USB PD სტეკის ბიბლიოთეკა
- FreeRTOS წყაროს კოდი
- კომუნალური საშუალებების კოლექცია

განაცხადი
აპლიკაციის მომხმარებლის კოდი იყოფა:
- განაცხადი files, რომელიც შეიცავს ძირითად და სისტემას files (ხაზგასმულია წერტილოვანი ლურჯი ხაზებით ქვემოთ მოცემულ ფიგურაში)
- USB PD მომხმარებელი files (ხაზგასმულია წერტილოვანი მეწამული ხაზებით ქვემოთ მოცემულ ფიგურაში) ეძღვნება მომხმარებლის პარამეტრებს და ბიბლიოთეკის კონფიგურაციას.

მთავარი და სისტემა files
ცხრილი 1. მთავარი და სისტემა files
| File სახელი | აღწერა |
| მთავარი.c / .სთ | პროგრამული უზრუნველყოფის აპლიკაციის შესვლის წერტილი, რომელიც საშუალებას გაძლევთ მართოთ აპარატურის/ფირმვერის კონფიგურაცია და ჩატვირთვის თანმიმდევრობა |
| FreeRTOSConfig.h | FreeRTOS კონფიგურაციის სათაური file |
| stm32g0xx_it.c / .სთ | რუტინული სერვისის შეწყვეტა files |
| system_stm32g0xx.c | სისტემის პაკეტი file (1) |
| stm32g0xx_hal_conf.h | HAL კონფიგურაციის სათაური file |
დამატებითი დეტალებისთვის იხილეთ STM32Cube.
USB PD მომხმარებელი files
ეს მომხმარებლის აპლიკაცია fileდააკონფიგურირეთ USB PD ბიბლიოთეკა, რომელიც მოწოდებულია STM32Cube MCU პაკეტით STM32G0-ისთვის და განახორციელეთ საჭირო გამოძახებები/დამმუშავებლები.
ცხრილი 2. USB PD მომხმარებელი files
| File სახელი | აღწერა |
| usbpd.c / .h | USB PD მომხმარებელი file შეიცავს ბიბლიოთეკის კონფიგურაციას, GUI ინიციალიზაციას და ვერსიას |
| usbpd_devices_conf.h | USB PD მომხმარებელი file მოწყობილობის შემცველი განსაზღვრავს |
| usbpd_dpm_conf.h | USB PD DPM კონფიგურაცია file Type-C პორტის, VID, PID და ა.შ. |
| usbpd_dpm_user.c / .h | DPM მომხმარებლის განხორციელება files შეიცავს ყველა შეტყობინებების გამოძახებას USB PD სტეკის ბიბლიოთეკის ბირთვიდან და საჭიროა |
| usbpd_gui_memmap.h | GUI ფლეშ მეხსიერების კონფიგურაცია |
| File სახელი | აღწერა |
| usbpd_pdo_defs.h | PDO განმარტებები |
| usbpd_pwr_if.c / .h | დენის ინტერფეისი files შეიცავს ყველა API-ს VBUS-ის ჩართვის/გამორთვისთვის, ახალი პროფესიონალის დასაყენებლადfile და შეამოწმეთ ავტობუსის სტატუსი |
| usbpd_power_monitor_app.c / .h | დენის მონიტორის მოდულის შესასვლელი წერტილი გამოძახების და აპლიკაციის სტრატეგიის განსახორციელებლად დენის, ხარვეზების ან კრიტიკული პირობების მართვისთვის |
| usbpd_power_sharing_app.c / .h | ენერგიის გაზიარების მოდულის შესასვლელი წერტილი გამოძახების და კონფიგურაციის განსახორციელებლად |
| tracer_emb_conf.h | ჩაშენებული ტრასერის კონფიგურაცია file |
USBPD DPM მომხმარებელი
USBPD DPM მომხმარებელი მოიცავს:
- USB PD სტეკიდან გამოძახებული ფუნქციები, რომლებიც გამოიყენება USB Type-C და დენის მიწოდების მოვლენების კონფიგურაციისა და შეტყობინებისთვის (იხ. ცხრილი 3);
- სხვადასხვა გამოძახებები და ფუნქციები, რომლებიც შეიცავს სერვისის ფუნქციებს და ზოგად გამოძახებებს, რომლებიც ხელმისაწვდომია USBPD DPM API-ების სახით;
- wrapper to PE შეტყობინებების ფუნქციები, რომელიც ფუნქციების ერთობლიობაა, რომელიც საშუალებას აძლევს მომხმარებლის აპლიკაციას გაუგზავნოს კონკრეტული USB PD კონტროლი ან მონაცემთა შეტყობინებები პორტის პარტნიორთან (ანუ USBPD_DPM_RequestGotoMin პორტის დასაწყვილებლად მინიმუმამდე წასვლა).
ცხრილი 3. შესაბამისი USBPD_DPM_User ფუნქციები
| ფუნქციის სახელი | აღწერა |
| USBPD_DPM_UserInit | DPM მომხმარებლის ინიციალიზაცია |
| USBPD_DPM_UserExecute | DPM მომხმარებლის ამოცანა შეტყობინებების მართვისთვის |
| USBPD_DPM_UserCableDetection | კაბელის შეტყობინებების დამმუშავებელი, მიმაგრების/გამორთვის მართვა, კაბელის ტიპის აღმოჩენა |
| USBPD_DPM_UserTimerCounter | DPM დროის მართვა |
| USBPD_DPM_WaitForTime | USB PD ბირთვში გამოყენებული დაყოვნების განხორციელება; ის იყენებს
osDelay მოწოდებულია CMSIS-ის მიერ |
| USBPD_DPM_SetupNewPower | ინტერფეისი ენერგიის მოთხოვნისთვის, რომელიც მოდის USB PD ბირთვიდან |
| USBPD_DPM_Hard Reset | ხისტი გადატვირთვის მდგომარეობის ავტომატური გამოძახების განხორციელება, რომელიც გამოიყენება BUS-ის და მასთან დაკავშირებული შეტყობინებების სამართავად HR პროცედურის დროს |
| USBPD_DPM_Notification | გამოძახება PE-ს მიერ მოწოდებული შეტყობინების დასამუშავებლად (ანუ, როდესაც მიღწეულია აშკარა კონტრაქტი) |
| USBPD_DPM_GetDataInfo | DPM მონაცემების/კონფიგურაციის მისაღებად |
| USBPD_DPM_SetDataInfo | DPM მონაცემების/კონფიგურაციის დასაყენებლად |
| USBPD_DPM_EvaluateRequest | დარწმუნდით, რომ ადგილობრივი პოლიტიკის შეფასების მოთხოვნები Sink პარტნიორისგან, რომლებიც შეიძლება უარყოფილი ან დაშვებული იყოს |
| USBPD_DPM_EnterErrorRecovery | DPM გამოძახება PE-ს ERROR_RECOVERY მდგომარეობაში შესვლის დასაშვებად |
| USBPD_DPM_RequestHard Reset | მოითხოვეთ PE-სგან მყარი გადატვირთვის გაგზავნა |
| USBPD_DPM_RequestGotoMin | სთხოვეთ PE-ს გაგზავნოს GO_TO_MIN შეტყობინება |
| USBPD_DPM_RequestMessageRequest | სთხოვეთ PE-ს მოთხოვნის შეტყობინების გაგზავნა |
| USBPD_DPM_RequestGetSinkCapability | მოითხოვეთ PE-ისგან GET_SINK_CAPABILITY შეტყობინების გაგზავნა |
| DPM_TurnOffPower | დენის გამორთვისთვის |
| DPM_TurnOnPower | დენის ჩართვა |
USBPD დენის მონიტორი
დენის მონიტორის აპლიკაცია განსაზღვრავს Power Monitor მოდულში აუცილებელ გამოძახებებს. ყველა სტატიკური ფუნქცია ინახება მორგებულ მასივში file და გადავიდა მოდულზე ინიციალიზაციის დროს.

დავალება. სხვა ფუნქციები გამოიყენება Monitor Task-ისთვის, რომელიც ამოწმებს სისტემის სტატუსს, იღებს მოვლენებს (მინიმალური შეყოვნებით) და აცნობებს გაუმართაობას და კრიტიკულ პირობებს მომხმარებლის დონეზე. ამ მოდულში არ ხდება პირდაპირი მოქმედება დენი.
ცხრილი 4. დენის მონიტორის კომპონენტი files
| დავალება | გამოძახება | აღწერა |
|
საკონტროლო დავალება |
PM_ReadData_Handler | კითხულობს VBUS და IBUS მონაცემებს |
| PM_NotifyData_Handler | აცნობებს მონაცემებს მოდულს (გამოძახებულია წაკითხვის შემდეგ) | |
|
მონიტორის დავალება |
PM_CheckStatus_Handler |
ამოწმებს გამოძახების სტატუსს და მთელ სისტემას, ახორციელებს გადაჭარბებული დენის/ PGood კონტროლის სტრატეგიას და აბრუნებს ERR ან OK. ეს გამოძახება შექმნილია პერიოდული მოქმედებების შესასრულებლად |
|
PM_FaultCondition_Handler |
გაუმართაობის მდგომარეობის გამოძახება, გამოძახება ERR-ის შემთხვევაში და ხარვეზების მოსაგვარებლად და მართვისთვის. თუ ეს ფუნქცია დააბრუნებს ERR-ს, ეცნობება კრიტიკულ მდგომარეობას. პორტი გადადის უსაფრთხო რეჟიმში (VBUS არ არის) და USB PD კავშირი გადატვირთულია | |
| PM_CriticalCondition_Handler | კრიტიკული მდგომარეობა პორტის უსაფრთხო რეჟიმში გადასასვლელად და საჭიროებს დენის ციკლს ხელახლა დასაწყებად |
გამყიდველის ინფორმაცია file (VIF)
გამყიდველის ინფორმაცია file (VIF), რომელიც გამოიყენება ხსნარის შესამოწმებლად, ასევე შედის განაცხადის საქაღალდეში.
The file შეიცავს ყველა დაფის დაყენების ინფორმაციას, რათა სწორად ჩაატაროთ ტესტის აქტივობა USB-IF შესაბამისობის ტესტის ხელსაწყოებით.
VIF ჩართულია პროგრამულ პაკეტში გადაწყვეტის შემდგომი პერსონალიზაციისთვის ტესტირების გასაადვილებლად.
მძღოლები
დრაივერების საქაღალდე შეიცავს:
- დაფის მხარდაჭერის პაკეტი (BSP), რომელიც მოიცავს STPD01 და TCPP02-M18 კომპონენტის წყაროს კოდებს, ასევე NUCLEO-G071RB და STEVAL-2STPD01 BSP files;
- Cortex Microcontroller Software Interface Standard (CMSIS), რომელიც შეიცავს STM32G071RB მიკროკონტროლერის გაშვებას file;
- STM32G0xx Hardware Abstraction Layer (HAL), რომელიც მოიცავს დრაივერს პერიფერიული მოწყობილობების კონფიგურაციისა და მართვისთვის, როგორიცაა I/O პორტები, შეფერხებები, ტაიმერები და კომუნიკაცია.
BSP
BSP-ის თითოეული მოდული მართავს სისტემის სპეციფიკურ მახასიათებელს, ქმნის არსებული აპარატურის პროგრამულ აბსტრაქციას.
კომპონენტი files
ეს ქვესაქაღალდე შეიცავს STPD01 და TCPP02-M18 მოწყობილობების კომპონენტის დრაივერებს
ცხრილი 5. STPD01 კომპონენტი files
| File სახელი | აღწერა |
| stpd01.c / .h | STPD01 მოწყობილობის აბსტრაქციის ფენა |
| stpd01_reg.c / .h | STPD01 I²C რეგისტრის საკომუნიკაციო ფენა |
ცხრილი 6. TCPP02-M18 კომპონენტი files
| File სახელი | აღწერა |
| tcpp0203.c / .h | TCPP02-M18 მოწყობილობის აბსტრაქციის ფენა |
| tcpp0203_reg.c / .h | TCPP02-M18 I²C რეგისტრის საკომუნიკაციო ფენა |
შენიშვნა: კომპონენტი fileმე-6 ცხრილში აღწერილი s ასევე შეიცავს შრეებს TCPP03-M20 მოწყობილობისთვის, რომელიც არ არის ჩართული STEVAL-2STPD01 კომპლექტში.
STM32G0xx_NUCLEO ფილ
stm32g0xx_nucleo.c file შეიცავს სხვა მცირე firmware ფუნქციების ერთობლიობას, რომელიც პირდაპირ არ არის დაკავშირებული შემოთავაზებულ აპლიკაციასთან, მაგampლე.
STEVAL-2STPD01 files
ქვემოთ მოცემულ ცხრილში მოცემულია ძირითადი კონფიგურაცია files წარმოადგენს გაფართოების დაფის აპარატურის აბსტრაქციის ფენას
ცხრილი 7. STEVAL-2STPD01 გაფართოების დაფის კომპონენტი files
| File სახელი | აღწერა |
| steval-2stpd01.c / .h | მთავარი ჩანაწერი file და საერთო განმარტება, რომელიც გამოიყენება BSP ფენის ინიციალიზაციისთვის |
| steval-2stpd01_bus.c / .h | BUS ტექნიკის რესურსები |
| steval-2stpd01_conf.h | ამოღების კონფიგურაცია და პერიფერიული იდენტიფიკაცია მთავარი file (USBC პერიფერიული, გამოყენებული GPIO) |
| steval-2stpd01_errno.h | შეცდომის ტიპების განსაზღვრა |
| steval-2stpd01_stpd01.c / .სთ | API ფუნქციონირებს ორივეს ინიციალიზაციისა და მართვისთვის STPD01 კომპონენტები |
| steval-2stpd01_stpd01_conf.h | ამოღების კონფიგურაცია და პერიფერიული იდენტიფიკაცია მთავარი file: STPD01 საკომუნიკაციო პერიფერიული მოწყობილობა და გამოყენებული GPIO ქინძისთავები |
| steval-2stpd01_tcpp02.c / .სთ | API ფუნქციონირებს ორივეს ინიციალიზაციისა და მართვისთვის TCPP02-M18 კომპონენტები |
| steval-2stpd01_tcpp02_conf.h | ამოღების კონფიგურაცია და პერიფერიული იდენტიფიკაცია მთავარი file: TCPP02-M18 საკომუნიკაციო პერიფერიული მოწყობილობა და გამოყენებული GPIO ქინძისთავები |
| steval-2stpd01_usbpd_pwr.c / .h | გამოიყენება ენერგიის მართვისთვის და იყოფა ოთხ ნაწილად: VBUS, VCONN, მონიტორი და დაცვა |
CMSIS
Cortex Microcontroller Software Interface Standard (CMSIS) დრაივერების ბიბლიოთეკა, რომელიც შეიცავს ამ დირექტორიაში არის ტექნიკის აბსტრაქციის ფენა მიკროკონტროლერებისთვის Arm® Cortex® პროცესორებზე დაფუძნებული. ის უზრუნველყოფს მოწყობილობის მხარდაჭერას და პროგრამული ინტერფეისებს პროცესორისა და მისი პერიფერიული მოწყობილობებისთვის.
ამ პროგრამული პაკეტისთვის CMSIS უზრუნველყოფს RTOS სერვისებს, როგორც FreeRTOS-ის შეფუთვას.
დაკავშირებული ბმულები
დამატებითი დეტალებისთვის CMSIS პროგრამული პაკეტების შესახებ, რომლებიც ხელმისაწვდომია STM32CubeMX-ში, იხილეთ UM1718: STM32CubeMX STM32 კონფიგურაციისა და ინიციალიზაციისთვის C კოდის გენერირებისთვის.
STM32G071RBT6 ტექნიკის აბსტრაქციის შრის (HAL) დრაივერები
HAL დრაივერების ქვესაქაღალდე შეიცავს მზა API-ებს, რომლებიც ამარტივებს მომხმარებლის აპლიკაციის განხორციელებას STM32 პერიფერიული მოწყობილობების ნაკრებისთვის.
STM32G071RBT6 HAL დრაივერების ფენა უზრუნველყოფს API-ების მარტივ, ზოგად მრავალ ინსტანციას (აპლიკაციის პროგრამირების ინტერფეისები) ზედა ფენასთან (აპლიკაცია, ბიბლიოთეკები და სტეკები) ურთიერთქმედებისთვის.
დაკავშირებული ბმულები
დამატებითი ინფორმაციისთვის STM32G0 HAL დრაივერების შესახებ იხილეთ UM2319: STM32G0 HAL და დაბალი ფენის დრაივერების აღწერა
Middleware
USB-PD ბიბლიოთეკა
USB-PD ბიბლიოთეკა არის Middleware სტეკი, რომელიც განთავსებულია STM32CubeG0 MCU გაფართოების პაკეტში. იგი შედგება ბიბლიოთეკებისგან, დრაივერებისგან, წყაროებისგან, API-ებისგან და აპლიკაციებისგან, მაგampის მუშაობს ბევრ STM32 32-ბიტიან მიკროკონტროლერზე.
დაკავშირებული ბმულები
დამატებითი ინფორმაციისთვის STM32G0 მიკროკონტროლერის USB PD-ზე, იხილეთ UM2552: ”USB კვების მიწოდების სისტემების მართვა STM32 მიკროკონტროლერებით”
FreeRTOS
FreeRTOS არის ფართოდ ცნობილი რეალურ დროში ოპერაციული სისტემა (RTOS) მიკროკონტროლერებისა და მცირე მიკროპროცესორებისთვის.
ის გთავაზობთ ბევრ API-ს ამოცანებთან, რიგებთან, სემაფორებთან და ა.შ. ასევე გრაფიკის ფუნქციებთან მუშაობისთვის.
აპლიკაცია დაყენებულია სხვადასხვა ფენებში განსაზღვრულ რამდენიმე ამოცანაზე, რომლებიც ასრულებენ კონკრეტულ ფუნქციებს: USB PD სტეკის დონეზე, ყველაზე აქტუალური ამოცანებია Type-C კაბელის ამოცნობა და Policy Engine-ის მდგომარეობების მანქანის მართვა.
შეიქმნა შემდგომი დავალება DPM დონეზე სიგნალების მართვისთვის.
სხვა ამოცანები განსაზღვრულია Power Monitor მოდულში სისტემის მონიტორინგის მექანიზმის დასანერგად.
კომუნალური მომსახურება
Utilities საქაღალდე შეიცავს Embedded Tracer, GUI ინტერფეისს, Power Monitor და Power Sharing მოდულებს.
ჩაშენებული ტრასერი
ეს მოდული ახორციელებს ჩაშენებულ ტრასერს USB PD სტეკის ბიბლიოთეკის საფუძველზე.
ცხრილი 8. ჩაშენებული ტრასერი files
| File სახელი | აღწერა |
| tracer_emb.c / .h | ლოგიკური განხორციელება |
| tracer_emb_hw.c / .სთ | აპარატურის მხარდაჭერა |
დაკავშირებული ბმულები
UM2552: ”USB კვების მიწოდების სისტემების მართვა STM32 მიკროკონტროლერებით”
ეწვიეთ ვიკი გვერდს USB დენის მიწოდებასთან დაკავშირებით შესაბამისი სახელმძღვანელოებისა და რესურსებისთვის
GUI ინტერფეისი
ეს მოდული მოიცავს API-ებს, რომლებიც დაკავშირებულია GUI-სთან, რომელიც გამოიყენება STM32CubeMonUCPD-სთვის და საშუალებას იძლევა ჩაწეროთ და თვალყური ადევნოთ დაფის მონაცემთა გამომავალს GUI-ზე, მაგრამ ასევე დააკონფიგურიროთ შემავალი კვების წყაროს მონაცემები აპლიკაციის პარამეტრების პარამეტრებში.
დენის მონიტორი
ცხრილი 9. დენის მონიტორი files
| File სახელი | აღწერა |
| usbpd_power_monitor.c / .h | დენის მონიტორის მოდული |
ეს FreeRTOS-ზე დაფუძნებული მოდული შეიცავს usbpd_power_monitor-ში file წყვილი. ის აკონტროლებს ენერგიას და უკავშირდება სხვა ფენებს გამოძახების საშუალებით.
მომხმარებლებს შეუძლიათ შეასრულონ მოქმედებების მორგება usbpd_power_monitor_app-ის გამოყენებით file წყვილი.
ორი ძირითადი ამოცანაა გაშვებული:
- PM_Control_Task: მაღალი პრიორიტეტული დავალება, რომელიც კითხულობს მონაცემთა ოპერაციას (PM_ReadData_Handler გამოძახება) და, შესაბამისად, აცნობებს შეგროვებულ მონაცემებს (PM_NotifyData_Handler გამოძახება).
შეგროვებული მონაცემები არის BUS ტომიtage და მიმდინარე; ისინი ინახება PM_Handle-ის სპეციალურ ველებში (მზადაა სისტემის სხვა ნაწილთან გასაზიარებლად). - PM_Monitor_Task: მოვლენებზე ორიენტირებული სამოქმედო დავალება დროებითი შემოწმებისა და ტექნიკური მოქმედებების პერიოდულად შესასრულებლად, USB PD სტატუსის შეტყობინებების მისაღებად (მაგ., მოვლენების მიმაგრება/გამორთვა, აშკარა კონტრაქტი) ან ხარვეზები (მაგ.tagდა).
პერიოდულად მუშაობისას ის იხსენებს PM_CheckStatus_Handler გარე ფუნქციას სისტემის შემოწმების შესასრულებლად: შეცდომის შემთხვევაში წარმოიქმნება შეცდომის მოვლენა.
დენის გაზიარება
ენერგიის გაზიარების მოდული შედის როგორც კომპილირებული ბიბლიოთეკა და შეიცავს სპეციალურ ალგორითმს, რომელსაც შეუძლია შეიძინოს ელექტრომომარაგების შეყვანის პარამეტრები, გამოთვალოს ენერგიის სიხშირე, რომელიც ხელმისაწვდომია თითოეული პორტისთვის და დინამიურად მოარგოს PDO-ები გამოაშკარავებაზე, როდესაც იწყება კვების მოლაპარაკება ან ზოგადი USB PD მოვლენა. ხდება.
ცხრილი 10. დენის გაზიარება files
| File სახელი | აღწერა |
| usbpd_power_sharing .თ | ენერგიის გაზიარების მოდულის სათაური |
ბიბლიოთეკები
შედგენილი ბიბლიოთეკები, რომლებიც შედის პროგრამულ პაკეტში, წარმოადგენს ST IP IP-ს ორს, რომლებიც შეიცავს STEVAL-2STPD01 გადაწყვეტას:
- USBPD Core ბიბლიოთეკა (ხელმისაწვდომია STM32CubeG0 პაკეტში): მასპინძლობს ყველა ფუნქციას, რომელიც დაკავშირებულია USB-PD Middleware სტეკის USB-PD Policy ძრავასთან და პროტოკოლის ფენასთან.
გზა → $ROOT\Firmware\Middlewares\ST\STM32_USBPD_Library\Core\lib- USBPDCORE_PD3_FULL_CM0PLUS_wc32.a → STM32CubeIDE და EWARM (wc32)
- USBPDCORE_PD3_FULL_CM0PLUS_Keil.lib → µVision
- ენერგიის გაზიარების ბიბლიოთეკა:
გზა→$ROOT\Firmware\Utilities\PowerSharing\lib:- USBPD_PowerSharing.a → STM32CubeIDE და EWARM (wc32)
- USBPD_PowerSharing_Keil.lib → µVision
სამუშაო ადგილები
აპლიკაციის მორგებისა და გამართვის მიზნით, პაკეტს აქვს სამი ინტეგრირებული განვითარების გარემო (IDE): STMicroelectronics STM32CubeIDE, IAR EWARM და Keil μVision / MDK-ARM.
პროექტი files განლაგებულია განაცხადის საქაღალდეში, როგორც ეს ნაჩვენებია ქვემოთ.

STM32CubeIDE
STM32CubeIDE არის მოწინავე C/C++ განვითარების პლატფორმა პერიფერიული კონფიგურაციით, კოდის გენერირებით, კოდის შედგენით და გამართვის ფუნქციებით STM32 მიკროკონტროლერებისა და მიკროპროცესორებისთვის.
ის დაფუძნებულია Eclipse®/CDT ჩარჩოსა და GCC ინსტრუმენტთა ჯაჭვზე განვითარებისთვის და GDB-ზე გამართვისთვის.
პროექტის გასახსნელად აირჩიეთ STM32CubeIDE საქაღალდე და გახსენით .project file.
გზაა: $ROOT\Firmware\Projects\STEVAL 2STPD01\STM32CubeIDE

STM32CubeIDE პროექტის გასახსნელად შეგიძლიათ:
- გახსენით გარემო და აირჩიეთ STM32CubeIDE პროექტის საქაღალდე [File]>[გახსენით პროექტები დან File System] მენიუ;
- ან გახსენით პროექტი მასზე ორჯერ დაწკაპუნებით საქაღალდეში: როდესაც პროექტი წარმატებით იმპორტირებულია, შეტყობინება გამოჩნდება.
იმპორტის ბოლოს დახურეთ [Information Center] ჩანართი და გააფართოვეთ სამუშაო სივრცის ჩანართი view საქაღალდის სრული სტრუქტურა. ორივე შემთხვევაში, IDE მზად არის.

შენიშვნა: პროექტი გამოცდილია STM32CubeIDE v1.6.1-ით.
EWARM – IAR
IAR Embedded Workbench შეესაბამება Arm ჩაშენებული აპლიკაციის ორობით ინტერფეისს (EABI) და Arm Cortex მიკროკონტროლერის პროგრამული ინტერფეისის სტანდარტს (CMSIS).
გზაა: $ROOT\Firmware\Projects\STEVAL-2STPD01\EWARM

შეფასების დასაწყებად ორჯერ დააწკაპუნეთ Project.eww-ზე file და გახსენი.

შენიშვნა: პროექტი შემოწმდა EWARM v8.50.x-ით. თუ თქვენს კომპიუტერში რამდენიმე EWARM ვერსიაა, გახსენით სწორი IDE ვერსია და აირჩიეთ Project.eww file [მენიუ]>[გახსენით სამუშაო ადგილი].
μVision/MDK-ARM – Keil
µVision IDE და გამართვა შემუშავებულია Keil-ის მიერ და მხარს უჭერს მომხმარებელს შემუშავებასა და გამართვაში.
გზაა: $ROOT\Firmware\Projects\STEVAL-2STPD01\MDK-RM

ამ განვითარების გარემოსთან მუშაობის დასაწყებად, ორჯერ დააწკაპუნეთ Project.uvprojx-ზე file და გახსენი.

შენიშვნა: პროექტი გამოცდილია µVision v5.34.0.0 და MDK-ARM 5.34.
ლიცენზირების ინფორმაცია
STSW-2STPD01 მიწოდებულია Mix Ultimate Liberty+OSS+3rd მხარის V1 ლიცენზიით.
ამ პაკეტის ფარგლებში მოწოდებულ პროგრამულ კომპონენტებს მოყვება სხვადასხვა სალიცენზიო ხელშეკრულებები, როგორც ეს მოცემულია შემდეგ ცხრილში.
ცხრილი 11. პროგრამული კომპონენტის სალიცენზიო ხელშეკრულებები
| პროგრამული კომპონენტი | მფლობელი | ლიცენზია |
| Cortex®-M CMSIS | Arm® | BSD 3-პუნქტი |
| FreeRTOS™ ბირთვი | საავტორო უფლება (C) 2017 Amazon.com, Inc. ან მისი შვილობილი კომპანიები | MIT ღია კოდის ლიცენზია |
| STM32G0 HAL/LL API | STMicroelectronics International NV | BSD 3-პუნქტი |
| STM32 USB-PD ბიბლიოთეკა | STMicroelectronics International NV | Ultimate Liberty პროგრამული უზრუნველყოფის სალიცენზიო შეთანხმება (SLA0044) |
| STSW-2STPD01 | STMicroelectronics International NV | პროგრამული პაკეტის სალიცენზიო შეთანხმება (SLA0048) |
| STSW-2STPD01 BSP API | STMicroelectronics International NV | Ultimate Liberty პროგრამული უზრუნველყოფის სალიცენზიო შეთანხმება (SLA0044) |
| STSW-2STPD01 დენის გაზიარების ბიბლიოთეკა | STMicroelectronics International NV | Ultimate Liberty პროგრამული უზრუნველყოფის სალიცენზიო შეთანხმება (SLA0044) |
გადასინჯვის ისტორია
ცხრილი 12. დოკუმენტის გადახედვის ისტორია
| თარიღი | რევიზია | ცვლილებები |
| 22-ნოე-2021 | 1 | თავდაპირველი გამოშვება. |
მნიშვნელოვანი შეტყობინება - გთხოვთ, ყურადღებით წაიკითხოთ
STMicroelectronics NV და მისი შვილობილი კომპანიები (”ST”) იტოვებენ უფლებას ნებისმიერ დროს გააკეთონ ცვლილებები, შესწორებები, დამატებები, ცვლილებები და გაუმჯობესებები ST პროდუქტებში და / ან ამ დოკუმენტში გაფრთხილების გარეშე. მყიდველებმა შეკვეთების განთავსებამდე უნდა მიიღონ უახლესი შესაბამისი ინფორმაცია ST პროდუქტებზე. ST პროდუქციის რეალიზაცია ხდება ST– ის წესების და პირობების შესაბამისად, შეკვეთის მიღების მომენტში.
შემსყიდველები მხოლოდ პასუხისმგებელნი არიან ST პროდუქტების არჩევაზე, შერჩევასა და გამოყენებაზე და ST არ იღებს პასუხისმგებლობას განაცხადის დახმარების ან შემსყიდველთა პროდუქციის დიზაინისთვის.
არავითარი ლიცენზია, გამოხატული თუ ნაგულისხმევი, რაიმე ინტელექტუალური საკუთრების უფლებაზე არ არის გაცემული ST-ის მიერ აქ.
ST პროდუქტების ხელახალი გაყიდვა წინამდებარე ინფორმაციისგან განსხვავებული დებულებებით გააუქმებს ST-ის მიერ ასეთ პროდუქტზე გაცემულ ნებისმიერ გარანტიას.
ST და ST ლოგო ST-ის სავაჭრო ნიშნებია. შესახებ დამატებითი ინფორმაციისთვის
ST სავაჭრო ნიშნები, გთხოვთ, მიმართოთ www.st.com/trademarks. ყველა სხვა პროდუქტის ან სერვისის სახელი მათი შესაბამისი მფლობელების საკუთრებაა.
ამ დოკუმენტის ინფორმაცია ანაცვლებს და ცვლის ადრე მოწოდებულ ინფორმაციას ამ დოკუმენტის ნებისმიერ წინა ვერსიაში.
© 2021 STMicroelectronics – ყველა უფლება დაცულია
დოკუმენტები / რესურსები
![]() |
STMicroelectronics UM2882 C დენის მიწოდების ორმაგი პორტის ადაპტერის ნაკრები [pdf] მომხმარებლის სახელმძღვანელო UM2882 C Power Delivery ორმაგი პორტის ადაპტერის ნაკრები, UM2882, C Power Delivery ორმაგი პორტის ადაპტერის ნაკრები, ადაპტერის ნაკრები |




