دفترچه راهنمای کاربر STM32 USB Type-C برای انتقال برق

منبع تغذیه STM32 USB نوع C

مشخصات:

  • مدل: TN1592
  • بازبینی: 1
  • تاریخ: ژوئن 2025
  • سازنده: STMicroelectronics

اطلاعات محصول:

ماژول کنترل و حفاظت تحویل توان STM32
ویژگی‌های پیشرفته‌ای برای مدیریت تحویل توان USB (PD) ارائه می‌دهد و
سناریوهای شارژ. از استانداردها و ویژگی‌های مختلفی پشتیبانی می‌کند
انتقال برق کارآمد و انتقال داده از طریق USB را فعال کنید
اتصالات

دستورالعمل استفاده از محصول:

ویژگی‌های انتقال داده:

این محصول از ویژگی‌های انتقال داده برای کارایی بهتر پشتیبانی می‌کند.
ارتباط از طریق اتصالات USB.

کاربرد ماژول VDM UCPD:

ماژول VDM UCPD کاربردهای عملی برای مدیریت ارائه می‌دهد.
جلدtagپارامترهای e و جریان از طریق اتصالات USB.

پیکربندی STM32CubeMX:

پیکربندی STM32CubeMX با پارامترهای خاص موجود در
مستندات، از جمله یک جدول مرجع سریع در AN5418.

حداکثر جریان خروجی:

حداکثر جریان خروجی رابط USB را می‌توان در ... یافت.
مشخصات محصول

حالت دو نقش:

ویژگی پورت دوگانه (DRP) به محصول اجازه می‌دهد تا به عنوان یک
منبع تغذیه یا سینک، که معمولاً در دستگاه‌های باتری‌دار استفاده می‌شود.

سوالات متداول:

س: آیا هنگام استفاده از X-NUCLEO-SNK1M1 به X-CUBE-TCPP نیاز است؟
سپر؟

الف) X-CUBE-TCPP می‌تواند به صورت اختیاری با X-NUCLEO-SNK1M1 استفاده شود.
سپر

س: آیا مسیرهای CC1 و CC2 باید سیگنال‌های ۹۰ اهمی باشند؟

الف) در بردهای مدار چاپی USB، خطوط داده USB (D+ و D-) به صورت 90 اهم مسیریابی می‌شوند.
سیگنال‌های تفاضلی، مسیرهای CC1 و CC2 ممکن است سیگنال یکسانی را دنبال کنند
الزامات

"`

TN1592
یادداشت فنی
سوالات متداول منبع تغذیه STM32 USB Type-C®
مقدمه
این سند شامل فهرستی از سوالات متداول (FAQ) در مورد STM32 USB Type-C® و منبع تغذیه است.

TN1592 – ویرایش ۱ – ژوئن ۲۰۲۵ برای اطلاعات بیشتر، با دفتر فروش محلی STMicroelectronics تماس بگیرید.

www.st.com

TN1592
انتقال برق از طریق پورت USB Type-C®

1

انتقال برق از طریق پورت USB Type-C®

1.1

آیا می‌توان از USB Type-C® PD برای انتقال داده استفاده کرد؟ (از USB پرسرعت استفاده نمی‌شود)

ویژگی‌های انتقال داده)

اگرچه خود پورت USB Type-C® PD برای انتقال داده با سرعت بالا طراحی نشده است، اما می‌تواند با پروتکل‌های دیگر و حالت‌های جایگزین مورد استفاده قرار گیرد و انتقال داده‌های اولیه را مدیریت کند.

1.2

کاربرد عملی ماژول VDM UCPD چیست؟

پیام‌های تعریف‌شده توسط فروشنده (VDM) در USB Type-C® Power Delivery، مکانیزمی انعطاف‌پذیر برای گسترش عملکرد USB Type-C® PD فراتر از مذاکره استاندارد برق ارائه می‌دهند. VDMها امکان شناسایی دستگاه، حالت‌های جایگزین، به‌روزرسانی‌های میان‌افزار، دستورات سفارشی و اشکال‌زدایی را فراهم می‌کنند. با پیاده‌سازی VDMها، فروشندگان می‌توانند ویژگی‌ها و پروتکل‌های اختصاصی ایجاد کنند و در عین حال سازگاری با مشخصات USB Type-C® PD را حفظ کنند.

1.3

STM32CubeMX باید با پارامترهای خاصی پیکربندی شود، که در اینجا آمده است

آنها در دسترس هستند؟

آخرین به‌روزرسانی، اطلاعات نمایش داده شده را کاربرپسندتر کرده است، اکنون رابط کاربری به سادگی حجم را درخواست می‌کندtage و جریان مورد نظر. با این حال، این پارامترها را می‌توان در مستندات یافت، می‌توانید یک جدول مرجع سریع در AN5418 مشاهده کنید.

شکل ۱. جزئیات مشخصات (جدول ۶-۱۴ در مشخصات تحویل توان باس سریال جهانی)

شکل ۲ مقدار اعمال شده 2x0 را توضیح می‌دهد.
TN1592 – ویرایش ۱

صفحه 2/14

شکل ۲. رمزگشایی دقیق PDO

TN1592
انتقال برق از طریق پورت USB Type-C®

