以太網(wǎng)控制器ENC28J60及其SPI 接口技術(shù)
引 言
ENC28J60是Microchip Technology(美國(guó)微芯科技公司)近期推出的28引腳獨(dú)立以太網(wǎng)控制器。
在此之前,嵌入式系統(tǒng)開(kāi)發(fā)可選的獨(dú)市以太網(wǎng)控制器都是為個(gè)人計(jì)算機(jī)系統(tǒng)設(shè)計(jì)的,如RTL8019、AX88796L、DM9008、CS8900A、LAN91C11l等。這些器件不僅結(jié)構(gòu)復(fù)雜,體積龐大,且比較昂貴,目前市場(chǎng)上大部分以太網(wǎng)控制器的封裝均超過(guò)80引腳,而符合IEEE 802.3協(xié)議的ENC28J60只有28引腳,既能提供相應(yīng)的功能,又可以大大簡(jiǎn)化相關(guān)設(shè)計(jì),減小空間。
1 結(jié)構(gòu)和功能
采用業(yè)界標(biāo)準(zhǔn)串行外設(shè)接口(SPI)的以太網(wǎng)控制器ENC28J60具有以下主要特征:
◆符合IEEE 802.3協(xié)議。內(nèi)置lOMbps以太網(wǎng)物理層器件(PHY)及媒體訪問(wèn)控制器(MAC),可按業(yè)界標(biāo)準(zhǔn)的以太網(wǎng)協(xié)議可靠地收發(fā)信息包數(shù)據(jù)。
◆具有可編程過(guò)濾功能。特殊的過(guò)濾器,包括Microchip的可編程模式匹配過(guò)濾器,可自動(dòng)評(píng)價(jià)、接收或拒收Magic Packet,單播(Unicast)、多播(Multicast)或廣播(Broadcast)信息包,以減輕主控單片機(jī)的處理負(fù)荷。
◆lOMbps SPI接口。業(yè)界標(biāo)準(zhǔn)的串行通信端口,使得低至18引腳的8位單片機(jī)也具有網(wǎng)絡(luò)連接功能。
◆可編程8KB雙端口SRAM緩沖器。以高效的方式進(jìn)行信息包的存儲(chǔ)、檢索和修改,以減輕主控單片機(jī)的內(nèi)存負(fù)荷。該緩沖存儲(chǔ)器提供了靈活可靠的數(shù)據(jù)管理機(jī)制。
2 硬件設(shè)計(jì)
ENC28J60的硬件設(shè)計(jì)需要注意復(fù)位電路,時(shí)鐘振蕩器,振蕩器啟動(dòng)定時(shí)器,時(shí)鐘輸出引腳,變壓器、終端和其他外部器件,輸入/輸出電平等幾個(gè)方面。(圖l可供參考)2.1 復(fù)位電路ENC28J60有上電復(fù)位(Power-on Reset)功能,RESET引腳上的低電平使ENC28J60進(jìn)入復(fù)位模式;RKSlET引腳內(nèi)部有弱上拉電阻。ENC28J60的硬件連接如圖l所示。
2.2 時(shí)鐘振蕩器
ENC28J60需要一個(gè)25MHz的晶振,接在OSCl和OSC2腳上;也可由外部時(shí)鐘信號(hào)來(lái)驅(qū)動(dòng)。此時(shí)3.3V的外部時(shí)鐘接在OSCl腳上,OSC2斷開(kāi)或者通過(guò)一個(gè)電阻接地來(lái)降低系統(tǒng)噪聲。
2.3 振蕩器啟動(dòng)定時(shí)器
ENC28J60內(nèi)部有一個(gè)振蕩器啟動(dòng)時(shí)鐘OST(Oscillator Start-upTimer),上電7500個(gè)時(shí)鐘周期(300μs)。OST期滿后內(nèi)部的PHY方能正常工作。這時(shí)不能發(fā)送或者接收?qǐng)?bào)文。上位機(jī)可通過(guò)檢測(cè)ENC28J60內(nèi)部ESTAT寄存器中的CLKRDY位的狀態(tài)來(lái)決定是否可設(shè)置發(fā)送或接收?qǐng)?bào)文。
需要注意的是,當(dāng)ENC28J60上電復(fù)位或者從Power-Down模式下喚醒時(shí),必須檢測(cè)ESTAT寄存器中的CLKRDY是否置位。只有CLKRDY置位后才能發(fā)送、接收?qǐng)?bào)文,訪問(wèn)相關(guān)寄存器。
2.4 時(shí)鐘輸出引腳
CLKOUT引腳可為系統(tǒng)巾的其他設(shè)備提供時(shí)鐘源。上電后CLKOUT引腳保持低電平,復(fù)位結(jié)束后OST計(jì)數(shù)。OST期滿后,CLKOUT輸出頻率為6.25MHz的時(shí)鐘。
時(shí)鐘輸出功能通過(guò)ECOCON寄存器禁止、調(diào)整和使能。時(shí)鐘輸出可設(shè)置為1、2、3、4、8分頻,上電后默認(rèn)為4分頻。ECOCON寄存器配置改變以后,CLKOUT引腳有80~320ns的延遲(保持低電平),然后按照設(shè)定輸出固定頻率的時(shí)鐘信號(hào)。
軟什或者RESET引腳上的復(fù)位信號(hào)不會(huì)影響ECOCON寄存器的狀態(tài)。Power-Down模式也不會(huì)影響時(shí)鐘的輸出。當(dāng)禁止時(shí)鐘輸出時(shí),CLKOUT引腳保持低電平。
2.5 變壓器、終端和其他外部器件
為了實(shí)現(xiàn)以太網(wǎng)接口ENC28J60,需要幾個(gè)標(biāo)準(zhǔn)的外部器件:脈沖變壓器、偏置電阻、儲(chǔ)能電容和去耦電容。
差分輸入引腳(TPIN+/TPTN-),需要一個(gè)l:1變比的脈沖變壓器來(lái)實(shí)現(xiàn)10BASE-T。差分輸出引腳(TPOUT+/TP0UT-),需要一個(gè)變比為l:l、帶中心抽頭的脈沖變壓器。變壓器需要有2kV或更高的隔離能力,防靜電。對(duì)變壓器的詳細(xì)要求請(qǐng)參考芯片手冊(cè)第16章“電氣特性”。每個(gè)部分都需要通過(guò)2個(gè)50Ω、精度為1%的電阻和1個(gè)0.01μF的電容串聯(lián)后接地。
筆者采用的是中山漢仁公司的集成以太網(wǎng)隔離變壓器RJ45插座HR901170A。
ENC28J60內(nèi)部的模擬電路需要在RBIAS引腳和地之間跨接1個(gè)2kΩ、l%的偏置電阻。部分?jǐn)?shù)字電路工作在2.5V,以降低功耗;ENC28J60內(nèi)部集成1個(gè)2.5V的調(diào)節(jié)器來(lái)產(chǎn)生所需的電壓,需在VCAP引腳和地之間接1個(gè)10μF的電容保證供電的穩(wěn)定性(該2.5V調(diào)節(jié)器不是為外部負(fù)載設(shè)汁的)。
評(píng)論