STMicroelectronics UM2882 C Power Delivery Dual Port Adapter Kit សៀវភៅណែនាំអ្នកប្រើប្រាស់

សេចក្តីផ្តើម

កញ្ចប់កម្មវិធី STSW-2STPD01 មានកូដប្រភពកម្មវិធី និងបណ្ណាល័យដែលត្រូវបានរចនាឡើងដើម្បីបង្ហាញពីសមត្ថភាពរបស់ STEVAL-2STPD01 USB Type-C™ Power Delivery dual port adapter kit។

កម្មវិធីបង្កប់របស់កម្មវិធីដំណើរការលើមេក្រូបញ្ជា ARM® Cortex®-M0+ 32-bit STM32G071RBT6 ដែលបានបង្កប់នៅក្នុង NUCLEO-G071RB រួមបញ្ចូលក្នុងឧបករណ៍ STEVAL-2STPD01។ សូមអរគុណចំពោះជង់ផ្នែកកណ្តាល STM32CubeG0 USB PD 3.0 ឧបករណ៍នេះត្រូវបានអនុលោមតាមលក្ខណៈបច្ចេកទេសរបស់ USB Type-C 2.1 និង Power Delivery 3.1 ។

កញ្ចប់កម្មវិធីរួមមានកម្មវិធីបញ្ជាកម្មវិធីបង្កប់របស់ឧបករណ៍បំលែង STPD01 DC DC និងការការពារ TCPP02-M18 ដែលគ្រប់គ្រងច្រក USB Type-C ពីរ និងត្រូវបានជំរុញដោយ microcontroller តាមរយៈសំណុំនៃ APIs ដែលខិតខំប្រឹងប្រែង។

STSW-2STPD01 បង្កប់ IPs ផ្នែកទន់ចំនួនពីរ (Power Sharing and Power Monitor modules) ដែលអនុញ្ញាតឱ្យ microcontroller STM32G071RBT6 បង្កើនប្រសិទ្ធភាពថវិកាបញ្ចូលថាមពលតាមរយៈច្រកទាំងពីរ។ ដោយប្រើ STM32CubeMonUCPD GUI ម៉ូឌុលចែករំលែកថាមពលអនុញ្ញាតឱ្យកំណត់កម្រិតថាមពលបញ្ចូល (ជាវ៉ុលបញ្ចូលtage និងចរន្តដែលផ្តល់ដោយការផ្គត់ផ្គង់ថាមពល) ការបើកដំណើរការសម្រាប់ច្រកនីមួយៗ PDOs ដែលអាចចរចារបានសម្រាប់ការវាយតម្លៃថេរ។ វាអនុញ្ញាតឱ្យ microcontroller គ្រប់គ្រងឧបករណ៍បំប្លែង STPD01 DC-DC ពីរដែលភ្ជាប់ជាមួយច្រក USB Type-C នីមួយៗ ហើយគ្រប់គ្រងទិន្នផលដែលមានដោយថាមពលស្របតាមថាមពលដែលបានចរចាក្នុងកិច្ចសន្យាច្បាស់លាស់។

នៅកម្រិតថាមពលបញ្ចូលអតិបរមា (24 V, 6 A) កម្មវិធីបង្កប់កម្មវិធីអាចឱ្យឧបករណ៍អាដាប់ទ័របញ្ជូន PDOs ថេរចំនួនបួនសម្រាប់ច្រកនីមួយៗ៖ 5 V នៅ 3 A, 9 V នៅ 3 A, 15 V នៅ 3 A, 20 V នៅ 3 A

ជាងview

លក្ខណៈពិសេសកញ្ចប់កម្មវិធី STSW-2STPD01៖

  • ជង់ឧបករណ៍កណ្តាល USB PD ផ្អែកលើកញ្ចប់ STM32CubeG0 STM32Cube MCU សម្រាប់ស៊េរី STM32G0 ដែលដំណើរការលើមីក្រូកុងទ័រARM® Cortex®-M0+ 32-bit STM32G071RBT6
  • កម្មវិធី IP រួមទាំងម៉ូឌុលត្រួតពិនិត្យថាមពល
  • កម្មវិធី IP រួមទាំងម៉ូឌុលចែករំលែកថាមពល

តំណភ្ជាប់ដែលទាក់ទង
UM2552៖ "ការគ្រប់គ្រងប្រព័ន្ធចែកចាយថាមពល USB ជាមួយឧបករណ៍បញ្ជាមីក្រូ STM32"
សូមចូលទៅកាន់ទំព័រវិគីសម្រាប់ការណែនាំ និងធនធានដែលពាក់ព័ន្ធទាក់ទងនឹងការផ្តល់ថាមពល USB

ស្ថាបត្យកម្ម

ស្ថាបត្យកម្ម STSW-2STPD01 ត្រូវបានរៀបចំក្នុងកម្រិតផ្សេងៗគ្នា ដូចបានបង្ហាញក្នុងរូបខាងក្រោម។

