0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何創(chuàng)建 USB-PD 接收設(shè)備(上)

麥辣雞腿堡 ? 來(lái)源:意法半導(dǎo)體 ? 作者:意法半導(dǎo)體 ? 2023-01-31 16:02 ? 次閱讀

1創(chuàng)建項(xiàng)目

打開(kāi) STM32CubeIDE 并創(chuàng)建一個(gè)新的 STM32 項(xiàng)目。作為目標(biāo)選擇,從MCU/MPU 選擇器選項(xiàng)卡中選擇 STM32G071RB

單擊“下一步”,然后輸入您的項(xiàng)目名稱(chēng)。將其他字段保留為默認(rèn)值,然后單擊“完成”。

pYYBAGPYywGAD7ptAABXLr3jQBc055.png

2配置系統(tǒng)

40px-Clock.png

15分鐘

此時(shí),您的項(xiàng)目已創(chuàng)建,您只剩下 STM32CubeMX 視圖。在接下來(lái)的步驟中,我們配置項(xiàng)目所需的外圍設(shè)備和選項(xiàng)。

2.1配置UCPD外設(shè)↑

在Connectivity選項(xiàng)卡中,選擇UCPD1外設(shè)并在接收模式下啟用它。在NVIC 設(shè)置選項(xiàng)卡下,啟用 UCPD 全局中斷。

25px-Info_white.png

信息

您不需要在配置中包含“Dead Battery Signals”,因?yàn)樗?X-NUCLEO-SNK1M1 擴(kuò)展板上的 TCPP01 保護(hù)設(shè)備管理。

poYBAGPYywKAQhPpAACI8Yb14SM247.png

DMA 設(shè)置選項(xiàng)卡下,添加 UCPD1_RX 和 UCPD1_TX DMA 請(qǐng)求。

pYYBAGPYywOALFv-AAA6tlKSVBg124.png

2.2配置FreeRTOS中間件↑

在中間件部分,使用CMSIS_V1接口啟用FreeRTOS 。在Config Parameters選項(xiàng)卡下,將“TOTAL_HEAP_SIZE”更改為 7000 字節(jié)。

poYBAGPYywOAA_5wAADA-5dUZ1U449.png

然后,在Include Parameters選項(xiàng)卡下,啟用eTaskGetState包含定義。

pYYBAGPYywSAfh8FAACDekGm-8Y743.png

25px-Info_white.png

信息

如果G0 使用STM32G4 ,則需要將 LIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 設(shè)置為 3而不是 STM32CubeMX 的默認(rèn)值 5。在某些情況下,使用 STM32G4,將其設(shè)置為 5 會(huì)使代碼執(zhí)行卡在 vPortValidateInterruptPriority 函數(shù)中。

2.3配置USBPD中間件↑

在中間件部分,使用以下配置 啟用USBPD :

端口配置:端口 0:UCPD1

堆棧配置:PD3 全棧

定時(shí)器服務(wù)來(lái)源:TIM1

在PDO General Definitions選項(xiàng)卡下,驗(yàn)證以下配置:

端口 0 的接收器 PDO 數(shù)量:1

Port 0 Sink PDO 10x26019096(對(duì)應(yīng)一個(gè)5V/1.5A,雙重角色數(shù)據(jù)sink)

pYYBAGPYywWAUi1-AACg9Bh-9EU236.png

下表摘自USB 供電規(guī)范,表 6-14 固定電源 PDO - 接收器。該項(xiàng)目的使用值和相關(guān)解碼已添加到表中。

位描述使用價(jià)值解碼

B31..30固定供應(yīng)00b固定的

B29雙重角色權(quán)力0b不

B28更高的能力0b不

B27不受約束的權(quán)力0b不

B26USB 通信能力0b不

B25雙重角色數(shù)據(jù)1b是的

B24..23快速角色交換支持00b不

B22..20保留 - 必須設(shè)置為零0b不

B19..10以 50mV 為單位的電壓0001100100b5V

B9..0以 10mA 為單位的最大電流0010010110b1.5A

2.4配置ADC外設(shè)↑

為使供電堆棧正常工作,必須監(jiān)控 VBUS。為此,需要配置一個(gè) ADC 來(lái)測(cè)量 VBUS 電壓。

模擬部分,啟用ADC1外設(shè)通道 9(連接到引腳 PB1)。使用以下配置配置 ADC:

時(shí)鐘預(yù)分頻器:同步/4

連續(xù)轉(zhuǎn)換模式:?jiǎn)⒂?/p>

溢出行為:溢出數(shù)據(jù)被覆蓋

采樣時(shí)間公共 1 和 2:160.5 個(gè)周期

poYBAGPYywWAKGWiAAEDzOLZeu8490.png

然后,在GPIO 設(shè)置選項(xiàng)卡下,將 PB1 引腳重命名為VSENSE,這是該引腳的更具描述性的名稱(chēng),用于 VBUS 監(jiān)控:

poYBAGPYywaAC2LFAABfOnPscXg097.png