برای جزئیات بیشتر در مورد تعریف PDO، به بخش POWER_IF در UM2552 مراجعه کنید.

1.4

حداکثر جریان خروجی رابط USB چقدر است؟

حداکثر جریان خروجی مجاز توسط استاندارد USB Type-C® PD با کابل مخصوص 5 آمپر، 5 آمپر است. بدون کابل مخصوص، حداکثر جریان خروجی 3 آمپر است.

1.5

آیا این «حالت دوگانه» به معنای توانایی تأمین برق و شارژ در ... است؟

معکوس؟

بله، DRP (پورت نقش دوگانه) می‌تواند به عنوان منبع تغذیه (sink) یا منبع تغذیه (source) استفاده شود. این روش معمولاً در دستگاه‌های باتری‌دار استفاده می‌شود.

TN1592 – ویرایش ۱

صفحه 3/14

TN1592
کنترل کننده و حفاظت از تحویل توان STM32

2

کنترل کننده و حفاظت از تحویل توان STM32

2.1

آیا MCU فقط از استاندارد PD پشتیبانی می‌کند یا QC را هم پشتیبانی می‌کند؟

میکروکنترلرهای STM32 در درجه اول از استاندارد USB Power Delivery (PD) پشتیبانی می‌کنند، که یک پروتکل انعطاف‌پذیر و پرکاربرد برای تحویل برق از طریق اتصالات USB Type-C® است. پشتیبانی بومی برای شارژ سریع (QC) توسط میکروکنترلرهای STM32 یا پشته USB PD از STMicroelectronics ارائه نمی‌شود. در صورت نیاز به پشتیبانی از شارژ سریع، باید از یک آی‌سی کنترلر QC اختصاصی با میکروکنترلر STM32 استفاده شود.

2.2

آیا پیاده‌سازی یک الگوریتم اصلاح همزمان در ... امکان‌پذیر است؟

آیا می‌تواند چندین خروجی و نقش کنترل‌کننده را مدیریت کند؟

پیاده‌سازی یک الگوریتم یکسوسازی همزمان با چندین خروجی و یک نقش کنترل‌کننده با میکروکنترلرهای STM32 امکان‌پذیر است. با پیکربندی لوازم جانبی PWM و ADC و توسعه یک الگوریتم کنترل، می‌توان به تبدیل توان کارآمد دست یافت و چندین خروجی را مدیریت کرد. علاوه بر این، با استفاده از پروتکل‌های ارتباطی مانند I2C یا SPI، عملکرد چندین دستگاه را در یک پیکربندی کنترل‌کننده-هدف هماهنگ کنید. مانند مثالampمثلاً، STEVAL-2STPD01 با یک STM32G071RBT6 که دو کنترلر UCPD را در خود جای داده است، می‌تواند دو پورت تحویل توان Type-C با توان 60 وات را مدیریت کند.

2.3

آیا TCPP برای VBUS > 20 V وجود دارد؟ آیا این محصولات برای EPR نیز کاربرد دارند؟

سری TCPP0 تا 20 ولت VBUS vol رتبه بندی شده استtagSPR (محدوده توان استاندارد).

2.4

کدام سری از میکروکنترلرهای STM32 از USB Type-C® PD پشتیبانی می‌کنند؟

دستگاه جانبی UCPD برای مدیریت USB Type-C® PD روی سری‌های STM32 زیر تعبیه شده است: STM32G0، STM32G4، STM32L5، STM32U5، STM32H5، STM32H7R/S، STM32N6 و STM32MP2. این دستگاه در زمان نوشتن سند، ۹۶۱ P/N می‌دهد.

2.5

چگونه میکروکنترلر STM32 را طوری تنظیم کنیم که به عنوان یک دستگاه سریال USB با پیروی از USB CDC کار کند؟

آیا همین روش یا روش مشابه به من کمک می‌کند بدون کدنویسی بروم؟

ارتباط از طریق راهکار USB توسط real ex پشتیبانی می‌شود.ampکمبود ابزارهای کشف یا ارزیابی از جمله کتابخانه‌های جامع نرم‌افزار آزاد و موارد مشابهampفایل‌های کمتر با بسته MCU موجود است. مولد کد در دسترس نیست.

2.6

آیا می‌توان داده‌های PD را به صورت پویا در زمان اجرای نرم‌افزار تغییر داد؟

جلدtagو تقاضاها/قابلیت‌های فعلی، مصرف‌کننده/ارائه‌دهنده و غیره؟

به لطف USB Type-C® PD، می‌توان به صورت پویا نقش برق (مصرف‌کننده - SINK یا ارائه‌دهنده - SOURCE)، تقاضای برق (شی داده برق) و نقش داده (میزبان یا دستگاه) را تغییر داد. این انعطاف‌پذیری در ویدیوی دو نقش داده و برق USB STM32H7RS نشان داده شده است.

2.7

آیا می‌توان از استاندارد USB2.0 و Power Delivery (PD) برای ... استفاده کرد؟

بیش از ۵۰۰ میلی‌آمپر دریافت می‌کنید؟

USB Type-C® PD قابلیت‌های شارژ پرقدرت و سریع را برای دستگاه‌های USB مستقل از انتقال داده فراهم می‌کند. بنابراین، می‌توان هنگام انتقال داده در USB 500.x و 2.x، بیش از 3 میلی‌آمپر جریان دریافت کرد.