ស្ថាបត្យកម្ម

  1. អរូបីផ្នែករឹង
    • STM32CubeG0 HAL - ស្រទាប់ abstraction ផ្នែករឹងដែលមានបណ្ណាល័យឧបករណ៍ជាក់លាក់សម្រាប់ microcontroller STM32G0
    • កញ្ចប់គាំទ្រក្តារ - កម្មវិធីស្រទាប់ និង APIs ដើម្បីគ្រប់គ្រង STEVAL-2STPD01 និងកម្មវិធីបញ្ជាកម្មវិធីបង្កប់ទាំងអស់នៃឧបករណ៍រួមបញ្ចូលសំខាន់ៗ (STPD01 និង TCPP02-M18)
  2. គ្រឿងកណ្តាល
    • បណ្ណាល័យ USB PD - បែងចែកជា៖
    • ស្នូល - ផ្តល់ជាកូដប្រភព និងបណ្ណាល័យចងក្រង និងមាន ST USB PD Middleware stacks ប្លុកចម្បង៖
    • DPM Core - មានម៉ាស៊ីនរដ្ឋចម្បង និង APIs ដើម្បីភ្ជាប់ស្រទាប់កម្មវិធី
    • Policy Engine - ដើម្បីអនុវត្តគោលការណ៍មូលដ្ឋានសម្រាប់ច្រក USB PD ជាក់លាក់
    • Protocol Layer - ដើម្បីបើកសារដែលត្រូវផ្លាស់ប្តូររវាងច្រកប្រភព និងច្រកលិច
    • ឧបករណ៍ - មានស្រទាប់សម្របខ្លួនសម្រាប់ STM32CubeG0 MCU៖
    • Physical Layer - ដើម្បីគ្រប់គ្រងការបញ្ជូន និងការទទួលប៊ីតនៅលើខ្សែ និងការបញ្ជូនទិន្នន័យ
    • ការគ្រប់គ្រងច្រក USB-C - ដើម្បីគ្រប់គ្រងម៉ាស៊ីនស្ថានភាពរកឃើញ Type-C
    • FreeRTOS – មាន APIs ជាច្រើនដើម្បីធ្វើការជាមួយភារកិច្ច ជួរ semaphores ។ល។ ក៏ដូចជាមុខងារកម្មវិធីកំណត់ពេល
  3. ការដាក់ពាក្យ
    • កម្មវិធីគ្រប់គ្រងគោលការណ៍ឧបករណ៍ – ដើម្បីគ្រប់គ្រងធនធាន USB PD នៅក្នុងឧបករណ៍ឆ្លងកាត់ច្រកមួយ ឬច្រើនដោយផ្អែកលើគោលការណ៍មូលដ្ឋានឧបករណ៍
    • ម៉ូនីទ័រថាមពល - ដើម្បីត្រួតពិនិត្យនៅកម្រិតខ្ពស់ ស្ថានភាពឡានក្រុង ដែលទទួលបានវ៉ុលtagគូបច្ចុប្បន្ន និងព្រឹត្តិការណ៍ឈានដល់ (ការជូនដំណឹង និងកំហុស)
    • ការចែករំលែកថាមពល - IP ជាក់លាក់ដើម្បីគ្រប់គ្រង និងចែកចាយថាមពលរវាងច្រកទាំងពីរ ដោយចាប់ផ្តើមពីថវិកាថាមពលបញ្ចូល និងពិចារណាស្ថានភាពប្រតិបត្តិការនៃច្រកនីមួយៗ។

តំណភ្ជាប់ដែលទាក់ទង
UM2552៖ "ការគ្រប់គ្រងប្រព័ន្ធចែកចាយថាមពល USB ជាមួយឧបករណ៍បញ្ជាមីក្រូ STM32" 4 Workspaces

រចនាសម្ព័ន្ធថតគម្រោង

រូបខាងក្រោមបង្ហាញពីគម្រោងសំខាន់ file អង្គការ និងរចនាសម្ព័ន្ធថតដែលពាក់ព័ន្ធ។

រូបភាពទី 2 ។ ថតគម្រោង និង file អង្គការ

  1. BSP និងម៉ូឌុល
  2. អ្នកបើកបរ HAL
  3. បណ្ណាល័យជង់ USB PD
  4. កូដប្រភព FreeRTOS
  5. ការប្រមូលឧបករណ៍ប្រើប្រាស់

រចនាសម្ព័ន្ធថតគម្រោង

ការដាក់ពាក្យ

លេខកូដអ្នកប្រើប្រាស់កម្មវិធី ចែកចេញជា៖

  • កម្មវិធី files, មានមេ និងប្រព័ន្ធ files (រំលេចដោយចំនុចពណ៌ខៀវក្នុងរូបភាពខាងក្រោម)
  • អ្នកប្រើប្រាស់ USB PD files (រំលេចដោយចំនុចពណ៌ស្វាយក្នុងរូបខាងក្រោម) ឧទ្ទិសដល់ការកំណត់អ្នកប្រើប្រាស់ និងការកំណត់រចនាសម្ព័ន្ធបណ្ណាល័យ។

ការដាក់ពាក្យ