在User Constants選項(xiàng)卡下,添加名為VDDA_APPLI且值為3300的常量。

pYYBAGPYywaARO4OAABDkpzpZD0584.png

2.5配置GPIOs↑

對(duì)于 X-NUCLEO-SNK1M1 shield,需要兩個(gè)額外的 GPIO 設(shè)置(在 X-NUCLEO-USBPDM1 中沒(méi)有,因?yàn)樵O(shè)置是通過(guò)跳線(xiàn)強(qiáng)制設(shè)置的)。

PB6(DB_OUT用于禁用電池沒(méi)電)GPIO 輸出為高電平

PC10(為 TCPP01?M12 供電的VCC_OUT引腳)GPIO 輸出為高電平

要設(shè)置此配置,請(qǐng)?jiān)?Pinout視圖中左鍵單擊 PB6 和 PC10引腳,然后將引腳設(shè)置為GPIO_Output。在System Core部分的GPIO下,將兩個(gè)引腳的 GPIO 輸出電平更改為高電平,并為 PB6設(shè)置用戶(hù)標(biāo)簽 DB_OUT ,為PC10設(shè)置 VCC_OUT。

pYYBAGPYyweAJ_QtAAEfi299a3Q600.png

對(duì)于實(shí)際應(yīng)用,這些 GPIO 設(shè)置必須在 UCPD 初始化之后執(zhí)行。

2.6配置時(shí)鐘↑

在Clock Configuration主選項(xiàng)卡下,將系統(tǒng)時(shí)鐘 mux 更改為PLLCLK。它將HCLK時(shí)鐘設(shè)置為 64 MHz。

poYBAGPYywiAZcnGAAF3b8y-gYk081.png

25px-Info_white.png

信息

簡(jiǎn)單 USB-PD 接收器應(yīng)用程序的強(qiáng)制設(shè)置已完成。