2.8

آیا امکان خواندن اطلاعات روی دستگاه منبع یا سینک را داریم؟

مانند PID/UID دستگاه USB؟

USB PD از تبادل انواع مختلف پیام‌ها، از جمله پیام‌های توسعه‌یافته که می‌توانند اطلاعات دقیقی از سازنده را در خود جای دهند، پشتیبانی می‌کند. رابط برنامه‌نویسی کاربردی USBPD_PE_SendExtendedMessage برای تسهیل این ارتباط طراحی شده است و به دستگاه‌ها اجازه می‌دهد داده‌هایی مانند نام سازنده، نام محصول، شماره سریال، نسخه میان‌افزار و سایر اطلاعات سفارشی تعریف‌شده توسط سازنده را درخواست و دریافت کنند.

TN1592 – ویرایش ۱

صفحه 4/14

2.9 2.10 2.11 2.12 2.13
2.14
2.15 2.16 2.17

TN1592
کنترل کننده و حفاظت از تحویل توان STM32
هنگام استفاده از شیلد X-NUCLEO-SNK1M1 که شامل TCPP01-M12 است، آیا باید از X-CUBE-TCPP نیز استفاده شود؟ یا در این مورد X-CUBE-TCPP اختیاری است؟
برای شروع راهکار USB Type-C® PD در حالت SINK، X-CUBE-TCPP برای سهولت در پیاده‌سازی توصیه می‌شود زیرا راهکار STM32 USB Type-C® PD نیاز به مدیریت دارد. TCPP01-M12 حفاظت بهینه مرتبط است.
در بردهای مدار چاپی USB، خطوط داده USB (D+ و D-) به صورت سیگنال‌های تفاضلی ۹۰ اهمی مسیریابی می‌شوند. آیا مسیرهای CC90 و CC1 نیز باید سیگنال‌های ۹۰ اهمی باشند؟
خطوط CC خطوط تک سر با ارتباط فرکانس پایین 300 کیلوبیت بر ثانیه هستند. امپدانس مشخصه حیاتی نیست.
آیا TCPP می‌تواند از D+ و D- محافظت کند؟
TCPP برای محافظت از خطوط D+/- سازگار نیست. برای محافظت از خطوط D+/-، محافظ‌های ESD USBLC6-2 یا محافظ‌های ESD ECMF2-40A100N6 + فیلتر حالت مشترک در صورت وجود فرکانس‌های رادیویی در سیستم توصیه می‌شود.
آیا درایور HAL یا رجیستر کپسوله شده است؟
راننده HAL است.
چگونه می‌توانم بدون نوشتن کد، مطمئن شوم که STM32 مذاکره در مورد توان و مدیریت جریان را در پروتکل PD به درستی انجام می‌دهد؟
گام اول می‌تواند مجموعه‌ای از آزمایش‌های میدانی برای قابلیت همکاری با استفاده از دستگاه‌های موجود در بازار باشد. برای درک رفتار راه‌حل، STM32CubeMonUCPD امکان نظارت و پیکربندی برنامه‌های STM32 USB Type-C® و Power Delivery را فراهم می‌کند. گام دوم می‌تواند صدور گواهینامه با برنامه انطباق USB-IF (انجمن پیاده‌سازی USB) برای دریافت شماره TID (شناسایی تست) رسمی باشد. این کار را می‌توان در یک کارگاه انطباق تحت حمایت USB-IF یا در یک آزمایشگاه تست مستقل مجاز انجام داد. کد تولید شده توسط X-CUBE-TCPP آماده صدور گواهینامه است و راه‌حل‌های موجود در برد Nucleo/Discovery/Evaluation قبلاً گواهینامه دریافت کرده‌اند.
چگونه می‌توان عملکرد OVP برای محافظت از پورت Type-C را پیاده‌سازی کرد؟ آیا می‌توان حاشیه خطا را در محدوده ۸٪ تنظیم کرد؟
آستانه OVP توسط یک مقدار حجمی تنظیم می‌شود.tagپل تقسیم‌کننده الکترونیکی متصل به یک مقایسه‌کننده با مقدار شکاف باند ثابت. ورودی مقایسه‌کننده در TCPP01-M12، VBUS_CTRL و در TCPP03-M20، Vsense است. آستانه OVP VBUS voltage می‌تواند با توجه به حجم، HW تغییر کند.tagنسبت تقسیم کننده. با این حال، توصیه می‌شود از نسبت تقسیم کننده ارائه شده در X-NUCLEO-SNK1M1 یا X-NUCLEO-DRP1M1 مطابق با حداکثر حجم هدف استفاده شود.tage.
آیا میزان باز بودن (یا پذیرا بودن) بالاست؟ آیا می‌توان برخی از وظایف خاص را سفارشی‌سازی کرد؟
پشته USB Type-C® PD باز نیست. با این حال، می‌توان تمام ورودی‌های آن و تعامل با راه‌حل را سفارشی کرد. همچنین، می‌توانید به دفترچه راهنمای مرجع STM32 که برای بررسی رابط UCPD استفاده می‌شود، مراجعه کنید.
در طراحی مدار حفاظت پورت به چه نکاتی باید توجه کنیم؟
آی‌سی TCPP باید نزدیک کانکتور Type-C قرار گیرد. توصیه‌های شماتیک در دفترچه‌های راهنمای کاربران X-NUCLEO-SNK1M1، X-NUCLEO-SRC1M1 و X-NUCLEO-DRP1M1 ذکر شده است. برای اطمینان از استحکام خوب ESD، توصیه می‌کنم نگاهی به نکات چیدمان ESD در یادداشت کاربردی بیندازید.
این روزها، تعداد زیادی آی‌سی تک تراشه‌ای از چین معرفی می‌شوند. مزایای خاص آنها چیست؟tagدلایل استفاده از STM32 چیست؟
مزایای کلیدی این راهکار هنگام اضافه کردن یک کانکتور Type-C PD به یک راهکار STM32 موجود آشکار می‌شود. در این صورت، به دلیل حجم کم، مقرون به صرفه است.tagکنترلر UCPD روی STM32 تعبیه شده است و ولتاژ بالایی دارد.tagکنترل‌ها/حفاظت‌های الکترونیکی توسط TCPP انجام می‌شود.

