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