那些在LAN8720調(diào)試過程中踩過的坑,你是否遇到過?
[導(dǎo)讀]?▲點(diǎn)擊上方公眾號(hào)名片關(guān)注了解更多▲最近在調(diào)試一個(gè)型號(hào)為L(zhǎng)AN8720的以太網(wǎng)芯片,外圍電路其實(shí)很簡(jiǎn)單,但我們還是踩坑了。把其中比較重要的兩點(diǎn)分享給大家。首先簡(jiǎn)單介紹一下LAN8720這款芯片圖1這是一款封裝很小,支持RMII接口的10M/100M以太網(wǎng)PHY芯片,支持HP-Au...
最近在調(diào)試一個(gè)型號(hào)為LAN8720的以太網(wǎng)芯片,外圍電路其實(shí)很簡(jiǎn)單,但我們還是踩坑了。把其中比較重要的兩點(diǎn)分享給大家。
首先簡(jiǎn)單介紹一下LAN8720這款芯片
圖1這是一款封裝很小,支持RMII接口的10M/100M以太網(wǎng)PHY芯片,支持HP-Auto-MDIX自動(dòng)翻轉(zhuǎn)功能。
RMII?可能沒接觸過的小伙伴不知道是什么意思?簡(jiǎn)單來說,RMII是一種接口,它比MII接口有更少的I/O傳輸。在數(shù)據(jù)的收發(fā)上它比MII接口少了一半的信號(hào)線。
RMII所有的數(shù)據(jù)端口公用一個(gè)時(shí)鐘用于所有端口的收發(fā) ,這里就節(jié)省了不少的端口數(shù)目。RMII的一個(gè)端口要求7個(gè)數(shù)據(jù)線 ,比MII少了一半,所以交換機(jī)能夠接入多一倍數(shù)據(jù)的端口。
功能框圖如下
圖2??功能框圖
支持全雙工和半雙工模式
有兩個(gè)狀態(tài)的LED燈輸出可使用25MHz的晶振來降低成本
我們測(cè)試發(fā)現(xiàn)的問題有兩個(gè):1.REFCLKO引腳功能配置2.1.2V內(nèi)部穩(wěn)壓器配置
一、問題記錄
1.nINT/REFCLKO引腳功能配置錯(cuò)誤
為了降低成本,我們用的是25MHz的晶振,理論上芯片內(nèi)部會(huì)倍頻一個(gè)50MHz的頻率送給單片機(jī)。如下圖
圖三? ?25M晶振電路實(shí)際上,我們沒有檢測(cè)到50MHz的頻率。
2.內(nèi)部穩(wěn)壓器1.2V配置錯(cuò)誤
我們使用的是1.2V內(nèi)部穩(wěn)壓器。但在實(shí)際測(cè)試時(shí),并沒有測(cè)到1.2V電壓。
二、分析問題
查看手冊(cè),得到兩個(gè)關(guān)鍵信息
1.nINT/REFCLKO引腳可以作為中斷輸出或者參考時(shí)鐘輸出。通過LED2引腳設(shè)置,LED2引腳的值在芯片復(fù)位后,被LAN8720讀取。
當(dāng)該引腳上拉(或浮空,內(nèi)置上拉電阻),那么nINT/REFCLKO引腳為中斷輸出,當(dāng)該引腳接下拉電阻,nINT/REFCLKO引腳為時(shí)鐘輸出。
實(shí)際上我們的設(shè)計(jì)是這樣的
圖四?LED的錯(cuò)誤配置電路
我們選擇nINT/REFCLKO引腳為時(shí)鐘輸出,LED2應(yīng)該被下拉。
在時(shí)鐘輸出模式下,可以外接25MHz的晶振,通過內(nèi)部倍頻到50MHz,然后通過REFCLKO引腳輸出50MHz參考時(shí)鐘給MAC控制。
也可以直接外接50MHz的晶振,然后通過一個(gè)阻值較小的電阻直接送給REFCLKO。
圖五? 50MHz晶振的配置電路
2.芯片需要1.2V給VDDCR供電,不過芯片內(nèi)部集成了1.2V穩(wěn)壓器,可以通過LED1來配置是否使用內(nèi)部穩(wěn)壓器。當(dāng)不使用內(nèi)部穩(wěn)壓器的時(shí)候,必須外供1.2V電源。
通過這兩個(gè)重要信息得出:
LED1和LED2的配置方式是多么的重要。簡(jiǎn)單說50MHz的時(shí)鐘輸出和參考電壓1.2V都是通過這兩個(gè)引腳來配置的。
三、解決問題
LED1和LED2的供電斷開,芯片引腳接10K下拉電阻,如下圖。這時(shí)候1.2V電壓和50MHz的頻率都有了。圖六? LED的正確配置電路
調(diào)試成功后,LED2常亮,LED1會(huì)不停的閃爍。
小技巧分享一下
該芯片封裝特別小,中間焊盤部分是接地的,焊接的時(shí)候很容易跟旁邊的引腳短路,可以將中間部分挖孔,多余的焊錫就會(huì)從板子背面溢出。圖七? LAN8720封裝
以上是今天分享的內(nèi)容,希望對(duì)你有幫助。