TN1592 – ویرایش ۱

صفحه 5/14

2.18 2.19 2.20

TN1592
کنترل کننده و حفاظت از تحویل توان STM32
آیا ST راهکار پیشنهادی برای منبع تغذیه و STM32-UCPD ارائه داده است؟
آنها یک دوست پسر سابق کامل هستندampبا یک آداپتور دو پورت USB Type-C Power Delivery مبتنی بر مبدل باک قابل برنامه‌ریزی STPD01. از STM32G071RBT6 و دو TCPP02-M18 برای پشتیبانی از دو رگولاتور باک قابل برنامه‌ریزی STPD01PUR استفاده شده است.
راه حل مناسب برای سینک (مانیتور کلاس ۶۰ وات)، ورودی و برق HDMI یا DP برای کاربرد چیست؟
STM32-UCPD + TCPP01-M12 می‌تواند از توان مصرفی تا 60 وات پشتیبانی کند. برای HDMI یا DP، به یک حالت جایگزین نیاز است و می‌توان آن را توسط نرم‌افزار انجام داد.
آیا این محصولات به این معنی است که از نظر مشخصات استاندارد USB-IF و انطباق با USB آزمایش شده‌اند؟
کد تولید شده یا پیشنهاد شده در بسته میان‌افزار، آزمایش شده و برای برخی از پیکربندی‌های کلیدی سخت‌افزار رسماً تأیید شده است. مانند مثالampعلاوه بر NUCLEO، X-NUCLEO-SNK1M1، X-NUCLEO-SRC1M1 و X-NUCLEO-DRP1M1 رسماً تأیید شده‌اند و شناسه‌های آزمایش USB-IF آنها عبارتند از: TID5205، TID6408 و TID7884.

TN1592 – ویرایش ۱

صفحه 6/14

TN1592
پیکربندی و کد برنامه

3

پیکربندی و کد برنامه

3.1

چطور میتونم یه PDO بسازم؟

ساخت یک شیء داده توان (PDO) در زمینه تحویل توان USB (PD) شامل تعریف قابلیت‌های توان یک منبع یا سینک USB PD است. در اینجا مراحل ایجاد و پیکربندی یک PDO آمده است:
۱. نوع PDO را مشخص کنید:

PDO با منبع تغذیه ثابت: یک ولتاژ ثابت را تعریف می‌کندtage و جریان منبع تغذیه باتری PDO: محدوده‌ای از ولتاژ را تعریف می‌کند.tagو حداکثر توان منبع تغذیه متغیر PDO: محدوده‌ای از ولتاژ را تعریف می‌کند.tagو حداکثر جریان منبع تغذیه قابل برنامه ریزی (PPS) APDO: امکان تنظیم ولتاژ قابل برنامه ریزی را فراهم می کندtage و جریان. ۲. پارامترها را تعریف کنید:

جلدtagه: جلدtagسطحی که PDO ارائه می‌دهد یا درخواست می‌کند
جریان / توان: جریان (برای PDO های ثابت و متغیر) یا توان (برای PDO های باتری دار) که PDO ارائه یا درخواست می‌کند.
۳. از رابط کاربری گرافیکی STM3CubeMonUCPD استفاده کنید:

مرحله ۱: مطمئن شوید که آخرین نسخه برنامه STM1CubeMonUCPD را دارید. مرحله ۲: برد STM32G2-Disco خود را به دستگاه میزبان خود وصل کنید و برنامه را اجرا کنید.
برنامه STM32CubeMonitor-UCPD مرحله 3: برد خود را در برنامه انتخاب کنید مرحله 4: به صفحه "پیکربندی پورت" بروید و روی برگه "قابلیت‌های سینک" کلیک کنید تا موارد زیر را ببینید
لیست PDO فعلی مرحله 5: با دنبال کردن دستورالعمل‌ها، یک PDO موجود را تغییر دهید یا یک PDO جدید اضافه کنید. مرحله 6: برای ارسال لیست PDO به‌روزرسانی‌شده به برد خود، روی نماد «ارسال به هدف» کلیک کنید. مرحله 7: برای ذخیره لیست PDO به‌روزرسانی‌شده در برد خود، روی نماد «ذخیره همه در هدف» کلیک کنید. [*] در اینجا یک مثال آمده است.ampنحوه تعریف یک PDO با منبع تغذیه ثابت در کد:

