新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > MC9S12NE64型單片機的嵌入式以太網連接

MC9S12NE64型單片機的嵌入式以太網連接

作者: 時間:2011-01-03 來源:網絡 收藏

3 的簡單應用

本文引用地址:http://butianyuan.cn/article/173028.htm

3.1 硬件設計

利用可以構成不同功能的網絡終端節(jié)點,如網絡服務器、帶因特網功能的設備、遠程監(jiān)控(數(shù)據(jù)采集,診斷)、對現(xiàn)場設備的遠程控制、遠程設備通過電子郵件或文字尋呼機發(fā)送消息等。

基于最少外圍器件的系統(tǒng)硬件電路原理圖如圖2所示。此最小系統(tǒng)由80引腳的MC9S12NE64與外圍器件組成,電路中帶有背景調試接頭J1;5個LED狀態(tài)指示燈(分別用來顯示網絡狀態(tài),包括EPHY是否沖突、是否建立、是否接收數(shù)據(jù)、速度、雙工模式);必需的偏置電阻R5;高速局域網電磁隔離模塊(即RJ45接口)。其中PHY_TXP和PHY_TXN為發(fā)送線,PHY_RXP和PGY_RXN為接收線。設計時,MC9S12NE64的物理端口與隔離變壓器連接時必須符合IEEE802.3對物理層規(guī)范的要求,如RJ45的插孔與隔離變壓器的間隔應盡量小,輸出和輸入差分信號對的走線要很好的隔離,確保電源的額定負載電流不小于300mA。設計時還應注意系統(tǒng)時鐘的要求,MC9S12NE64只支持皮爾斯型振蕩電路,晶振的精度應高于25ppm。系統(tǒng)中MC9S12NE64工作在正常的單片模式,其內部穩(wěn)壓電源處于工作狀態(tài)。

3.2 MC9S12NE64的初始化

MC9S12NE64在工作之前。必須進行必要的初始化。主要包括時鐘及復位發(fā)生器(CRG)模塊、EMAC模塊、EPHY模塊等。雖然MC9S12NE64上的EMAC和EPHY被設計為兩個獨立的模塊,但如果用到內部的EPHY,則EMAC和EPHY必須同時進行初始化。

MC9S12NE64的初始化過程如下:
(1)初始化時鐘及復位發(fā)生器模塊來產生25MHz的內部總線時鐘,這一過程通過設置時鐘及復位發(fā)生器(CRG)模塊的寄存器表來完成。
(2)設置EPHYCTL0寄存器的DIS10和DIS100位為1,使EPHY時鐘無效,直到EMAC和EPHY配置完畢。
(3)通過EPHYCTL1寄存器的:EPHYADD0、E-PHYADD1、EPHYADD2、EPHYADD3、EPHYADD4來配置MII請求的EPHY地址。
(4)配置自動協(xié)商模式。設置EPHYCTL0寄存器的ANDIS位為0.使用自動協(xié)商模式。
(5)設置EPHYCTL0寄存器的LEDEN位為1允許EPHY驅動LED信號。設置EPHYCTL0寄存器的EPHYIEN位為1使EPHY中斷有效。設置
EPHYCTL0寄存器的EPHYEN位為1使EPHY有效工作,這樣就可以實現(xiàn)EMAC和EPHY間的介質無關接口(MII)操作。
(6)設置MCMST寄存器的MDCSEL位為0xA,來配置EMAC管理數(shù)據(jù)時鐘(EMACMDC)。
(7)設置BUFCFG寄存器的BUFMAP位來配置EMAC緩沖區(qū)的大小。BUFMAP的值用來確定系統(tǒng)RAM中用戶RAM和EMAC緩沖區(qū)的比例。BUFMAP最大為4,這時單個緩沖區(qū)的大小為1.5K字節(jié),正好可以存放一個最大的幀。大于緩沖區(qū)大小的數(shù)據(jù)包將被過濾掉,設計時應合理選擇。設置BUFCFG寄存器的MAXFL位來指定接受的最大幀長度,使緩沖區(qū)起到了數(shù)據(jù)過濾的作用。
(8)通過MACAD寄存器來配置6字節(jié)的MAC地址。如果設備不連接到因特網,則MAC地址可自行定義。
(9)設置ETCTL寄存器為0x17來控制網絡上傳輸?shù)臄?shù)據(jù)類型。
(10)通過設置RXCTL寄存器的PROM、CON-MC和BCREJ位來配置EMAC的MAC地址過濾模式。如果不是自動協(xié)商模式,則還需要設置RFCE位來實現(xiàn)接收流控制。
(11)設置NETCTL寄存器為0x81來配置EMAC的工作模式,并使EMAC正常工作。
(12)設置IMASK寄存器來配置允許的EMAC中斷信號,如需要允許某種中斷請求信號,則將相應的位置1。
(13)設置TXCTS寄存器的PTRC位和設置PTI-ME寄存器來初始化和傳遞暫停持續(xù)時間。
(14)設置系統(tǒng)中斷為允許系統(tǒng)中斷。
(15)通過EMAC MII管理接口來設置EPHY,包括設置速度、雙工模式和流控制,設置EPHY中斷控制寄存器來配置EPHY中斷控制。
(16)在自動協(xié)商模式下,通過設置EPHYCTL0寄存器的DIS10和DIS100位為0來啟動EPHY時鐘發(fā)生器。當自動協(xié)商完成且連接建立后,協(xié)商暫定和雙工設置由EPHY MII寄存器決定。EMAC必須由RXCTS寄存器的FRCE位和NETCTL的FDX位所設定的配置來更新協(xié)商暫定和雙工設置。

至此。MC9S12NE64初始化完成,可以完成EMAC和EPHY間的數(shù)據(jù)接收和發(fā)送。要實現(xiàn)系統(tǒng)與以太網上其他設備(如PC機)的通信,只需要實現(xiàn) TCP/IP協(xié)議棧就可以了。由于內部資源的不足,難以支持完整的TCP/IP協(xié)議棧,故針對各個系統(tǒng)的特點和功能來設定特定的TCP/IP協(xié)議棧,僅實現(xiàn)與需要相關的協(xié)議即可,如ARP協(xié)議、IP協(xié)議、ICMP協(xié)議、TCP協(xié)議、UDP協(xié)議、SMTP協(xié)議、HTYP協(xié)議等。

系統(tǒng)初始化后進入主程序循環(huán),包括的控制作用和網絡數(shù)據(jù)傳輸。對于以太網傳輸部分來說.主要有兩個作用:一是對要發(fā)送的數(shù)據(jù)按照以太網數(shù)據(jù)幀格式進行封裝并發(fā)送;二是對接收的以太網數(shù)據(jù)幀進行解包供應用程序使用。主程序通過嵌入TCP/IP協(xié)議來實現(xiàn)單片機的以太網通信。

4 結束語

隨著數(shù)字化、智能化儀器的飛速發(fā)展,采用以太網進行通信的應用將會越來越廣泛。MC9S12NE64內置了以太網MAC層和物理層,用它可以方便地實現(xiàn)單電路以太網連接。適用于工業(yè)控制、保安系統(tǒng)、用戶卡表、商業(yè)自動化、樓宇控制、照明管理、醫(yī)療檢測、自動售貨機環(huán)境監(jiān)控器、銷售設備終端和家庭自動化等。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