មេនិងប្រព័ន្ធ files

តារាង 1 ។ មេនិងប្រព័ន្ធ files

File ឈ្មោះ ការពិពណ៌នា
Main.c/.h ចំណុចចូលកម្មវិធីកម្មវិធីបង្កប់ដែលអនុញ្ញាតឱ្យគ្រប់គ្រងការកំណត់រចនាសម្ព័ន្ធផ្នែករឹង/កម្មវិធីបង្កប់ និងលំដាប់ចាប់ផ្ដើម
FreeRTOSConfig.h បឋមកថាកំណត់រចនាសម្ព័ន្ធ FreeRTOS file
stm32g0xx_it.c / .h រំខានសេវាកម្មទម្លាប់ files
system_stm32g0xx.c កញ្ចប់ប្រព័ន្ធ file (១៦១៦)
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 stack core library
usbpd_gui_memmap.h ការកំណត់រចនាសម្ព័ន្ធអង្គចងចាំពន្លឺ GUI
File ឈ្មោះ ការពិពណ៌នា
usbpd_pdo_defs.h និយមន័យ PDO
usbpd_pwr_if.c / .h ចំណុចប្រទាក់ថាមពល files មាន APIs ទាំងអស់ដើម្បីបើក/បិទ VBUS ដើម្បីកំណត់ pro ថ្មី។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 APIs;
  3. wrapper ទៅកាន់មុខងារផ្ញើសារ 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_HardReset ការ​អនុវត្ត​ការ​ហៅ​ត្រឡប់​របស់​ម៉ាស៊ីន​រដ្ឋ​កំណត់​ឡើង​វិញ​រឹង ដែល​ប្រើ​ដើម្បី​គ្រប់គ្រង BUS និង​ការ​ផ្ញើ​សារ​ដែល​ពាក់ព័ន្ធ​ក្នុង​អំឡុង​ពេល​នីតិវិធី HR
USBPD_DPM_ការជូនដំណឹង ការហៅត្រឡប់មកវិញដើម្បីដោះស្រាយការជូនដំណឹងដែលផ្តល់ដោយ PE (ឧ. នៅពេលដែលកិច្ចសន្យាច្បាស់លាស់ត្រូវបានឈានដល់)
USBPD_DPM_GetDataInfo ដើម្បីទាញយកទិន្នន័យ/ការកំណត់រចនាសម្ព័ន្ធ DPM
USBPD_DPM_SetDataInfo ដើម្បីកំណត់ទិន្នន័យ/ការកំណត់រចនាសម្ព័ន្ធ DPM
USBPD_DPM_EvaluateRequest ធានាឱ្យបាននូវគោលការណ៍ក្នុងស្រុកដែលវាយតម្លៃសំណើពីដៃគូ Sink ដែលអាចត្រូវបានបដិសេធ ឬទទួលយក
USBPD_DPM_EnterErrorRecovery ការហៅត្រឡប់ DPM ដើម្បីអនុញ្ញាតឱ្យ PE ចូលទៅក្នុងស្ថានភាព ERROR_RECOVERY
USBPD_DPM_RequestHardReset ស្នើសុំ PE ដើម្បីផ្ញើការកំណត់ឡើងវិញរឹង
USBPD_DPM_RequestGotoMin ស្នើសុំ PE ដើម្បីផ្ញើសារ GO_TO_MIN
USBPD_DPM_RequestMessageRequest ស្នើសុំ PE ដើម្បីផ្ញើសារស្នើសុំ
USBPD_DPM_RequestGetSinkCapability ស្នើសុំ PE ដើម្បីផ្ញើសារ GET_SINK_CAPABILITY
DPM_TurnOffPower ដើម្បីបិទថាមពល
DPM_TurnOnPower ដើម្បីបើកថាមពល

ម៉ូនីទ័រថាមពល USBPD

កម្មវិធី​ម៉ូនីទ័រ​ថាមពល​កំណត់​ការ​ហៅ​ត្រឡប់​ដែល​ចាំបាច់​ក្នុង​ម៉ូឌុល​ម៉ូនីទ័រ​ថាមពល។ មុខងារឋិតិវន្តទាំងអស់ត្រូវបានរក្សាទុកក្នុងអារេផ្ទាល់ខ្លួន file និងឆ្លងទៅម៉ូឌុលកំឡុងពេលចាប់ផ្តើម។

ម៉ូនីទ័រថាមពល USBPD

កិច្ចការ។ មុខងារផ្សេងទៀតត្រូវបានប្រើសម្រាប់ Monitor Task ដែលពិនិត្យស្ថានភាពប្រព័ន្ធ ទទួលព្រឹត្តិការណ៍ (ជាមួយភាពយឺតយ៉ាវអប្បបរមា) និងជូនដំណឹងអំពីកំហុស និងលក្ខខណ្ឌសំខាន់នៅកម្រិតអ្នកប្រើប្រាស់។ នៅក្នុងម៉ូឌុលនេះ គ្មានសកម្មភាពផ្ទាល់លើថាមពលត្រូវបានអនុវត្តទេ។