/* یک PDO با تغذیه ثابت تعریف کنید */ uint32_t fixed_pdo = 0; fixed_pdo |= (voltagواحد حجم e_in_50mv << 10); // جلدtage در واحدهای ۵۰ میلی‌ولت fixed_pdo |= (max_current_in_50ma_units << 10); // حداکثر جریان در واحدهای ۱۰ میلی‌آمپر fixed_pdo |= (0 << 10); // نوع تغذیه ثابت

Exampپیکربندی le
برای یک PDO با تغذیه ثابت با ۵ ولت و ۳ آمپر:
content_copy uint32_t fixed_pdo = 0; fixed_pdo |= (100 << 10); // 5 ولت (100 * 50 میلی ولت) fixed_pdo |= (30 << 0); // 3 آمپر (30 * 10 میلی آمپر) fixed_pdo |= (1 << 31); // نوع تغذیه ثابت

ملاحظات اضافی:

·

انتخاب پویای PDO: شما می‌توانید به صورت پویا روش انتخاب PDO را در زمان اجرا با تغییر دادن

متغیر USED_PDO_SEL_METHOD در فایل usbpd_user_services.c file[*]

·

ارزیابی قابلیت‌ها: از توابعی مانند USBPD_DPM_SNK_EvaluateCapabilities برای ارزیابی استفاده کنید.

قابلیت‌های دریافتی و آماده‌سازی پیام درخواست[*].

ساخت یک PDO شامل تعریف حجم استtagپارامترهای e و جریان (یا توان) و پیکربندی آنها با استفاده از ابزارهایی مانند STM32CubeMonUCPD یا مستقیماً در کد. با دنبال کردن مراحل و مثالampبا این حال، شما می‌توانید به طور موثر PDO ها را برای برنامه‌های USB PD خود ایجاد و مدیریت کنید.

3.2

آیا تابعی برای طرح اولویت‌بندی با بیش از یک PD-sink وجود دارد؟

متصل؟

بله، تابعی وجود دارد که از طرح اولویت‌بندی در صورت اتصال بیش از یک PD-sink پشتیبانی می‌کند. این امر به ویژه در سناریوهایی که چندین دستگاه به یک منبع تغذیه متصل هستند، مفید است. توزیع برق باید بر اساس اولویت مدیریت شود.

TN1592 – ویرایش ۱

صفحه 7/14

TN1592
پیکربندی و کد برنامه

طرح اولویت‌بندی را می‌توان با استفاده از تابع USBPD_DPM_SNK_EvaluateCapabilities مدیریت کرد. این تابع، قابلیت‌های دریافتی از منبع PD را ارزیابی کرده و پیام درخواست را بر اساس الزامات و اولویت‌های سینک آماده می‌کند. هنگام مواجهه با چندین سینک، می‌توانید با اختصاص سطوح اولویت به هر سینک و اصلاح تابع USBPD_DPM_SNK_EvaluateCapabilities برای در نظر گرفتن این اولویت‌ها، یک طرح اولویت‌بندی پیاده‌سازی کنید.
content_copy uint32_t fixed_pdo = 0; fixed_pdo |= (100 << 10); // 5 ولت (100 * 50 میلی ولت) fixed_pdo |= (30 << 0); // 3 آمپر (30 * 10 میلی آمپر) fixed_pdo |= (1 << 31); // نوع تغذیه ثابت
/* تعریف یک PDO با منبع تغذیه ثابت */ uint32_t fixed_pdo = 0; fixed_pdo |= (voltagواحد حجم e_in_50mv << 10); // جلدtage در واحدهای ۵۰ میلی‌ولت fixed_pdo |= (max_current_in_50ma_units << 10); // حداکثر جریان در واحدهای ۱۰ میلی‌آمپر fixed_pdo |= (0 << 10); // نوع تغذیه ثابت

3.3

آیا استفاده از DMA به همراه LPUART برای رابط کاربری گرافیکی (GUI) الزامی است؟

بله، برقراری ارتباط از طریق راهکار ST-LINK الزامی است.

3.4

آیا تنظیم LPUART روی ۷ بیت برای طول کلمه صحیح است؟

بله، درست است.

3.5

در ابزار STM32CubeMX - یک کادر انتخاب «ذخیره توان غیرفعال» وجود دارد.

UCPD – غیرفعال کردن فعال کردن حالت آماده‌باش باتری. اگر این کادر انتخاب باشد، به چه معناست؟

فعال کردن؟

وقتی USB Type-C® به منبع تغذیه (SOURCE) متصل می‌شود، به یک مقاومت بالاکش (pull-up) متصل به ولتاژ ۳.۳ یا ۵.۰ ولت نیاز دارد. این مقاومت به عنوان یک مولد منبع جریان عمل می‌کند. این منبع جریان را می‌توان زمانی که از USB Type-C® PD استفاده نمی‌شود، غیرفعال کرد تا مصرف برق کاهش یابد.

