新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 以太網(wǎng)控制芯片W5100的存儲(chǔ)裝置設(shè)計(jì)

以太網(wǎng)控制芯片W5100的存儲(chǔ)裝置設(shè)計(jì)

作者: 時(shí)間:2010-11-16 來(lái)源:網(wǎng)絡(luò) 收藏

1.2 串口的設(shè)計(jì)
在實(shí)際應(yīng)用中,很可能出現(xiàn)數(shù)據(jù)已經(jīng)存入但是RJ45口損壞而沒(méi)有辦法讀數(shù)的情況。為了防止因RJ45口的損壞而導(dǎo)致整個(gè)裝置不可用,可加入串口模塊直接利用串口進(jìn)行讀數(shù)。

2 系統(tǒng)工作原理
2.1 工作狀態(tài)圖
工作狀態(tài)圖如圖3所示。

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

f.JPG


2.2 網(wǎng)絡(luò)協(xié)議的選擇
W5100本身集成了高度成熟的TCP/IP協(xié)議棧、以太網(wǎng)MAC層、PHY層等,支持TCP、UDP、IPv4、ICMP、ARP、IGMP和PPPoE等協(xié)議。
TCP(Transmission Control Protocol,傳輸控制協(xié)議)是基于連接的協(xié)議,也就是說(shuō),在正式收發(fā)數(shù)據(jù)前,必須和對(duì)方建立可靠的連接。一個(gè)TCP連接必須要經(jīng)過(guò)3次“對(duì)話”才能建立起來(lái)。
UDP是一個(gè)無(wú)連接協(xié)議,傳輸數(shù)據(jù)之前源端和終端不建立連接,當(dāng)它想傳送時(shí)就簡(jiǎn)單地去抓取來(lái)自應(yīng)用程序的數(shù)據(jù),并盡可能快地把它扔到網(wǎng)絡(luò)上。雖然UDP是無(wú)連接的協(xié)議,它不保證數(shù)據(jù)包一定能夠到達(dá)目的主機(jī),但是在本應(yīng)用中器跟主機(jī)通常位于同一內(nèi)部局域網(wǎng)內(nèi),網(wǎng)絡(luò)環(huán)境良好,數(shù)據(jù)丟失的可能性很小。另外,UDP容易實(shí)現(xiàn),占用資源少,傳輸速度高,可以滿足整個(gè)裝置的應(yīng)用需要。

3 軟件設(shè)計(jì)
3.1 主程序設(shè)計(jì)
軟件實(shí)現(xiàn)的主程序流程如圖4所示。

g.JPG


3.2 寄存器的設(shè)置
通過(guò)設(shè)置W5100內(nèi)部的控制寄存器,完全可以像在局域網(wǎng)中配置IP地址一樣簡(jiǎn)單地配置設(shè)計(jì)的系統(tǒng)。
常用寄存器主要包括:模式寄存器(MR)、網(wǎng)關(guān)地址寄存器(GWR)、子網(wǎng)掩碼寄存器(SUBR)、物理地址寄存器(SHAR)、源IP地址寄存器(SI-PR)、中斷寄存器(IR)、中斷屏蔽寄存器(IMR)、重試時(shí)間寄存器(RTR)、重試次數(shù)寄存器(RCR)、接收數(shù)據(jù)緩沖區(qū)大小寄存器(RMSR)、發(fā)送數(shù)據(jù)緩沖區(qū)大小寄存器(TMSR)等。套接字寄存器平均分為4部分,對(duì)4個(gè)獨(dú)立的網(wǎng)絡(luò)通道單獨(dú)設(shè)置;發(fā)送和接收數(shù)據(jù)緩沖區(qū)用來(lái)存放臨時(shí)數(shù)據(jù)。通過(guò)對(duì)這些寄存器的設(shè)置可以選擇工作模式及協(xié)議棧,設(shè)置裝置自己的網(wǎng)關(guān)、IP、子網(wǎng)掩碼、物理地址,還可以對(duì)端口進(jìn)行打開(kāi)和關(guān)閉。
用戶自己定義MAC地址時(shí)必須注意,MAC地址的第一個(gè)字節(jié)必須為偶數(shù)。第一個(gè)字節(jié)為奇數(shù)的MAC地址為多播地址,如果把MAC地址的第一個(gè)字節(jié)定義為奇數(shù),可能會(huì)引起網(wǎng)絡(luò)通信錯(cuò)誤。
3.3 讀寫(xiě)程序設(shè)計(jì)
讀時(shí)序如圖5所示,寫(xiě)時(shí)序如圖6所示。

h.JPG



關(guān)鍵詞: 通信 存儲(chǔ) 單片機(jī)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