01、基礎問題
1.1、芯片資料介面

?
RTL8201E(L)是一種單芯片/單埠快速以太網物理接收器,支持MII介面,RMII介面,SNI介面,
MII介面和RMII介面切換在8.1.1章節有講到,如下圖:
![]()
?
選擇MII介面,把COL/SNI腳拉低,
RTL8201E的框圖如下

?
和MCU連接的系統框圖如下:

?
①RJ45也就是網口,就是我們常見的網口,如下圖:

?
②magnetics,直譯磁性元件,這里的通常叫法為:網路變壓器,網路變壓器又名網路隔離變壓器、以太網變壓器、網路濾波器,主要有信號傳輸、阻抗匹配、波形修復、信號雜波抑制和高電壓隔離等作用,如下圖

?
③PHY芯片,中文可稱之為埠物理層,PHY連接一個資料鏈路層的設備(MAC)到一個物理媒介,如光纖、銅纜線或網線等,也就是本文重點講解的內容,如下圖

?
④MAC部分,主要是STM32的ETH外設部分,這方面之前的文章已經講解過了

?
涉及到的文章有《STM32網路之SMI介面》《STM32網路之MII和RMII介面》《STM32網路電路設計》《STM32網路之MAC控制器》《STM32網路之DMA控制器》《STM32網路之中斷》,
1.2、芯片地址
MCU如何選擇PHY芯片的地址,參看芯片的SMI介面
RTL8201的PHY地址經過兩個管腳配置的

?
在這里我們看出,這兩個管腳和LED燈的管腳是復用的

?
為了減少RTL8201EL的引腳數,LED引腳和PHY地址引腳復用,額外的捆綁考慮和LED使用必須被考慮,為了避免爭用,具體的來說,當LED的輸出被直接用來驅動LED時,每一個輸出驅動的活躍狀態依賴于相應的PHAD輸入在上電和復位采樣的邏輯電平,例如,如圖6(左側)顯示,如果一個給定的輸入電阻PHYAD拉高,那么相應的輸出將被配置為低電平驅動,在右邊,我們可以看到,如果一個給定的輸入電阻拉低PHYAD然后相應的輸出將被配置為一個高電平驅動,PHY地址配置腳不應該直接和VCC或GND相連,但是一個電阻(比如5.1KΩ)拉高或拉低,如果沒有LED指示燈,LED的路徑組件(LED+ 510Ω)可以被洗掉,

?
查看PCB得知,我們的控制卡PHY的地址是0
1.3、時鐘源的選擇

?
CKXTAL2 25MHz晶振輸出(25MHzCrystal Output):該引腳提供25MHz晶振輸出,當X1用一個外部的25MHz振蕩器驅動時該引腳必須懸空,
CKXTAL1 25MHz晶振輸入(25MHzCrystalInput):該引腳提供25MHz晶振輸入,如果使用一個25MHz的振蕩器,連接X1到振蕩器的輸出,參見9.3節對時鐘源的說明,

?
我們使用MCU的MCO1提供時鐘,查看電路圖,X2是懸空的,
備注:
如果使用25MHz無源晶振,兩個腳都需要連接,和MCU的無源晶振連接相同,關于晶振方面知識,可以參考《晶振原理講解》,
02、暫存器
PHY暫存器是由IEEE802.3定義的,一般通過SMI對PHY進行管理和控制,也就是讀寫PHY內部暫存器,PHY暫存器的地址空間為5位,可以定義0~31共32個暫存器,IEEE802.3定義了0~15這16個暫存器的功能,16~31暫存器由芯片制造商自由定義,
暫存器0、暫存器1和暫存器15講解以及IEEE802.3官方檔案,請看《PHY暫存器》,
自定義暫存器16
獲取PHY芯片的鏈接速度
ST官方庫檔案的驅動在stm32f2x7_eth_conf.h最后部分

?
ST官方使用的是DP83848芯片,暫存器16可以用來獲取芯片的速度,這個暫存器就是DP83848芯片廠家自定義的暫存器,所以在移植STM32官方代碼時注意這個問題,
我們使用的RTL8201芯片也是并不是這樣的
暫存器16 Nway設定暫存器

?
翻譯成中文如下
|
Address |
Name |
Decription |
|
15~11 |
保留 |
Realtek測驗模式內部使用 未經Realtek批準,請勿更改此欄位, |
|
10 |
Testfun |
為1時,自送協商內部加速定時器 |
|
9 |
NWLPBK |
為1時,設定NWay為回送模式 |
|
8~3 |
保留 |
|
|
2 |
FLAGABD |
為1時,自動協商進入性能檢測狀態 |
|
1 |
FLAGPDF |
為1時,自動協商遭遇硬性檢測故障情況 |
|
0 |
FLAGLSC |
為1時,自動協商進入連接狀態檢查 |
其他暫存器并非必須的暫存器,重要的暫存器0和暫存器1已經在《PHY暫存器》講解過了,
RTL8201資料下載:
鏈接:https://pan.baidu.com/s/1hKQcp9KCyICbTiZRANTiZA
提取碼:wkr1
硬體原理圖和PCB開源地址:
https://github.com/strongercjd/STM32F207VCT6
點擊查看本文所在的專輯,STM32F207網路開發
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/278338.html
標籤:其他
上一篇:非常實用的 Shell 腳本