3.6

آیا استفاده از FreeRTOS برای برنامه‌های STM32G0 و USB PD ضروری است؟

برنامه‌هایی برای non-FreeRTOS USB PD examples

استفاده از FreeRTOS برای برنامه‌های USB Power Delivery (USB PD) در میکروکنترلر STM32G0 اجباری نیست. می‌توانید USB PD را بدون RTOS با مدیریت رویدادها و ماشین‌های حالت در حلقه اصلی یا از طریق ایجاد وقفه در روال‌های سرویس پیاده‌سازی کنید. در حالی که درخواست‌هایی برای USB Power Delivery ex وجود داشته است.ampبدون RTOS. در حال حاضر هیچ سیستم عامل غیر RTOS وجود نداردample در دسترس است. اما برخی از AzureRTOS های سابقampاین ماژول‌ها برای سری‌های STM32U5 و H5 در دسترس هستند.

3.7

در نسخه آزمایشی STM32CubeMX که یک برنامه USB PD برای STM32G0 می‌سازد، HSI وجود دارد.

دقت قابل قبول برای کاربردهای USB PD؟ یا استفاده از HSE خارجی

کریستال اجباریه؟

HSI کلاک هسته را برای دستگاه جانبی UCPD فراهم می‌کند، بنابراین استفاده از HSE هیچ مزیتی ندارد. همچنین، STM32G0 از USB 2.0 بدون کریستال در حالت دستگاه پشتیبانی می‌کند، بنابراین HSE فقط در حالت میزبان USB 2.0 مورد نیاز است.

TN1592 – ویرایش ۱

صفحه 8/14

TN1592
پیکربندی و کد برنامه
شکل ۳. تنظیم مجدد UCPD و ساعت‌ها

3.8 3.9 3.10

آیا مستنداتی وجود دارد که بتوانم برای راه‌اندازی CubeMX همانطور که بعداً توضیح دادید، به آن مراجعه کنم؟
مستندات در لینک ویکی زیر موجود است.
آیا STM32CubeMonitor قابلیت مانیتورینگ بلادرنگ را دارد؟ آیا با اتصال STM32 و ST-LINK مانیتورینگ بلادرنگ امکان‌پذیر است؟
بله، STM32CubeMonitor می‌تواند با اتصال STM32 و ST-LINK مانیتورینگ واقعی را انجام دهد.
آیا VBUS جلد است؟tagتابع اندازه‌گیری جریان/الکترونیکی که روی صفحه مانیتور نشان داده می‌شود، به صورت پیش‌فرض و پایه روی بردهای دارای UCPD موجود است، یا اینکه این قابلیت از ویژگی‌های برد NUCLEO اضافه شده است؟
جلد دقیقtagاندازه‌گیری الکترونیکی به صورت بومی در دسترس است زیرا VBUS voltage برای USB Type-C® مورد نیاز است. اندازه‌گیری دقیق جریان می‌تواند توسط TCPP02-M18 / TCPP03-M20 به لطف سمت بالا انجام شود. ampهمچنین از تقویت‌کننده و مقاومت شنت برای محافظت در برابر جریان بیش از حد استفاده می‌شود.

TN1592 – ویرایش ۱

صفحه 9/14

TN1592
تولیدکننده کد برنامه

4

تولیدکننده کد برنامه

4.1

آیا CubeMX می‌تواند یک پروژه مبتنی بر AzureRTOS را با X-CUBE-TCPP تولید کند؟

آیا FreeRTOSTM هم به همین روش کار می‌کند؟ آیا می‌تواند کدی برای مدیریت USB PD تولید کند؟

بدون استفاده از FreeRTOSTM؟ آیا این مجموعه نرم‌افزاری برای اجرا به RTOS نیاز دارد؟

عمل می کند؟

STM32CubeMX به لطف بسته X-CUBE-TCPP با استفاده از RTOS موجود برای MCU، FreeRTOSTM (برای STM32G0 به عنوان مثال) کد تولید می‌کند.ample)، یا AzureRTOS (برای STM32H5 به عنوان مثالample)

4.2

آیا X-CUBE-TCPP می‌تواند برای پورت دوگانه Type-C PD مانند ... کد تولید کند؟

برد STSW-2STPD01؟

X-CUBE-TCPP می‌تواند فقط برای یک پورت کد تولید کند. برای انجام این کار برای دو پورت، باید دو پروژه جداگانه بدون همپوشانی روی منابع STM32 و با دو آدرس I2C برای TCPP02-M18 تولید و ادغام شوند. خوشبختانه، STSW-2STPD01 یک بسته نرم‌افزاری کامل برای دو پورت دارد. در این صورت نیازی به تولید کد نیست.

4.3

آیا این ابزار طراحی با همه میکروکنترلرهای دارای USB Type-C® کار می‌کند؟

بله، X-CUBE-TCPP با هر STM32 که UCPD را برای همه کیس‌های تغذیه (SINK / SOURCE / Dual Role) تعبیه کرده باشد، کار می‌کند. با هر STM32 برای منبع تغذیه 5 ولت Type-C نیز کار می‌کند.

TN1592 – ویرایش ۱

صفحه 10/14

