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 არქიტექტურა ორგანიზებულია სხვადასხვა დონეზე, როგორც ნაჩვენებია შემდეგ სურათზე.

არქიტექტურა

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

დაკავშირებული ბმულები
UM2552: ”USB კვების მიწოდების სისტემების მართვა STM32 მიკროკონტროლერებით” 4 სამუშაო ადგილი

პროექტის საქაღალდის სტრუქტურა

შემდეგი სურათი გვიჩვენებს პროექტის ძირითადს file ორგანიზაცია და მასთან დაკავშირებული საქაღალდის სტრუქტურა.

სურათი 2. პროექტის საქაღალდეები და file ორგანიზაცია

  1. BSP და მოდულები
  2. HAL დრაივერები
  3. USB PD სტეკის ბიბლიოთეკა
  4. FreeRTOS წყაროს კოდი
  5. კომუნალური საშუალებების კოლექცია

პროექტის საქაღალდის სტრუქტურა

განაცხადი

აპლიკაციის მომხმარებლის კოდი იყოფა:

  • განაცხადი 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 მომხმარებელი მოიცავს:

  1. USB PD სტეკიდან გამოძახებული ფუნქციები, რომლებიც გამოიყენება USB Type-C და დენის მიწოდების მოვლენების კონფიგურაციისა და შეტყობინებისთვის (იხ. ცხრილი 3);
  2. სხვადასხვა გამოძახებები და ფუნქციები, რომლებიც შეიცავს სერვისის ფუნქციებს და ზოგად გამოძახებებს, რომლებიც ხელმისაწვდომია USBPD DPM API-ების სახით;
  3. 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 და გადავიდა მოდულზე ინიციალიზაციის დროს.

USBPD დენის მონიტორი

დავალება. სხვა ფუნქციები გამოიყენება 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 პროექტის გასახსნელად შეგიძლიათ:

  1. გახსენით გარემო და აირჩიეთ STM32CubeIDE პროექტის საქაღალდე [File]>[გახსენით პროექტები დან File System] მენიუ;
  2. ან გახსენით პროექტი მასზე ორჯერ დაწკაპუნებით საქაღალდეში: როდესაც პროექტი წარმატებით იმპორტირებულია, შეტყობინება გამოჩნდება.

იმპორტის ბოლოს დახურეთ [Information Center] ჩანართი და გააფართოვეთ სამუშაო სივრცის ჩანართი view საქაღალდის სრული სტრუქტურა. ორივე შემთხვევაში, IDE მზად არის.

სამუშაო ადგილები

შენიშვნა: პროექტი გამოცდილია STM32CubeIDE v1.6.1-ით.

EWARM – IAR

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

EWARM - IAR

შეფასების დასაწყებად ორჯერ დააწკაპუნეთ 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 ორმაგი პორტის ადაპტერის ნაკრები, ადაპტერის ნაკრები

ცნობები

დატოვე კომენტარი

თქვენი ელფოსტის მისამართი არ გამოქვეყნდება. მონიშნულია აუცილებელი ველები *