តារាង 4 ។ សមាសភាគត្រួតពិនិត្យថាមពល files

កិច្ចការ ហៅត្រឡប់មកវិញ ការពិពណ៌នា
 

គ្រប់គ្រងភារកិច្ច

PM_ReadData_Handler អានទិន្នន័យ VBUS និង IBUS
PM_NotifyData_Handler ជូនដំណឹងអំពីទិន្នន័យទៅម៉ូឌុល (ហៅបន្ទាប់ពីអាន)
 

 

 

 

ត្រួតពិនិត្យភារកិច្ច

 

PM_CheckStatus_Handler

ពិនិត្យស្ថានភាពការហៅត្រលប់មកវិញ និងប្រព័ន្ធទាំងមូល អនុវត្តយុទ្ធសាស្ត្រគ្រប់គ្រង overcurrent/ PGood ហើយត្រឡប់ ERR ឬ OK ។ ការហៅត្រឡប់មកវិញនេះត្រូវបានរចនាឡើងដើម្បីអនុវត្តសកម្មភាពតាមកាលកំណត់
 

PM_FaultCondition_Handler

ការហៅត្រឡប់មកវិញនៃលក្ខខណ្ឌកំហុស ហៅថាក្នុងករណី ERR និងដើម្បីដោះស្រាយ និងគ្រប់គ្រងកំហុស។ ប្រសិនបើមុខងារនេះត្រឡប់ ERR លក្ខខណ្ឌសំខាន់ត្រូវបានជូនដំណឹង។ ច្រកត្រូវបានផ្លាស់ទីទៅក្នុងរបៀបសុវត្ថិភាព (មិនមាន VBUS) ហើយការភ្ជាប់ USB PD ត្រូវបានកំណត់ឡើងវិញ
PM_CriticalCondition_Handler ការហៅទៅកាន់លក្ខខណ្ឌសំខាន់ដើម្បីដាក់ច្រកនៅក្នុងរបៀបសុវត្ថិភាព និងតម្រូវឱ្យវដ្តថាមពលដើម្បីចាប់ផ្តើមម្តងទៀត

ព័ត៌មានពីអ្នកលក់ file (VIF)

ព័ត៌មានអំពីអ្នកលក់ file (VIF) ដែលប្រើដើម្បីសាកល្បងដំណោះស្រាយក៏ត្រូវបានដាក់បញ្ចូលក្នុងថតកម្មវិធីផងដែរ។
នេះ។ file មានព័ត៌មានអំពីការដំឡើងក្តារទាំងអស់ ដើម្បីដំណើរការសកម្មភាពសាកល្បងបានត្រឹមត្រូវជាមួយនឹងឧបករណ៍តេស្តអនុលោមតាម USB-IF ។
VIF ត្រូវបានរួមបញ្ចូលនៅក្នុងកញ្ចប់កម្មវិធី ដើម្បីងាយស្រួលក្នុងការសាកល្បងដំណោះស្រាយសម្រាប់ការប្ដូរតាមបំណងបន្ថែមទៀត។

អ្នកបើកបរ

ថតឯកសារកម្មវិធីបញ្ជារួមមាន:

  • កញ្ចប់គាំទ្រក្តារ (BSP) ដែលរួមបញ្ចូលកូដប្រភពសមាសភាគ STPD01 និង TCPP02-M18 ក៏ដូចជា NUCLEO-G071RB និង STEVAL-2STPD01 BSP files;
  • Cortex Microcontroller Software Interface Standard (CMSIS) ដែលមាន​ការ​ចាប់ផ្តើម microcontroller STM32G071RB file;
  • STM32G0xx Hardware Abstraction Layer (HAL) ដែលរួមបញ្ចូលកម្មវិធីបញ្ជា ដើម្បីកំណត់រចនាសម្ព័ន្ធ និងគ្រប់គ្រងឧបករណ៍គ្រឿងកុំព្យូទ័រ ដូចជាច្រក I/O ការរំខាន ឧបករណ៍កំណត់ម៉ោង និងការទំនាក់ទំនង។

BSP

ម៉ូឌុលនីមួយៗនៃ BSP គ្រប់គ្រងមុខងារជាក់លាក់មួយនៃប្រព័ន្ធ ដោយបង្កើតកម្មវិធី abstraction នៃ hardware ដែលមាន។

សមាសភាគ 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 ចុះឈ្មោះស្រទាប់ទំនាក់ទំនង

ចំណាំ៖ សមាសភាគ files ដែលបានពិពណ៌នានៅក្នុងតារាងទី 6 ក៏មានស្រទាប់សម្រាប់ឧបករណ៍ TCPP03-M20 ដែលមិនត្រូវបានបង្កប់នៅក្នុងឧបករណ៍ STEVAL-2STPD01 ដែរ។

ឯកសារ STM32G0xx_NUCLEO