強(qiáng)烈建議使用以下部分進(jìn)行調(diào)試

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    7879

    瀏覽量

    263728
  • STM32
    +關(guān)注

    關(guān)注

    2264

    文章

    10854

    瀏覽量

    354307
  • PD
    PD
    +關(guān)注

    關(guān)注

    4

    文章

    458

    瀏覽量

    43889
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    USB-PD適配器中常見(jiàn)的拓?fù)?/a>

    本文首先回顧了USB-PD適配器的發(fā)展,并和大家聊一聊USB-PD適配器中常見(jiàn)的拓?fù)洹=又亟榻BST在快充領(lǐng)域的最新產(chǎn)品和技術(shù)路線(xiàn)。最后我們會(huì)以demo板為例,跟大家探討一下USB-PD適配器的技術(shù)細(xì)節(jié)和設(shè)計(jì)時(shí)的注意事項(xiàng)。
    發(fā)表于 08-18 14:18 ?2816次閱讀

    應(yīng)用指南—如何使用DSLogic分析USB-PD信號(hào)?

    ,兩設(shè)備協(xié)商后 VBUS 的電壓會(huì)有所改變。 VBUS 電壓是 USB 總線(xiàn)上的電源電壓,通常為5V。在 USB-PD 中,它可以在5V、9V、12V、15V或20V之間變化,以提供不同功率級(jí)別的電力
    的頭像 發(fā)表于 09-04 14:42 ?1243次閱讀
    應(yīng)用指南—如何使用DSLogic分析<b class='flag-5'>USB-PD</b>信號(hào)?

    USB-Pd Type-C連接器是改變游戲規(guī)則的嗎?

    隨著今年早些時(shí)候推出USB-Pd規(guī)范,它已經(jīng)擴(kuò)展了USB電纜的功能,現(xiàn)在可以為各種設(shè)備提供高功率。提供5W~10W功率的現(xiàn)有解決方案現(xiàn)在可以利用這項(xiàng)技術(shù)進(jìn)行擴(kuò)展,最高可提供100W功率。這使OEM
    發(fā)表于 10-12 08:52

    USB-PD實(shí)現(xiàn)中大功率USB充電應(yīng)用

    伏特VBus電源線(xiàn),提高支援電壓等級(jí)至12或20伏特。 無(wú)庸置疑,USB-PD產(chǎn)品能否問(wèn)世的關(guān)鍵,就在于負(fù)責(zé)電源訊號(hào)通訊的USB VBus設(shè)計(jì)。新控制方案須達(dá)到夠高的頻率,以免影響傳統(tǒng)USB設(shè)
    發(fā)表于 06-04 05:00

    PD 快充是什么?一篇文章帶你了解USB-PD快充協(xié)議

    前言  說(shuō)起 USB-PD 協(xié)議,全名 USB Power Delivery ,可能對(duì)于很多人來(lái)說(shuō)還很陌生,但是目前越來(lái)越多的手機(jī)已經(jīng)開(kāi)始支持這一協(xié)議并用來(lái)做為設(shè)備快速充電的功能?! ∩杂辛私獾娜?/div>
    發(fā)表于 08-27 09:50

    目前主流的快充協(xié)議USB-PD介紹

    USB-PD 是由 USB-IF 組織制定的一種快速充電規(guī)范,是目前主流的快充協(xié)議之一。 USB-PD 快充協(xié)議是以 Type-C 接口輸出的,但不能說(shuō)有 Type-C 接口就一定支持 USB
    發(fā)表于 10-28 08:55

    基于USB Type-C的一種電源供電標(biāo)準(zhǔn)USB-PD

    USB-PD(Power Delivery)是基于USB Type-C的一種電源供電標(biāo)準(zhǔn),最大供電功率可達(dá)100瓦(W);隨著USB Type-C的普及,越來(lái)越多的設(shè)備(手機(jī)、平板、顯
    發(fā)表于 09-14 07:24

    請(qǐng)問(wèn)從USB-PD端口請(qǐng)求更高電壓最簡(jiǎn)單最快的方法是什么

    你好,我正在將 STM32G0B1RE 處理器用作 USB-PD SINK。請(qǐng)問(wèn)從USB-PD端口請(qǐng)求更高電壓(例如9V或12V)最簡(jiǎn)單最快的方法是什么(最好使用CubeMX)?任何人都可以分享最簡(jiǎn)單的代碼來(lái)從 USB-PD 請(qǐng)
    發(fā)表于 12-23 06:45

    致遠(yuǎn)電子發(fā)布USB-PD快充測(cè)試方案

    USB-PD(Power Delivery)是基于USB Type-C的供電標(biāo)準(zhǔn),最大功率可達(dá)100W。
    發(fā)表于 05-17 09:47 ?16次下載

    致遠(yuǎn)電子發(fā)布 USB-PD 快充測(cè)試方案

    USB-PD(Power Delivery)是基于USB Type-C的供電標(biāo)準(zhǔn),最大功率可達(dá)100W。雖然USB-PD快充越來(lái)越熱,但行業(yè)內(nèi)并沒(méi)有針對(duì)快充的測(cè)試工具,ZLG致遠(yuǎn)電子正式發(fā)布U
    發(fā)表于 05-17 18:10 ?4486次閱讀
    致遠(yuǎn)電子發(fā)布 <b class='flag-5'>USB-PD</b> 快充測(cè)試方案

    什么是USB-PD?

    文章來(lái)源于:線(xiàn)纜小編TypeC情報(bào)中心 我們可以通過(guò)多種方式為手機(jī)充電,USB-PD是其中之一。實(shí)際,目前所有高端的Android手機(jī)都開(kāi)始使用這種快速充電技術(shù),最近華為的MATE30系列和小米
    的頭像 發(fā)表于 10-11 09:40 ?3.6w次閱讀
    什么是<b class='flag-5'>USB-PD</b>?

    AN5418_使用STM32CubeMX構(gòu)建一個(gè)簡(jiǎn)單的USB-PD接收器應(yīng)用程序

    AN5418_使用STM32CubeMX構(gòu)建一個(gè)簡(jiǎn)單的USB-PD接收器應(yīng)用程序
    發(fā)表于 11-21 08:11 ?0次下載
    AN5418_使用STM32CubeMX構(gòu)建一個(gè)簡(jiǎn)單的<b class='flag-5'>USB-PD</b><b class='flag-5'>接收</b>器應(yīng)用程序

    如何使用STM32CubeMX構(gòu)建簡(jiǎn)單的USB-PD接收器應(yīng)用程序

    如何使用STM32CubeMX構(gòu)建簡(jiǎn)單的USB-PD接收器應(yīng)用程序
    發(fā)表于 11-21 17:07 ?8次下載
    如何使用STM32CubeMX構(gòu)建簡(jiǎn)單的<b class='flag-5'>USB-PD</b><b class='flag-5'>接收</b>器應(yīng)用程序

    如何使用DSLogic分析USB-PD信號(hào)?

    一文檔介紹本文將一步步介紹如何使用DSLogic邏輯分析儀采集和分析USB-PD信號(hào)。此次將演示使用快充充電器給一臺(tái)安卓手機(jī)充電。二需要測(cè)量哪幾個(gè)信號(hào)邏輯分析儀需要測(cè)量CC1信號(hào),兩設(shè)備協(xié)商后
    的頭像 發(fā)表于 01-12 14:09 ?983次閱讀
    如何使用DSLogic分析<b class='flag-5'>USB-PD</b>信號(hào)?

    USB Type-C與USB-PD技術(shù)對(duì)比

    本篇文章主要詳述 24P、16P 與 6P USB-TypeC接口的引腳定義,以及USB-PD、USB接口類(lèi)型,以便廣大讀者在進(jìn)行硬件設(shè)計(jì)時(shí)提供參考依據(jù)。
    發(fā)表于 01-26 12:23 ?2491次閱讀
    <b class='flag-5'>USB</b> Type-C與<b class='flag-5'>USB-PD</b>技術(shù)對(duì)比