تاریخچه تجدید نظر
تاریخ ۲۰-ژوئن-۲۰۲۵

جدول 1. تاریخچه بازنگری سند

تجدید نظر 1

انتشار اولیه

تغییرات

TN1592

TN1592 – ویرایش ۱

صفحه 11/14

TN1592
مطالب
مطالب
۱. انتقال برق از طریق USB Type-C® . ... . . . . . . . . . . . 1
۱.۲ کاربرد عملی ماژول VDM UCPD چیست؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ۲ ۱.۳ STM1.2CubeMX باید با پارامترهای خاصی پیکربندی شود، این پارامترها کجا قرار دارند؟
موجود است؟ . ...
۱.۴ حداکثر جریان خروجی رابط USB چقدر است؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ۳ ۱.۵ آیا این «حالت دوگانه» به معنای توانایی تأمین برق و شارژ معکوس است؟ . . . . . . . . ۳ ۲ کنترل‌کننده و محافظ تحویل توان STM1.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ۴ ۲.۱ آیا MCU فقط از استاندارد PD پشتیبانی می‌کند یا از QC نیز پشتیبانی می‌کند؟ . . . . . . . . . . . . . . . . . . ... . ... . ... . ... . ... . ... . ... . ... . 3 1.5 آیا می‌توان یک الگوریتم اصلاح همزمان را در بسته پیاده‌سازی کرد؟ آیا می‌توان
آیا چندین خروجی و نقش کنترل‌کننده را مدیریت می‌کند؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
۲.۳ آیا TCPP برای VBUS > 2.3 V وجود دارد؟ آیا این محصولات برای EPR کاربرد دارند؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . ۴
۲.۴ کدام سری از میکروکنترلرهای STM2.4 از USB Type-C® PD پشتیبانی می‌کنند؟ . . . . . . . . . . . . . . . . . . . . . . . . . ۴ ۲.۵ چگونه می‌توان کاری کرد که میکروکنترلر STM32 به عنوان یک دستگاه سریال USB با پیروی از USB CDC کار کند؟
کلاس؟ آیا همین روال یا روال مشابه به من کمک می‌کند بدون کدنویسی بروم؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
۲.۶ آیا می‌توان «داده‌های» PD را به صورت پویا در زمان اجرای نرم‌افزار تغییر داد؟ مثلاً voltagو تقاضاها/قابلیت‌های فعلی، مصرف‌کننده/ارائه‌دهنده و غیره؟ . . . . . . . . . . . . . . . . . . . . . . . . . 4
۲.۷ آیا می‌توان از استاندارد USB2.7 و منبع تغذیه (PD) برای دریافت جریان بیش از ۵۰۰ میلی‌آمپر استفاده کرد؟ . ...
۲.۸ آیا امکان خواندن اطلاعات مربوط به دستگاه منبع یا گیرنده مانند PID/UID دستگاه USB را داریم؟ . ...
۲.۹ هنگام استفاده از شیلد X-NUCLEO-SNK2.9M1 که شامل TCPP1-M01 است، آیا باید از X-CUBE-TCPP نیز استفاده شود؟ یا در این مورد X-CUBE-TCPP اختیاری است؟ . ...
۲.۱۰ در بردهای مدار چاپی USB، خطوط داده USB (D+ و D-) به صورت سیگنال‌های تفاضلی ۹۰ اهم مسیریابی می‌شوند. آیا مسیرهای CC2.10 و CC90 نیز باید سیگنال‌های ۹۰ اهم باشند؟ . ...
۲.۱۱ آیا TCPP می‌تواند از D+ و D- محافظت کند؟ . ... ۵ ۲.۱۳ چگونه می‌توانم مطمئن شوم که STM2.11 مذاکره برق و مدیریت جریان را مدیریت می‌کند؟
پروتکل PD را به درستی و بدون نوشتن کد انجام دهید؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
۲.۱۴ چگونه می‌توان تابع OVP مربوط به محافظت از پورت Type-C را پیاده‌سازی کرد؟ آیا می‌توان حاشیه خطا را در محدوده ۸٪ تنظیم کرد؟ . ...
۲.۱۵ آیا درجه باز بودن بالاست؟ آیا می‌توان برخی از وظایف خاص را سفارشی کرد؟ . . . . . . . . . . . . . . . . . . . . . ۵ ۲.۱۶ در طراحی مدار حفاظت پورت به چه نکاتی باید توجه کنیم؟ . . . . . . . . . . . . . . . ۵ ۲.۱۷ این روزها، تعداد زیادی آی‌سی تک تراشه‌ای از چین معرفی می‌شوند. موارد استفاده از آنها چیست؟
پیشرفت خاصtagدلایل استفاده از STM32 چیست؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
۲.۱۸ آیا ST راهکار پیشنهادی برای منبع تغذیه و STM2.18-UCPD ارائه داده است؟ ... ۶

TN1592 – ویرایش ۱

صفحه 12/14