stm32g0xx_nucleo.c file មានសំណុំនៃមុខងារកម្មវិធីបង្កប់អនីតិជនផ្សេងទៀតដែលមិនបានភ្ជាប់ដោយផ្ទាល់ទៅកម្មវិធីដែលបានស្នើឡើង ឧ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 / .h មុខងារ API ដើម្បីចាប់ផ្តើម និងគ្រប់គ្រងទាំងពីរ STPD01 សមាសធាតុ
steval-2stpd01_stpd01_conf.h ខ្ទាស់ការកំណត់រចនាសម្ព័ន្ធ និងការសម្គាល់គ្រឿងកុំព្យូទ័រសម្រាប់មេ file: នេះ។ STPD01 គ្រឿងកុំព្យូទ័រទំនាក់ទំនង និងម្ជុល GPIO ត្រូវបានប្រើប្រាស់
steval-2stpd01_tcpp02.c / .h មុខងារ API ដើម្បីចាប់ផ្តើម និងគ្រប់គ្រងទាំងពីរ TCPP02-M18 សមាសធាតុ
steval-2stpd01_tcpp02_conf.h ខ្ទាស់ការកំណត់រចនាសម្ព័ន្ធ និងការសម្គាល់គ្រឿងកុំព្យូទ័រសម្រាប់មេ file: នេះ។ TCPP02-M18 គ្រឿងកុំព្យូទ័រទំនាក់ទំនង និងម្ជុល GPIO ត្រូវបានប្រើប្រាស់
steval-2stpd01_usbpd_pwr.c / .h ប្រើសម្រាប់ការគ្រប់គ្រងថាមពល និងបំបែកជាបួនផ្នែក៖ VBUS, VCONN, Monitor និង Protection

ស៊ី។ ស៊ី។ អាយ។ អេស

បណ្ណាល័យកម្មវិធីបញ្ជា Cortex Microcontroller Software Interface Standard (CMSIS) ដែលមាននៅក្នុងថតនេះគឺជាស្រទាប់អរូបីផ្នែករឹងសម្រាប់ microcontrollers ដែលមានមូលដ្ឋានលើប្រព័ន្ធដំណើរការArm® Cortex®។ វាបើកដំណើរការជំនួយឧបករណ៍ និងចំណុចប្រទាក់កម្មវិធីសម្រាប់ខួរក្បាល និងគ្រឿងកុំព្យូទ័ររបស់វា។
សម្រាប់កញ្ចប់កម្មវិធីនេះ CMSIS ផ្តល់សេវា RTOS ជាកញ្ចប់នៃ FreeRTOS ។

តំណភ្ជាប់ដែលទាក់ទង
សម្រាប់ព័ត៌មានលម្អិតបន្ថែមលើកញ្ចប់កម្មវិធី CMSIS ដែលមាននៅក្នុង STM32CubeMX សូមមើល UM1718: STM32CubeMX សម្រាប់ការកំណត់រចនាសម្ព័ន្ធ STM32 និងការចាប់ផ្តើមបង្កើតកូដ C

កម្មវិធីបញ្ជាស្រទាប់អរូបីផ្នែករឹង STM32G071RBT6 (HAL) 

ថតរងកម្មវិធីបញ្ជា HAL មាន APIs ដែលត្រៀមរួចជាស្រេចសម្រាប់ប្រើប្រាស់ ដែលសម្រួលដល់ការអនុវត្តកម្មវិធីអ្នកប្រើប្រាស់សម្រាប់សំណុំនៃគ្រឿងកុំព្យូទ័រ STM32 ។
ស្រទាប់កម្មវិធីបញ្ជា STM32G071RBT6 HAL ផ្តល់នូវសំណុំ APIs ពហុឧទាហរណ៍សាមញ្ញ (ចំណុចប្រទាក់កម្មវិធីកម្មវិធី) ដើម្បីធ្វើអន្តរកម្មជាមួយស្រទាប់ខាងលើ (កម្មវិធី បណ្ណាល័យ និងជង់)។

តំណភ្ជាប់ដែលទាក់ទង
សម្រាប់ព័ត៌មានលម្អិតបន្ថែមអំពីកម្មវិធីបញ្ជា STM32G0 HAL សូមមើល UM2319៖ ការពិពណ៌នាអំពីកម្មវិធីបញ្ជា STM32G0 HAL និងស្រទាប់ទាប

គ្រឿងកណ្តាល

បណ្ណាល័យ USB-PD
បណ្ណាល័យ USB-PD គឺជាជង់ Middleware ដែលរៀបចំនៅក្នុងកញ្ចប់ពង្រីក STM32CubeG0 MCU ។ វាមានបណ្ណាល័យ កម្មវិធីបញ្ជា ប្រភព API និងកម្មវិធី ឧamples ដំណើរការលើ microcontroller 32-bit STM32 ជាច្រើន។

តំណភ្ជាប់ដែលទាក់ទង
សម្រាប់ព័ត៌មានលម្អិតបន្ថែមអំពី STM32G0 microcontroller USB PD សូមមើល UM2552៖ "ការគ្រប់គ្រងប្រព័ន្ធចែកចាយថាមពល USB ជាមួយ microcontrollers STM32"

FreeRTOS

