新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > STM32F105 USB管腳Vbus的處理

STM32F105 USB管腳Vbus的處理

作者: 時間:2016-11-10 來源:網(wǎng)絡(luò) 收藏
對于STM32F105/107來說,為了監(jiān)測USB的連接問題,程序默認是通過Vbus管腳進行檢查的。但是Vbus管腳和UART1的TXD復(fù)用,導(dǎo)致我們在使用UART1發(fā)送數(shù)據(jù)時候,USB重啟的問題。為了解決這個問題,本人查了大量的資料和咨詢了不太靠譜的STM32技術(shù)支持,一直沒有得到解決的方法。

在STM32F105數(shù)據(jù)手冊上是這樣說的“如果另一個共享的外設(shè)要使用OTG_FS_VBUS引腳(PA9)或把它作為通用I/O口,必須激活PHY的斷電模式(清除OTG_FS_GCCFG寄存器的位16)。”這個位在程序中的定義如下:
  1. gccfg.d32 = 0;
  2. gccfg.b.vbussensingB = 1;
  3. gccfg.b.pwdn = 1;
復(fù)制代碼

位16即為pwdn,在程序中把這個為清零后USB根本不會去檢查USB枚舉,完全無法實現(xiàn)USB通信,所以根據(jù)手冊解決是不行的。

我們都知道STM32F103是通過在D+管腳上加入上拉電阻實現(xiàn)軟連接的,那么同樣在這個管腳上進行軟連接控制,初始化后直接把D+上拉,這樣USB檢查是沒有問題了,同時在通過UART1的TXD發(fā)送數(shù)據(jù)時,由于D+已經(jīng)被上拉,所以即使Vbus被拉低了但D+還是被拉高,過USB不會重啟,從而實現(xiàn)了USB和UART1的共用。


關(guān)鍵詞: STM32F105USB管腳Vbu

評論


技術(shù)專區(qū)

關(guān)閉