TN1592
مطالب
۲.۱۹ راهکار مناسب برای یک سینک (مانیتور کلاس ۶۰ وات)، با ورودی و برق HDMI یا DP چیست؟ . ...
۲.۲۰ آیا این محصولات به این معنی است که از نظر مشخصات استاندارد USB-IF و انطباق با USB آزمایش شده‌اند؟ . ...
۳ پیکربندی و کد برنامه . ...
۳.۱ چگونه می‌توانم یک PDO بسازم؟ . ...
۳.۲ آیا تابعی برای طرح اولویت‌بندی با بیش از یک سینک PD متصل وجود دارد؟ ... . . . . . . 3.2
۳.۳ آیا استفاده از DMA به همراه LPUART برای رابط کاربری گرافیکی (GUI) الزامی است؟ . ...
۳.۴ آیا تنظیم ۷ بیت برای طول کلمه در LPUART صحیح است؟ . ...
۳.۵ در ابزار STM3.5CubeMX - یک کادر انتخاب وجود دارد «save power of non-active UCPD deactive dead battery pull-up». اگر این کادر انتخاب فعال باشد، به چه معناست؟ . . . . . . . . . . . . 32
۳.۶ آیا استفاده از FreeRTOS برای برنامه‌های STM3.6G32 و USB PD ضروری است؟ آیا برنامه‌ای برای USB PD غیر FreeRTOS دارید؟amples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
۳.۷ در نسخه آزمایشی STM3.7CubeMX که یک برنامه USB PD برای STM32G32 را می‌سازد، آیا دقت HSI برای برنامه‌های USB PD قابل قبول است؟ یا استفاده از کریستال HSE خارجی اجباری است؟ . ...
۳.۸ آیا مستنداتی وجود دارد که بتوانم برای راه‌اندازی CubeMX همانطور که بعداً توضیح دادید به آن مراجعه کنم؟ . ...
۳.۹ آیا STM3.9CubeMonitor قادر به نظارت بلادرنگ است؟ آیا نظارت بلادرنگ با اتصال STM32 و ST-LINK امکان‌پذیر است؟ . ...
۳.۱۰ آیا حجم VBUStagتابع اندازه‌گیری جریان/الکترونیکی که روی صفحه مانیتور نشان داده می‌شود، به صورت پیش‌فرض و پایه روی بردهای دارای UCPD موجود است، یا اینکه یکی از ویژگی‌های برد NUCLEO اضافه شده است؟ . ...
۴ تولیدکننده کد برنامه . ...
۴.۱ آیا CubeMX می‌تواند یک پروژه مبتنی بر AzureRTOS با X-CUBE-TCPP را به همان روشی که با FreeRTOSTM انجام می‌دهد، تولید کند؟ آیا می‌تواند کدی را تولید کند که USB PD را بدون استفاده از FreeRTOSTM مدیریت کند؟ آیا این مجموعه نرم‌افزاری برای کار به RTOS نیاز دارد؟ . . . . . . ۱۰
۴.۲ آیا X-CUBE-TCPP می‌تواند برای پورت دوگانه PD نوع C مانند برد STSW-4.2STPD2 کد تولید کند؟ . ...
۴.۳ آیا این ابزار طراحی با همه میکروکنترلرهای دارای USB Type-C® کار می‌کند؟ . . . . . . . . . . . . . . . . . 4.3
تاریخچه تجدید نظر. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11

TN1592 – ویرایش ۱

صفحه 13/14

TN1592
اطلاعیه مهم با دقت بخوانید STMicroelectronics NV و شرکت‌های تابعه آن ("ST") این حق را برای خود محفوظ می‌دارند که در هر زمان بدون اطلاع قبلی، تغییرات، اصلاحات، بهبودها، اصلاحات و بهبودهایی را در محصولات ST و/یا این سند ایجاد کنند. خریداران باید آخرین اطلاعات مربوط به محصولات ST را قبل از ثبت سفارش به دست آورند. محصولات ST طبق شرایط و ضوابط فروش ST در زمان تایید سفارش فروخته می شوند. خریدار تنها مسئول انتخاب، انتخاب و استفاده از محصولات ST است و ST هیچ مسئولیتی در قبال کمک برنامه یا طراحی محصولات خریداران نمی پذیرد. هیچ مجوز صریح یا ضمنی برای هیچ حق مالکیت معنوی توسط ST در اینجا اعطا نمی شود. فروش مجدد محصولات ST با مقرراتی متفاوت از اطلاعات مندرج در اینجا هرگونه ضمانت اعطایی توسط ST برای چنین محصولی را باطل می کند. ST و آرم ST علائم تجاری ST هستند. برای اطلاعات بیشتر در مورد علائم تجاری ST، به www.st.com/trademarks مراجعه کنید. سایر نام های محصول یا خدمات متعلق به صاحبان مربوطه می باشد. اطلاعات این سند جایگزین اطلاعاتی می شود که قبلاً در هر نسخه قبلی این سند ارائه شده است.
© 2025 STMicroelectronics کلیه حقوق محفوظ است

TN1592 – ویرایش ۱

صفحه 14/14

اسناد / منابع

منبع تغذیه ST STM32 USB Type-C [pdf] دفترچه راهنمای کاربر
TN1592، UM2552، STEVAL-2STPD01، تحویل برق USB نوع C در STM32، STM32، تحویل برق USB نوع C، تحویل برق نوع C، تحویل برق، تحویل

مراجع

نظر بدهید

آدرس ایمیل شما منتشر نخواهد شد. فیلدهای الزامی مشخص شده اند *