FreeRTOS គឺជាប្រព័ន្ធប្រតិបត្តិការតាមពេលវេលាជាក់ស្តែង (RTOS) ដែលត្រូវបានគេស្គាល់យ៉ាងទូលំទូលាយសម្រាប់ microcontrollers និង microprocessors តូច។
វាផ្តល់នូវ APIs ជាច្រើនដើម្បីធ្វើការជាមួយភារកិច្ច ជួរ semaphores ជាដើម។ ក៏ដូចជាមុខងារកម្មវិធីកំណត់ពេលផងដែរ។
កម្មវិធីត្រូវបានកំណត់លើកិច្ចការជាច្រើនដែលបានកំណត់ក្នុងស្រទាប់ផ្សេងៗគ្នាដែលអនុវត្តមុខងារជាក់លាក់៖ នៅកម្រិតជង់ USB PD កិច្ចការដែលពាក់ព័ន្ធបំផុតគឺការរកឃើញខ្សែ Type-C និង Policy Engine បញ្ជាក់ពីការគ្រប់គ្រងម៉ាស៊ីន។
កិច្ចការបន្ថែមត្រូវបានបង្កើតឡើងដើម្បីគ្រប់គ្រងការជូនដំណឹងនៅកម្រិត DPM ។
ភារកិច្ចផ្សេងទៀតត្រូវបានកំណត់នៅក្នុងម៉ូឌុលត្រួតពិនិត្យថាមពលដើម្បីអនុវត្តយន្តការត្រួតពិនិត្យប្រព័ន្ធ។

ឧបករណ៍ប្រើប្រាស់

ថត Utilities មាន Embedded Tracer ចំណុចប្រទាក់ GUI ម៉ូនីទ័រថាមពល និងម៉ូឌុលចែករំលែកថាមពល។

ឧបករណ៍តាមដានដែលបានបង្កប់

ម៉ូឌុលនេះអនុវត្តដានដែលបានបង្កប់ដោយផ្អែកលើបណ្ណាល័យជង់ USB PD ។

តារាង 8 ។ ឧបករណ៍តាមដានដែលបានបង្កប់ files

File ឈ្មោះ ការពិពណ៌នា
tracer_emb.c / .h ការអនុវត្តឡូជីខល
tracer_emb_hw.c / .h ការគាំទ្រផ្នែករឹង

តំណភ្ជាប់ដែលទាក់ទង
UM2552៖ "ការគ្រប់គ្រងប្រព័ន្ធចែកចាយថាមពល USB ជាមួយឧបករណ៍បញ្ជាមីក្រូ STM32"
សូមចូលទៅកាន់ទំព័រវិគីសម្រាប់ការណែនាំ និងធនធានដែលពាក់ព័ន្ធទាក់ទងនឹងការផ្តល់ថាមពល USB

ចំណុចប្រទាក់ GUI

ម៉ូឌុលនេះរួមបញ្ចូល APIs ដែលទាក់ទងទៅនឹង 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 callback) ហើយជាលទ្ធផល ជូនដំណឹងអំពីទិន្នន័យដែលប្រមូលបាន (PM_NotifyData_Handler callback)។
    ទិន្នន័យដែលប្រមូលបានគឺ BUS voltage និងបច្ចុប្បន្ន; ពួកវាត្រូវបានរក្សាទុកទៅក្នុងវាលជាក់លាក់នៃ PM_Handle (រួចរាល់ដើម្បីចែករំលែកជាមួយផ្នែកផ្សេងទៀតនៃប្រព័ន្ធ)។
  • PM_Monitor_Task៖ សកម្មភាពដែលជំរុញដោយព្រឹត្តិការណ៍ជាមួយនឹងពេលវេលាដើម្បីអនុវត្តសកម្មភាពត្រួតពិនិត្យ និងថែទាំជាប្រចាំ ដើម្បីទទួលបានការជូនដំណឹងអំពីស្ថានភាព USB PD (ឧ. ភ្ជាប់/ផ្ដាច់ព្រឹត្តិការណ៍ កិច្ចសន្យាច្បាស់លាស់) ឬកំហុស (ឧ. ចរន្តលើស វ៉ុលលើស។tagង) ។

នៅពេលដំណើរការជាទៀងទាត់ វារំលឹកមុខងារខាងក្រៅ PM_CheckStatus_Handler ដើម្បីអនុវត្តការត្រួតពិនិត្យប្រព័ន្ធ៖ ក្នុងករណីមានកំហុស ព្រឹត្តិការណ៍កំហុសត្រូវបានបង្កើត។

ការចែករំលែកថាមពល

ម៉ូឌុលចែករំលែកថាមពលត្រូវបានរួមបញ្ចូលជាបណ្ណាល័យដែលបានចងក្រង និងមានក្បួនដោះស្រាយជាក់លាក់មួយដែលអាចទទួលបានការកំណត់ការបញ្ចូលការផ្គត់ផ្គង់ថាមពល គណនាអត្រាថាមពលដែលមានសម្រាប់ច្រកនីមួយៗ និងសម្រប PDOs យ៉ាងស្វាហាប់ដើម្បីបង្ហាញ នៅពេលការចរចាថាមពលចាប់ផ្តើម ឬព្រឹត្តិការណ៍ USB PD ទូទៅ។ កើតឡើង។

តារាង 10 ។ ការចែករំលែកថាមពល files

File ឈ្មោះ ការពិពណ៌នា
usbpd_power_sharing .h បឋមកថាម៉ូឌុលចែករំលែកថាមពល

បណ្ណាល័យ

បណ្ណាល័យដែលបានចងក្រងរួមបញ្ចូលក្នុងកញ្ចប់កម្មវិធីតំណាងឱ្យ ST IPs ពីរដែលមានដំណោះស្រាយ STEVAL-2STPD01៖

  • បណ្ណាល័យស្នូល USBPD (មាននៅក្នុងកញ្ចប់ STM32CubeG0): បង្ហោះមុខងារទាំងអស់ដែលទាក់ទងនឹង USB-PD Middleware stack USB-PD Policy engine និង Protocol layer។
    ផ្លូវ→ $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

កន្លែងធ្វើការ

ដើម្បីប្ដូរតាមបំណង និងបំបាត់កំហុសកម្មវិធី កញ្ចប់គាំទ្របរិស្ថានអភិវឌ្ឍន៍រួមបញ្ចូលគ្នាចំនួនបី (IDEs)៖ STMicroelectronics STM32CubeIDE, IAR EWARM និង Keil µVision / MDK-ARM ។
គម្រោង files មានទីតាំងនៅក្នុងថតកម្មវិធីដូចបានបង្ហាញខាងក្រោម។

កន្លែងធ្វើការ

STM32CubeIDE

STM32CubeIDE គឺជាវេទិកាអភិវឌ្ឍន៍ C/C++ កម្រិតខ្ពស់ជាមួយនឹងការកំណត់រចនាសម្ព័ន្ធគ្រឿងកុំព្យូទ័រ ការបង្កើតកូដ ការចងក្រងកូដ និងមុខងារបំបាត់កំហុសសម្រាប់ microcontrollers និង microprocessors STM32 ។
វាត្រូវបានផ្អែកលើ Eclipse®/CDT framework និង GCC toolchain សម្រាប់ការអភិវឌ្ឍន៍ និង GDB សម្រាប់ការកែកំហុស។
ដើម្បីបើកគម្រោង សូមជ្រើសរើសថត STM32CubeIDE ហើយបើក .project file.
ផ្លូវគឺ៖ $ROOT\Firmware\Projects\STEVAL 2STPD01\STM32CubeIDE

កន្លែងធ្វើការ

ដើម្បីបើកគម្រោង STM32CubeIDE អ្នកអាច៖

  1. បើកបរិស្ថាន ហើយជ្រើសរើសថតឯកសារគម្រោង STM32CubeIDE នៅក្នុង [File]>[ បើកគម្រោងពី File ប្រព័ន្ធ] ម៉ឺនុយ;
  2. ឬបើកគម្រោងដោយចុចពីរដងក្នុងថតឯកសារ៖ នៅពេលដែលគម្រោងត្រូវបាននាំចូលដោយជោគជ័យ ការជូនដំណឹងនឹងលេចឡើង។

នៅចុងបញ្ចប់នៃការនាំចូល សូមបិទផ្ទាំង [មជ្ឈមណ្ឌលព័ត៌មាន] ហើយពង្រីកផ្ទាំងកន្លែងធ្វើការទៅ view រចនាសម្ព័ន្ធថតពេញលេញ។ ក្នុងករណីទាំងពីរ IDE រួចរាល់។

កន្លែងធ្វើការ

ចំណាំ៖ គម្រោងនេះត្រូវបានសាកល្បងជាមួយ STM32CubeIDE v1.6.1 ។

EWARM - IAR

IAR Embedded Workbench គឺអនុលោមតាម Arm embedded application binary interface (EABI) និង Arm Cortex microcontroller software interface standard (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-party V1។
សមាសធាតុកម្មវិធីដែលបានផ្តល់ក្នុងកញ្ចប់នេះភ្ជាប់មកជាមួយកិច្ចព្រមព្រៀងអាជ្ញាប័ណ្ណផ្សេងៗគ្នាដូចដែលបានរាយក្នុងតារាងខាងក្រោម។

តារាង 11 ។ កិច្ចព្រមព្រៀងអាជ្ញាប័ណ្ណផ្នែកទន់

សមាសធាតុកម្មវិធី ម្ចាស់ អាជ្ញាប័ណ្ណ
Cortex®-M CMSIS អាម® BSD 3- ឃ្លា
FreeRTOS™ ខឺណែល។ រក្សាសិទ្ធិ(C) 2017 Amazon.com, Inc. ឬសាខារបស់វា។ អាជ្ញាប័ណ្ណប្រភពបើកចំហរបស់ MIT
STM32G0 HAL/LL APIs STMicroelectronics International N.V BSD 3- ឃ្លា
បណ្ណាល័យ USB-PD STM32 STMicroelectronics International N.V កិច្ចព្រមព្រៀងអាជ្ញាប័ណ្ណកម្មវិធី Ultimate Liberty (SLA0044)
STSW-2STPD01 STMicroelectronics International N.V កិច្ចព្រមព្រៀងអាជ្ញាប័ណ្ណកញ្ចប់កម្មវិធី (SLA0048)
STSW-2STPD01 BSP APIs STMicroelectronics International N.V កិច្ចព្រមព្រៀងអាជ្ញាប័ណ្ណកម្មវិធី Ultimate Liberty (SLA0044)
បណ្ណាល័យចែករំលែកថាមពល STSW-2STPD01 STMicroelectronics International N.V កិច្ចព្រមព្រៀងអាជ្ញាប័ណ្ណកម្មវិធី Ultimate Liberty (SLA0044)

ប្រវត្តិនៃការពិនិត្យឡើងវិញ

តារាង 12 ។ ប្រវត្តិនៃការកែប្រែឯកសារ

កាលបរិច្ឆេទ ការពិនិត្យឡើងវិញ ការផ្លាស់ប្តូរ
22-វិច្ឆិកា-2021 1 ការចេញផ្សាយដំបូង។

ការជូនដំណឹងសំខាន់ - សូមអានដោយយកចិត្តទុកដាក់ 

ក្រុមហ៊ុន STMicroelectronics NV និងក្រុមហ៊ុនបុត្រសម្ព័ន្ធរបស់ខ្លួន (អេស។ ភី។ ) រក្សាសិទ្ធិក្នុងការធ្វើការផ្លាស់ប្តូរការកែលម្អការផ្លាស់ប្តូរការកែលម្អនិងការកែលម្អផលិតផលអេសធីនិង / ឬចំពោះឯកសារនេះគ្រប់ពេលដោយគ្មានការជូនដំណឹងជាមុន។ អ្នកទិញគួរតែទទួលបានព័ត៌មានពាក់ព័ន្ធចុងក្រោយបំផុតលើផលិតផលអេសអិលមុនពេលធ្វើការបញ្ជាទិញ។ ផលិតផលអេសអិលត្រូវបានលក់ដោយអនុលោមតាមល័ក្ខខ័ណ្ឌរបស់ក្រុមហ៊ុនអេសអេសដែលត្រូវបានដាក់ឱ្យដំណើរការនៅពេលនៃការទទួលស្គាល់ការបញ្ជាទិញ។

អ្នកទិញទទួលខុសត្រូវទាំងស្រុងចំពោះជម្រើសការជ្រើសរើសនិងការប្រើប្រាស់ផលិតផលអេសធីនិងអេសអេសមិនទទួលខុសត្រូវចំពោះជំនួយក្នុងការដាក់ពាក្យសុំឬការរចនាផលិតផលរបស់អ្នកទិញឡើយ។

គ្មានអាជ្ញាប័ណ្ណ បង្ហាញ ឬបង្កប់ន័យចំពោះសិទ្ធិកម្មសិទ្ធិបញ្ញាណាមួយត្រូវបានផ្តល់ដោយ ST នៅទីនេះ។

ការលក់បន្តនៃផលិតផល ST ជាមួយនឹងបទប្បញ្ញត្តិខុសពីព័ត៌មានដែលមានចែងនៅទីនេះ នឹងត្រូវចាត់ទុកជាមោឃៈនូវការធានាណាមួយដែលផ្តល់ដោយ ST សម្រាប់ផលិតផលនោះ។

ST និងនិមិត្តសញ្ញា ST គឺជាពាណិជ្ជសញ្ញារបស់ ST ។ សម្រាប់ព័ត៌មានបន្ថែមអំពី

ពាណិជ្ជសញ្ញា ST សូមយោងទៅ www.st.com/trademarks ។ ឈ្មោះផលិតផល ឬសេវាកម្មផ្សេងទៀតទាំងអស់គឺជាកម្មសិទ្ធិរបស់ម្ចាស់រៀងៗខ្លួន។

ព័ត៌មាននៅក្នុងឯកសារនេះជំនួស និងជំនួសព័ត៌មានដែលបានផ្តល់ពីមុននៅក្នុងកំណែមុននៃឯកសារនេះ។

© 2021 STMicroelectronics - រក្សាសិទ្ធិគ្រប់យ៉ាង

ឯកសារ/ធនធាន

STMicroelectronics UM2882 C Power Delivery Kit Adapter Dual Port [pdf] សៀវភៅណែនាំអ្នកប្រើប្រាស់
កញ្ចប់អាដាប់ទ័រច្រកពីរ UM2882, ការផ្គត់ផ្គង់ថាមពល C កញ្ចប់អាដាប់ទ័រច្រកពីរ, កញ្ចប់អាដាប់ទ័រ

ឯកសារយោង

ទុកមតិយោបល់

អាសយដ្ឋានអ៊ីមែលរបស់អ្នកនឹងមិនត្រូវបានផ្សព្វផ្សាយទេ។ វាលដែលត្រូវការត្រូវបានសម្គាល់ *