![通過(guò)以太網(wǎng)傳輸?shù)那度胧骄W(wǎng)關(guān)設(shè)計(jì)畢業(yè)論文_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/19/590aff14-2d95-4099-a8c5-e360a0bbf203/590aff14-2d95-4099-a8c5-e360a0bbf2031.gif)
![通過(guò)以太網(wǎng)傳輸?shù)那度胧骄W(wǎng)關(guān)設(shè)計(jì)畢業(yè)論文_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/19/590aff14-2d95-4099-a8c5-e360a0bbf203/590aff14-2d95-4099-a8c5-e360a0bbf2032.gif)
![通過(guò)以太網(wǎng)傳輸?shù)那度胧骄W(wǎng)關(guān)設(shè)計(jì)畢業(yè)論文_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/19/590aff14-2d95-4099-a8c5-e360a0bbf203/590aff14-2d95-4099-a8c5-e360a0bbf2033.gif)
![通過(guò)以太網(wǎng)傳輸?shù)那度胧骄W(wǎng)關(guān)設(shè)計(jì)畢業(yè)論文_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/19/590aff14-2d95-4099-a8c5-e360a0bbf203/590aff14-2d95-4099-a8c5-e360a0bbf2034.gif)
![通過(guò)以太網(wǎng)傳輸?shù)那度胧骄W(wǎng)關(guān)設(shè)計(jì)畢業(yè)論文_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/19/590aff14-2d95-4099-a8c5-e360a0bbf203/590aff14-2d95-4099-a8c5-e360a0bbf2035.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、摘要本文是對(duì)簡(jiǎn)易嵌入式網(wǎng)關(guān)的設(shè)計(jì),我們知道網(wǎng)關(guān)在人們的現(xiàn)實(shí)工作和生活中有著極其重要的作用。因此網(wǎng)關(guān)的設(shè)計(jì)具有著許多的現(xiàn)實(shí)的意義。本文的硬件部分采用的是性能相對(duì)高于51單片機(jī)但是又兼容51單片機(jī)特性的p89c668來(lái)作為微控制器,用芯片rtl8019as來(lái)作為以太網(wǎng)通信的控制器,這兩部分和隔離濾波器pm34一起,就構(gòu)成了網(wǎng)關(guān)設(shè)計(jì)中的最主要部分。單片機(jī)與rtl8018as一起將傳輸?shù)臄?shù)據(jù)通過(guò)tcp/ip中的幾個(gè)固化在單片機(jī)里的子協(xié)議進(jìn)行一個(gè)傳輸和解析,通過(guò)以太網(wǎng)的傳輸達(dá)到對(duì)現(xiàn)場(chǎng)的一個(gè)控制監(jiān)測(cè)的效果。由于單片機(jī)中要固化許多的協(xié)議和傳輸數(shù)據(jù),所以對(duì)它的存儲(chǔ)器的空間有較高的要求,因此我們?cè)谟布糠钟謱?duì)單
2、片機(jī)進(jìn)行了存儲(chǔ)器的擴(kuò)展。最小系統(tǒng)的完整性是單片機(jī)能夠正常工作的基礎(chǔ)。并且本文還采用了max232來(lái)構(gòu)建它的串行通信電路,已達(dá)到本設(shè)計(jì)各方面工作的正常進(jìn)行。本文的軟件部分則是對(duì)軟件中的固化的協(xié)議進(jìn)行了一個(gè)實(shí)現(xiàn),對(duì)tcp/ip協(xié)議進(jìn)行研究分析,以便數(shù)據(jù)能夠正常傳輸。關(guān)鍵詞:單片機(jī);網(wǎng)關(guān); tcp/ip;以太網(wǎng)abstractthis article is a simple and easy design of the embedded gateway, we know that the gateway in the real work of people and it has a very imp
3、ortant role in the life. so the design of the gateway has a lot of practical significance.hardware part of this article is relatively higher than performance but also compatible with 51 single-chip microcomputer 51 scm features p89c668 as microcontroller, using rtl8019as chip as a controller for eth
4、ernet communication, the two parts and isolation filter pm34, together constitute the major part in the design of the gateway. single-chip microcomputer with rtl8018as will transmit data via tcp/ip of a few curing child in scm agreement for a transfer and parsing, transmission through ethernet to ac
5、hieve the effect of a control of on-site monitoring. because of the single chip microcomputer to curing many protocols and data transmission, so the space of the memory of it has higher requirements, so we in the hardware part and mcu for the extension of storage. the minimum system of integrity is
6、the basis of the single-chip microcomputer that can work normally. and this paper also adopts the max232 to build its serial communication circuit, every aspect has reached the design work on the rails. software part of this paper is conducted of the agreement for curing in software implementation,
7、the study of the tcp/ip protocol analysis, so that the data can be transmitted properly.key words: single chip microcomputer; gateway; tcp/ip; ethernet目錄摘要iabstractii第1章 緒論11.1課題來(lái)源11.2國(guó)內(nèi)外研究與應(yīng)用現(xiàn)狀11.2.1 以太網(wǎng)與tcp/ip11.2.2 嵌入式系統(tǒng)的概念及發(fā)展現(xiàn)狀11. 2. 3 課題發(fā)展現(xiàn)狀21.3 本文研究的內(nèi)容3 1.4 本章小結(jié)4第2章 嵌入式網(wǎng)關(guān)的理論基礎(chǔ)52.1以太網(wǎng)技術(shù)52.1.1 t
8、cp/ip協(xié)議52.1.2數(shù)據(jù)的封裝和分用62.2以太網(wǎng)協(xié)議72.2.1以太網(wǎng)協(xié)議簡(jiǎn)介72.2.2以太網(wǎng)協(xié)議結(jié)構(gòu)82.3本章小結(jié)9第3章 系統(tǒng)硬件設(shè)計(jì)103.1系統(tǒng)硬件電路103.2單片機(jī)基本系統(tǒng)103.2.1單片機(jī)最小系統(tǒng)113.2.2單片機(jī)存儲(chǔ)器電路123.2.3單片機(jī)電源電路133.3以太網(wǎng)接口電路133.3.1以太網(wǎng)控制器芯片rtl8019as133.3.2 rtl8019as工作原理143.3.3片內(nèi)dma地址空間分配153.4以太網(wǎng)接口電路設(shè)計(jì)163.5串行通信接口電路193.6pcb板的繪制203.7本章小結(jié)21第4章 系統(tǒng)軟件設(shè)計(jì)224.1 系統(tǒng)軟件設(shè)計(jì)224.2以太網(wǎng)驅(qū)動(dòng)程序
9、設(shè)計(jì)224.2.1 rtl8019as初始化234.2.2 rtl8019as的發(fā)送程序和接收程序234.3 arp協(xié)議的實(shí)現(xiàn)254.4 ip協(xié)議的實(shí)現(xiàn)274.5 icmp協(xié)議的實(shí)現(xiàn)294.6 udp協(xié)議的實(shí)現(xiàn)314.7本章小結(jié)33第5章 結(jié)論34致 謝35參考文獻(xiàn)36附錄a38附錄b39第1章 緒論1.1課題來(lái)源互聯(lián)網(wǎng)的普及,使得實(shí)現(xiàn)智程控制不再是人們的夢(mèng)想。通過(guò)設(shè)計(jì)一種簡(jiǎn)易嵌入式網(wǎng)關(guān),用戶可以從全球的任何一個(gè)角落實(shí)現(xiàn)對(duì)設(shè)備的一個(gè)監(jiān)管,方便了人們的工作生活。把網(wǎng)關(guān)接收到的數(shù)據(jù)通過(guò)以太網(wǎng)的傳輸?shù)竭_(dá)處理器,再由處理器進(jìn)行分析、檢測(cè)、反饋,達(dá)到一個(gè)遠(yuǎn)程監(jiān)控的作用。本課題所提出的適用于以太網(wǎng)的簡(jiǎn)易嵌
10、入式網(wǎng)關(guān)設(shè)計(jì),主要是選擇一種性價(jià)比較高的微處理器,通過(guò)軟件編程實(shí)現(xiàn)一些基本tcp/ip協(xié)議功能,從而實(shí)現(xiàn)部分網(wǎng)絡(luò)通訊協(xié)議的功能,且價(jià)格較為低廉。通過(guò)與internet的互聯(lián),從而實(shí)現(xiàn)“管控一體化”,使管理人員不必深入現(xiàn)場(chǎng),便可通過(guò)internet聯(lián)網(wǎng)監(jiān)測(cè)現(xiàn)場(chǎng)設(shè)備運(yùn)行狀態(tài),提高工作的靈活性和可靠性,尤其適合無(wú)人職守工作站??梢允蛊鋸V泛適用于工業(yè)控制領(lǐng)域,適合多種工業(yè)現(xiàn)場(chǎng)。1.2國(guó)內(nèi)外研究與應(yīng)用現(xiàn)狀1.2.1 以太網(wǎng)與tcp/ip 以太網(wǎng)不是一種具體的網(wǎng)絡(luò),而是一種組網(wǎng)的技術(shù)規(guī)范。它在很大程度上取代了其他局域網(wǎng)標(biāo)準(zhǔn)。以太網(wǎng)絡(luò)使用的是csma/cd(載波監(jiān)聽(tīng)多路訪問(wèn)及沖突檢測(cè))技術(shù),并且符合ieee
11、802.3標(biāo)準(zhǔn)。以太網(wǎng)技術(shù)具有簡(jiǎn)單方便、價(jià)格低、速度高的優(yōu)點(diǎn)。目前它已經(jīng)在工業(yè)企業(yè)綜合自動(dòng)化系統(tǒng)中的資源管理層、執(zhí)行制造層得到了廣泛應(yīng)用,并呈現(xiàn)逐漸向下延伸的趨勢(shì),現(xiàn)在已經(jīng)能夠應(yīng)用在工業(yè)的監(jiān)測(cè)。以太網(wǎng)技術(shù)經(jīng)過(guò)多年的發(fā)展已經(jīng)相當(dāng)?shù)某墒欤壳白畹偷乃俾蕿?0mbps,而百兆以太網(wǎng)已經(jīng)得到了廣泛的應(yīng)用,千兆以太網(wǎng)也在遇見(jiàn)日漸成熟。在工業(yè)控制中,以太網(wǎng)的數(shù)據(jù)傳輸并不是所有的工業(yè)環(huán)境都需要達(dá)到微秒級(jí)別的時(shí)間要求,并且在工業(yè)環(huán)境中待傳輸?shù)男畔㈩愋桶▽?shí)時(shí)過(guò)程控制數(shù)據(jù)、設(shè)備狀態(tài)、監(jiān)控?cái)?shù)據(jù)、系統(tǒng)故障診斷數(shù)據(jù)、報(bào)警數(shù)據(jù)等,這些數(shù)據(jù)通常在量上并不大。在工業(yè)控制中,實(shí)時(shí)的控制能力、信息傳輸?shù)拇_定性和操作性非常的重要
12、。因此結(jié)合工業(yè)以太網(wǎng)數(shù)據(jù)量小的特點(diǎn),又由于tcp/ip協(xié)議本身的可靠和穩(wěn)定性,大多數(shù)工業(yè)以太網(wǎng)協(xié)議都選擇了tcp/ip協(xié)議來(lái)實(shí)現(xiàn)。工業(yè)控制網(wǎng)絡(luò)發(fā)展的趨勢(shì)與要求:1、工業(yè)網(wǎng)絡(luò)體系的原則開(kāi)放性;2、工業(yè)控制的方向與internet集成;3、高性能工業(yè)網(wǎng)絡(luò)的要求更高的帶寬;4、新的工業(yè)網(wǎng)絡(luò)體系;5、嚴(yán)格的實(shí)時(shí)性要求。1.2.2 嵌入式系統(tǒng)的概念及發(fā)展現(xiàn)狀嵌入式系統(tǒng)有時(shí)稱為嵌入式計(jì)算機(jī)系統(tǒng),指的是專用的計(jì)算機(jī)系統(tǒng)。它是隨著多種技術(shù)的發(fā)展而發(fā)展起來(lái)的。它已成為現(xiàn)代科技發(fā)展的的一個(gè)重要組成部分。由于反應(yīng)速度快、用途很廣,現(xiàn)在嵌入式系統(tǒng)幾乎應(yīng)用于所有的電氣設(shè)備。嵌入式系統(tǒng)起源于微型計(jì)算機(jī)時(shí)代,然而雖然計(jì)算機(jī)
13、集成度在不斷的提高,但這也不能徹底地滿足嵌入式系統(tǒng)的微小體積、極低價(jià)位、高可靠性的要求。因此,嵌入式系統(tǒng)芯片化是它發(fā)展的必然趨勢(shì)。而單片機(jī)由于具有體積小、功能強(qiáng)、價(jià)格低廉和使用靈活的特點(diǎn),在嵌入式系統(tǒng)發(fā)揮著不可或缺的作用??梢哉f(shuō),隨著技術(shù)的發(fā)展,嵌入式系統(tǒng)無(wú)處不在。雖然嵌入式這個(gè)概念很早就已經(jīng)存在了,但是嵌入式系統(tǒng)真正風(fēng)靡發(fā)展起來(lái)卻是近幾年才開(kāi)始的,以他的發(fā)展情況,大致有了以下四個(gè)階段: 無(wú)操作系統(tǒng)階段:這一階段只是初步具備了嵌入式的應(yīng)用特點(diǎn),但是它的統(tǒng)結(jié)構(gòu)和功能都不完全,很多方面都還存在缺陷。但由于嵌入式系統(tǒng)使用起來(lái)非常的簡(jiǎn)單方便、價(jià)格相對(duì)的便宜,所以已經(jīng)在工業(yè)上得到了廣泛的應(yīng)用。 簡(jiǎn)單操作
14、系統(tǒng)階段簡(jiǎn) 到20世紀(jì)80年代,隨著微電子技術(shù)的不斷提高,開(kāi)始出現(xiàn)各種簡(jiǎn)單的嵌入式操作系統(tǒng)。這時(shí)候雖然還是比較簡(jiǎn)單的,但是已經(jīng)具有了一定的的兼容性,內(nèi)核也相對(duì)精巧而且效率也較高。 實(shí)時(shí)操作系統(tǒng)階段:到20世紀(jì)90年代,嵌入式系統(tǒng)發(fā)展迅速。這時(shí)嵌入式的操作系統(tǒng)的實(shí)時(shí)性得到了很大的改善,并且已經(jīng)能夠逐步的運(yùn)行在各種不同類型的微處理器上。這時(shí)已經(jīng)具備了很多的功能,并提供了大量的應(yīng)用程序接口(api),使得應(yīng)用軟件的開(kāi)發(fā)變得更加簡(jiǎn)單。 面向internet階段 21世紀(jì)是一個(gè)網(wǎng)絡(luò)飛速發(fā)展的黃金時(shí)代,嵌入式系統(tǒng)已經(jīng)應(yīng)用到各種網(wǎng)絡(luò)環(huán)境中。但是現(xiàn)在大多數(shù)的嵌入式系統(tǒng)還是孤立于internet之外,目前來(lái)說(shuō),
15、嵌入式設(shè)備與internet相結(jié)合才是嵌入式技術(shù)的真正未來(lái)。同時(shí)單片機(jī)的在嵌入式系統(tǒng)中的應(yīng)用是嵌入式系統(tǒng)走進(jìn)了一個(gè)新的時(shí)代,單片機(jī)的發(fā)展經(jīng)歷了scm,mcu,soc三大階段:scm即單片微型計(jì)算機(jī)(single chip microcomputer)階段,主要是尋求單片形態(tài)嵌入式系統(tǒng)的最佳體系結(jié)構(gòu)。mcu即微控制器(micro controller unit)階段,主要的技術(shù)發(fā)展方向是:不斷擴(kuò)展?jié)M足嵌入式應(yīng)用,突顯其智能化控制能力。soc即片上系統(tǒng)(system on chip)階段,是嵌入式系統(tǒng)最新發(fā)展趨勢(shì)。1.2.3 課題發(fā)展現(xiàn)狀互聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,使得網(wǎng)絡(luò)技術(shù)越來(lái)越與人們的日常生活密不
16、可分。目前隨著以太網(wǎng)技術(shù)的進(jìn)一步發(fā)展和完善,信息的控制性和可操作性的不斷提高,現(xiàn)在將以太網(wǎng)技術(shù)應(yīng)用到工業(yè)現(xiàn)場(chǎng)的控制領(lǐng)域已經(jīng)成為了可能。從目前的發(fā)展趨勢(shì)來(lái)看,以太網(wǎng)的應(yīng)用己經(jīng)進(jìn)入到了遠(yuǎn)程的程度。一方面,以太網(wǎng)的遠(yuǎn)程控制操作大大減少了人力資源的浪費(fèi)。另一方面它也降低了一些在工業(yè)檢測(cè)中存在的安全隱患。通過(guò)互聯(lián)網(wǎng)的互聯(lián)作用,從而實(shí)現(xiàn)“管控一體化”效果。在一些人力所不及的環(huán)境,以太網(wǎng)技術(shù)也發(fā)揮了它巨大的作用。而將互聯(lián)網(wǎng)絡(luò)延伸至單片機(jī)又成為網(wǎng)絡(luò)在工業(yè)領(lǐng)域應(yīng)用中的另一種的趨勢(shì)。時(shí)代的快速發(fā)展,使得現(xiàn)代的遠(yuǎn)程監(jiān)控技術(shù)已經(jīng)走進(jìn)人們的生活,可以說(shuō)遠(yuǎn)程監(jiān)控系統(tǒng)就是信息網(wǎng)絡(luò)與控制網(wǎng)絡(luò)結(jié)合的產(chǎn)物,它集現(xiàn)代多種技術(shù)為一體
17、,在許多領(lǐng)域有著廣泛的應(yīng)用。而遠(yuǎn)程控制的實(shí)現(xiàn),網(wǎng)關(guān)是必不可少的一個(gè)組成部分,嵌入式網(wǎng)關(guān)的應(yīng)用使得遠(yuǎn)程控制得到實(shí)現(xiàn)。在這個(gè)日益信息化的社會(huì),計(jì)算機(jī)和網(wǎng)絡(luò)已經(jīng)全面滲透到我們生活的每一個(gè)領(lǐng)域。為了實(shí)現(xiàn)遠(yuǎn)程控制,同時(shí)滿足人們工作生活的多方面行,嵌入式internet的發(fā)展也迫在眉睫。對(duì)于它的研究,國(guó)外已經(jīng)從理論階段過(guò)度到了研發(fā)階段,并且有的公司已經(jīng)研制出了自己的產(chǎn)品。至目前為止,大部分的嵌入式系統(tǒng)采用的是8位的微控制器。但是由于這些系統(tǒng)的硬件資源有限以及成本的敏感性,實(shí)現(xiàn)完整的tcp/ip協(xié)議比較困難,所以不得不接入到32位的位處理器中,大大增加了成本。同時(shí)從國(guó)內(nèi)外的研究現(xiàn)狀上也可以看出,對(duì)于嵌入式i
18、nternet技術(shù),大部分國(guó)外公司的解決方案都是基于高速處理器之上,或者在普通的8位、16位微處理器上實(shí)現(xiàn)與internet接入,并且其費(fèi)用是非常高的。因此,如何在單片機(jī)上低成本的實(shí)現(xiàn)嵌入式internet, 就有很大的前景。但是,將嵌入式系統(tǒng)與internet相接入不是一蹴而就的,這中間存在著許多的困難。要想把這項(xiàng)技術(shù)應(yīng)用到人們的工作以及人們的生活中,就要首先讓這些困難得到很好的解決。首先:internet的各種通信協(xié)議對(duì)存儲(chǔ)器的空間以及處理器的運(yùn)行速度等都有著較高的要求,如果選用32位的處理器的話,成本就會(huì)大大提高等。所以這一系列的問(wèn)題則要求我們要深入的研究這些問(wèn)題。近年來(lái)我國(guó)的控制與通訊
19、工程師們也開(kāi)始致力于新型工業(yè)以太網(wǎng)的研究工作,其中有代表性的是采用ff制定的快速以太網(wǎng)標(biāo)準(zhǔn)。1.3 本文研究的內(nèi)容本課題所提出的適用于以太網(wǎng)的簡(jiǎn)易嵌入式網(wǎng)關(guān)設(shè)計(jì),主要是選擇一種性價(jià)比較高的微處理器,通過(guò)軟件編程實(shí)現(xiàn)一些基本tcp/ip協(xié)議功能,從而實(shí)現(xiàn)部分網(wǎng)絡(luò)通訊協(xié)議的功能。課題主要任務(wù)是研究單片機(jī)在計(jì)算機(jī)分布式控制系統(tǒng)中與以太網(wǎng)相互通信的實(shí)現(xiàn)。本課題采用51系列單片機(jī)p89c668單片機(jī)控制以太網(wǎng)接口芯片rtl8019as實(shí)現(xiàn)網(wǎng)橋功能,并提供tcp/ip協(xié)議功能。論文的工作具體如下:(1)硬件電路設(shè)計(jì)本課題硬件設(shè)計(jì)采用51系列p89c668位單片機(jī),rtl8019as芯片,rs232等接口。
20、(2)在p89c668單片機(jī)上實(shí)現(xiàn)tcp/ip協(xié)議的子集,包括:arp,icmp,udp,及tcp等。(3)采用c語(yǔ)言開(kāi)發(fā)協(xié)議處理程序,利用模塊化的編程思想,分層實(shí)現(xiàn)各個(gè)協(xié)議,提高程序的可移植性和可讀性。1.4 本章小結(jié)本章對(duì)課題的現(xiàn)實(shí)來(lái)源以及它的發(fā)展前景進(jìn)行了一個(gè)簡(jiǎn)單的闡述,并且對(duì)以太網(wǎng)的進(jìn)行了簡(jiǎn)單地介紹,了解了tcp/ip協(xié)議是以太網(wǎng)通信協(xié)議中最重要的一部分。本章還對(duì)嵌入式系統(tǒng)的發(fā)展歷史進(jìn)行了一個(gè)簡(jiǎn)單地總結(jié),明確了本文所要研究和所要實(shí)現(xiàn)的最終目標(biāo)。通過(guò)對(duì)本章的學(xué)習(xí)可以使讀者了解到嵌入式網(wǎng)關(guān)設(shè)計(jì)的現(xiàn)實(shí)意義,以及對(duì)它所包含的理論知識(shí)有了一個(gè)大體的了解。第2章 嵌入式網(wǎng)關(guān)的理論基礎(chǔ) 本文實(shí)現(xiàn)的是
21、把以太網(wǎng)作為物理網(wǎng)絡(luò)的嵌入式網(wǎng)關(guān)的設(shè)計(jì),以tcp/ip協(xié)議實(shí)現(xiàn)數(shù)據(jù)的傳輸。以太網(wǎng)應(yīng)用于工業(yè)領(lǐng)域是現(xiàn)代網(wǎng)絡(luò)發(fā)展的一個(gè)必然的趨勢(shì), 在工業(yè)中以太網(wǎng)的最主要任務(wù)就是實(shí)時(shí)數(shù)據(jù)傳輸。怎樣快速穩(wěn)定、實(shí)時(shí)準(zhǔn)確的傳送數(shù)據(jù)是我們首先考慮和解決的問(wèn)題。通過(guò)對(duì)數(shù)據(jù)傳輸各方面的綜合考慮,我們選用以太網(wǎng)的tcp/ip協(xié)議。tcp/ip協(xié)議internet最基本的協(xié)議,是國(guó)際互聯(lián)網(wǎng)絡(luò)的基礎(chǔ)。由于tcp/ip協(xié)議自身具有的穩(wěn)定性和確定性,現(xiàn)在已經(jīng)在工業(yè)等方面廣泛的應(yīng)用。以太網(wǎng)遵循ieee802.3標(biāo)準(zhǔn),tcp/ip協(xié)議是它所遵循的一個(gè)通訊協(xié)議?,F(xiàn)在由于嵌入式系統(tǒng)還在硬件上受到一定的限制,并不能實(shí)現(xiàn)整個(gè)的tcp/ip協(xié)議,因
22、此我們將tcp/ip協(xié)議精簡(jiǎn)了一部分。本文設(shè)計(jì)目標(biāo)為嵌入式網(wǎng)關(guān),實(shí)現(xiàn)的相關(guān)協(xié)議為: arp,udp, tcp, ip,icmp協(xié)議。2.1以太網(wǎng)技術(shù)2.1.1 tcp/ip協(xié)議tcp/ip協(xié)議并不是tcp和ip這兩個(gè)協(xié)議的合稱,而是指因特網(wǎng)整個(gè)tcp/ip協(xié)議族。tcp/ip 體系結(jié)構(gòu)模型與osi模型非常相似,但又不完全一樣。它采用四層結(jié)構(gòu)體系,這四層由高到低分別是:應(yīng)用層、傳輸層、網(wǎng)絡(luò)層以及網(wǎng)絡(luò)接口層,其中每一層都完成不同的通信功能,如圖2-1所示。 圖2-1 tcp/ip 協(xié)議結(jié)構(gòu)網(wǎng)絡(luò)接口層有時(shí)也被稱為網(wǎng)絡(luò)訪問(wèn)層和數(shù)據(jù)鏈路層,它是在tcp/ip協(xié)議棧的最底層,是有控制同一物理網(wǎng)絡(luò)的不同機(jī)器
23、間數(shù)據(jù)傳送的底層協(xié)議組成。網(wǎng)絡(luò)接口層能夠?qū)?shí)際的網(wǎng)絡(luò)媒體進(jìn)行管理,并且定義如何使用實(shí)際網(wǎng)絡(luò)。它是負(fù)責(zé)接收ip數(shù)據(jù)包并通過(guò)網(wǎng)絡(luò)發(fā)送,或者從網(wǎng)絡(luò)上接收物理幀,抽出ip數(shù)據(jù)包,交給ip層。我們知道,如果要從一臺(tái)ip主機(jī)到達(dá)位于路由器另一端的一臺(tái)ip主機(jī),就必須知道信宿主機(jī)的ip地址。因此tcp/ip網(wǎng)絡(luò)互聯(lián)使用arp確定數(shù)據(jù)包的本地的目標(biāo)硬件地址。arp(address resolution protocol)是地址解析協(xié)議,它主要是把一個(gè)ip地址映射成物理地址。arp協(xié)議就是完成獲得對(duì)方物理地址的一個(gè)協(xié)議方法。網(wǎng)絡(luò)層負(fù)責(zé)相鄰計(jì)算機(jī)之間的通信,并且管理網(wǎng)絡(luò)名稱。網(wǎng)絡(luò)層執(zhí)行tcp/ip的三個(gè)任務(wù),分段
24、:即路由器從一種網(wǎng)絡(luò)攜帶數(shù)據(jù)到另一個(gè)網(wǎng)絡(luò)是,網(wǎng)絡(luò)能夠攜帶的最大的數(shù)據(jù)塊;尋址:它定義了一種機(jī)制,通過(guò)這種機(jī)制tcp/ip上的所有網(wǎng)絡(luò)接口必須與逐個(gè)標(biāo)識(shí)每個(gè)接口,以及接口所屬網(wǎng)絡(luò)的特定的、唯一的位模式相關(guān)聯(lián);路由:定義了從發(fā)送方轉(zhuǎn)發(fā)數(shù)據(jù)包到接收方的機(jī)制,其中涉及大量的中繼。網(wǎng)絡(luò)層所包含的主要協(xié)議有ip協(xié)議(網(wǎng)際協(xié)議)、icmp協(xié)議(internet互聯(lián)網(wǎng)控制報(bào)文協(xié)議)、arp(地址解析協(xié)議)等。傳輸層有時(shí)候也被稱為主機(jī)對(duì)主機(jī)層,該層涉及從一臺(tái)主機(jī)到另一臺(tái)主機(jī)的移動(dòng)數(shù)據(jù)。它有傳輸控制協(xié)議(tcp)和用戶數(shù)據(jù)報(bào)協(xié)議(udp)兩種協(xié)議。這兩種協(xié)議有兩個(gè)特色:面向連接和非連接,tcp為面向連接,而udp
25、為非連接。tcp是一個(gè)可靠的段對(duì)段的協(xié)議,它在發(fā)送數(shù)據(jù)前協(xié)調(diào)和保持連接,獲得數(shù)據(jù)傳輸成功的確認(rèn),以及請(qǐng)求重新傳輸丟失或者錯(cuò)誤的數(shù)據(jù)。而udp則盡他最大的傳送數(shù)據(jù),并不接收信息的查詢。應(yīng)用層被稱為處理層,是協(xié)議棧與主機(jī)上的應(yīng)用或者處理程序交界的層,向用戶提供一組常用的應(yīng)用程序。應(yīng)用層處于tcp和udp之上的一組協(xié)議,包括http超文本傳輸協(xié)議和ftp文件傳輸協(xié)議等。2.1.2數(shù)據(jù)的封裝和分用當(dāng)數(shù)據(jù)在網(wǎng)絡(luò)上傳輸時(shí)都必須經(jīng)過(guò)封裝,每一層都在上一層數(shù)據(jù)基礎(chǔ)上加上頭部信息包括本地信息和物理信息,逐層傳輸,直到鏈路層。tcp/ip的每一層將傳出的數(shù)據(jù)進(jìn)行包裝識(shí)別以便傳給下一層。數(shù)據(jù)封裝結(jié)構(gòu)如圖2-2:圖
26、2-2 tcp/ip 數(shù)據(jù)封裝層次當(dāng)目的主機(jī)受到一個(gè)數(shù)據(jù)時(shí),數(shù)據(jù)就開(kāi)始從協(xié)議棧底部向頂部上升,同時(shí)去除這個(gè)頭部信息,并且驗(yàn)證數(shù)據(jù)的目的地是否是本地,以確定接收數(shù)據(jù)的上層協(xié)議,這就是用到分用,如圖2-3所示:圖 2-3 tcp/ip 數(shù)據(jù)分用過(guò)程2.2以太網(wǎng)協(xié)議2.2.1以太網(wǎng)協(xié)議簡(jiǎn)介以太網(wǎng)是一個(gè)局域網(wǎng)的規(guī)范,它在現(xiàn)在的通信中被廣泛應(yīng)用,是現(xiàn)在通用的通信協(xié)議的標(biāo)準(zhǔn)。以太網(wǎng)采用的是csma/cd技術(shù),即載波監(jiān)聽(tīng)多路訪問(wèn)及沖突檢測(cè)。以太網(wǎng)與ieee8023標(biāo)準(zhǔn)相類似,也就是說(shuō)它包含于ieee 802.3標(biāo)準(zhǔn)組。ieee802.3是csma/cd網(wǎng)絡(luò),定義了csma/cd總線網(wǎng)的mac子層和物理層的規(guī)
27、范。以太網(wǎng)的功能和性能正在逐步的改善,它有半雙工和全雙工兩種操作模式。半雙工意味著同一媒體的發(fā)送和接收是異步進(jìn)行的。接收與發(fā)送共用一個(gè)通道,同一時(shí)刻只能發(fā)送或只能接收,所以半雙工可能會(huì)產(chǎn)生沖突。這樣它的傳輸?shù)挠行院透咚傩跃徒档土?。全雙工是指接收與發(fā)送采用兩個(gè)相互獨(dú)立的通道,可同時(shí)進(jìn)行,互不干擾,它有單獨(dú)的發(fā)送和接收通路。在全雙工模式下,發(fā)送方和接收方之間采用的是點(diǎn)到點(diǎn)的連接,這就意味著可以得到更高的傳輸速率。由于發(fā)送數(shù)據(jù)和接收數(shù)據(jù)是在不同的電纜線上完成的,因此不會(huì)產(chǎn)生沖突。以太網(wǎng)系統(tǒng)由三個(gè)基本單元組成:1)物理媒體,用于攜帶計(jì)算機(jī)之間的以太網(wǎng)信號(hào);2)媒體訪問(wèn)控制規(guī)則,嵌入在每個(gè)以太網(wǎng)接口處
28、,從而使得多路計(jì)算機(jī)對(duì)共享以太網(wǎng)信道作出正確判斷;3)以太幀,由一組系統(tǒng)用于攜帶數(shù)據(jù)的標(biāo)準(zhǔn)比特流構(gòu)成。每臺(tái)裝備以太網(wǎng)卡的英特網(wǎng)上的計(jì)算機(jī)都能獨(dú)立運(yùn)行,而不需要中心控制器。連接以太網(wǎng)的所有工作站都接入共享信令系統(tǒng),又稱為媒體。發(fā)送數(shù)據(jù)時(shí),工作站首先要查看信道,如果信道空閑,即可以以太幀或數(shù)據(jù)包格式傳輸數(shù)據(jù)。每幀傳輸完畢之后,網(wǎng)絡(luò)各站必須公平爭(zhēng)取下一幀的傳輸機(jī)會(huì)。共享信道的訪問(wèn)取決于嵌入每個(gè)工作站的以太網(wǎng)接口的媒體訪問(wèn)控制機(jī)制。該機(jī)制建立在載波監(jiān)聽(tīng)多路訪問(wèn)/沖突檢測(cè)(csma/cd)基礎(chǔ)上。隨著每個(gè)以太幀發(fā)送到共享信道上,所有以太網(wǎng)接口關(guān)注目標(biāo)地址。如果幀目標(biāo)地址與接口地址相匹配,那么該幀就能被全
29、部讀取并且被發(fā)送到那臺(tái)計(jì)算機(jī)的網(wǎng)絡(luò)軟件上。如果發(fā)現(xiàn)目標(biāo)地址與它們本身的地址不匹配時(shí),所有其它網(wǎng)絡(luò)接口將停止讀幀操作。2.2.2以太網(wǎng)協(xié)議結(jié)構(gòu)以太網(wǎng)技術(shù)的核心是媒體訪問(wèn)控制子層(mac),它決定了以太網(wǎng)的主要網(wǎng)絡(luò)性能。mac子層通常又可以分為幀的封裝/解封和媒體訪問(wèn)控制兩個(gè)功能模塊。一般以太網(wǎng)采用的是ieee802.3標(biāo)準(zhǔn),它的物理傳輸幀是由七個(gè)部分組成的,如表2-1所示:(1)pr:同步位,它是幀的前導(dǎo)碼,包括了七個(gè)字節(jié)的二進(jìn)制,有“0”、“1”交替組成,共56位。它指示一幀的開(kāi)始并接收器接收器均能與到達(dá)幀同步(2)sd: 分隔位,這一位僅在ieee802.3標(biāo)準(zhǔn)里有效,表示接收后面跟隨的是幀
30、數(shù)據(jù),前6位為1,0交替出現(xiàn),后兩位為11。(3)da:目的地址,表示幀準(zhǔn)備發(fā)往的目的地,它的地址6個(gè)字節(jié).當(dāng)目的地址出現(xiàn)全地址時(shí),則是廣播地址,表示該幀數(shù)據(jù)可以被任何局域網(wǎng)接收到。(4)sa:源地址,48位,表明發(fā)送該幀站的地址,即發(fā)送端的網(wǎng)卡地址,與da一樣是6個(gè)字節(jié)。1500則標(biāo)識(shí)幀所攜帶的長(zhǎng)層數(shù)據(jù)類型。 (5)type:類型字段,用于標(biāo)識(shí)數(shù)據(jù)字段中所包含的高層協(xié)議,也就是說(shuō),該字段告訴接收設(shè)備如何歸類解釋不同的數(shù)據(jù)字段。(6)data:數(shù)據(jù)段 ,這個(gè)數(shù)據(jù)段的范圍是46字節(jié)至1500字節(jié)之間。一個(gè)完整的以太網(wǎng)傳輸包最大不能超過(guò)1514字節(jié)。(7)pad:填充位。由于一個(gè)以太網(wǎng)傳輸幀的數(shù)據(jù)
31、包不能小于60字節(jié), 由于da,sa,type 為14個(gè)字節(jié),所以還必須要另外傳輸46字節(jié)的數(shù)據(jù),當(dāng)額外所傳輸?shù)臄?shù)據(jù)仍然不足46字節(jié)時(shí),后面就補(bǔ)000000.等。(8)fcs:數(shù)據(jù)校驗(yàn)位. 它處在幀尾,共占4個(gè)字節(jié),是32位冗余檢驗(yàn)碼(crc),這個(gè)校驗(yàn)由網(wǎng)卡自動(dòng)計(jì)算生成并檢測(cè),在幀尾自動(dòng)加入。表2-1 ieee802.3幀結(jié)構(gòu)表prsddasatypedatafcs同步位分隔位目的地址源地址類型字段數(shù)據(jù)段幀校驗(yàn)序列7166246-1500456位8位48位48位16位不超1500字節(jié)32位除了數(shù)據(jù)段的長(zhǎng)度不定外,其他部分的長(zhǎng)度固定不變,數(shù)據(jù)段的范圍是46至1500個(gè)字節(jié),一個(gè)完整的以太網(wǎng)傳輸
32、包字節(jié)數(shù)最大不能超過(guò)1514。其中da,sa,type 為14個(gè)字節(jié),而且它的最小字節(jié)是不能低于60個(gè)字節(jié)的。由于da、sa、type是14個(gè)字節(jié),則需要額外傳輸46字節(jié)的其他數(shù)據(jù),當(dāng)額外所傳輸?shù)臄?shù)據(jù)仍然不足46字節(jié)時(shí)則需要填充。以上所填充的字符個(gè)數(shù)是在長(zhǎng)度字段之外的,如果傳輸時(shí)字節(jié)超過(guò)1500時(shí),那么就將它需要拆分成多個(gè)幀以方便傳送。實(shí)際上,以太網(wǎng)控制器能夠自動(dòng)產(chǎn)生數(shù)據(jù)段,當(dāng)發(fā)送的da、sa、type填充的數(shù)據(jù)段不足時(shí)。在接收數(shù)據(jù)的過(guò)程中,pr、sd是直接被跳過(guò)的,控制器一旦檢測(cè)到有效前序字段就認(rèn)為接收數(shù)據(jù)開(kāi)始。以太網(wǎng)的硬件能夠自動(dòng)執(zhí)行它的沖突退避算法,因此我們?cè)诰帉?xiě)以太網(wǎng)接口程序時(shí)就不必?fù)?dān)
33、心報(bào)文會(huì)因?yàn)闆_突而發(fā)不出去。2.3本章小結(jié)本章從最基本的概念開(kāi)始,從以太網(wǎng)技術(shù)和以太網(wǎng)協(xié)議兩個(gè)方面介紹了嵌入式網(wǎng)關(guān)的理論基礎(chǔ)。其中在介紹以太網(wǎng)協(xié)議技術(shù)時(shí)著重的接受了以太網(wǎng)的其中一個(gè)通訊協(xié)議,即tcp/ip協(xié)議。tcp/ip協(xié)議在本文中是實(shí)現(xiàn)正常通信的重要部分;同時(shí),本章還對(duì)以太網(wǎng)協(xié)議進(jìn)行了一個(gè)簡(jiǎn)單地介紹,對(duì)以太網(wǎng)協(xié)議的內(nèi)部結(jié)構(gòu)進(jìn)行了一個(gè)說(shuō)明。通過(guò)對(duì)本章的學(xué)習(xí),讀者可以學(xué)習(xí)到關(guān)于以太網(wǎng)技術(shù)、以太網(wǎng)協(xié)議以及tcp/ip協(xié)議的簡(jiǎn)單入門(mén)知識(shí)。第3章 系統(tǒng)硬件設(shè)計(jì) 3.1系統(tǒng)硬件電路本系統(tǒng)是由p89c668提供一個(gè)接口和片外存儲(chǔ)芯片,與以太網(wǎng)控制器協(xié)議轉(zhuǎn)換模塊相連。以太網(wǎng)控制器協(xié)議轉(zhuǎn)換模塊主要由以太網(wǎng)通
34、信控制器rtl8019as和隔離濾波器pm34組成。通過(guò)以太網(wǎng)控制器協(xié)議轉(zhuǎn)換模塊與rj45接口和以太網(wǎng)相連,從而將所得數(shù)據(jù)通過(guò)以太網(wǎng)傳輸?shù)教幚砥髦羞M(jìn)行處理記錄,達(dá)到一個(gè)遠(yuǎn)程監(jiān)控的效果。系統(tǒng)的體系結(jié)構(gòu)如圖3-1所示:圖3-1系統(tǒng)硬件結(jié)構(gòu)圖3.2單片機(jī)基本系統(tǒng)因?yàn)樗x的單片機(jī)需要有大容量的rom和ram空間來(lái)存放程序代碼和tcp/ip協(xié)議的數(shù)據(jù)緩存區(qū),因此我采用的是飛利浦p89c668單片機(jī)。p89c668 有64k的片上 flash存儲(chǔ)器,8k的片上 ram,可以用來(lái)存放和在其中運(yùn)行所固化其中的tcp/ip協(xié)議。p89c668是8oc51單片機(jī)的衍生品,它不但保留了8oc51的總線的兼容性,而且
35、它是一種加速的 80c51 結(jié)構(gòu),指令的執(zhí)行速度是標(biāo)準(zhǔn)8oc51器件的2倍。p89c668的具體特征如下所示: (1)具有80c51的特性并且兼容硬件接口;它有64k的片上 flash存儲(chǔ)器 ,8k的片上 ram并且支持在系統(tǒng)編程(isp)。 (2)它自帶片內(nèi)可工sp和iap編程的flash存儲(chǔ)器;它可以通過(guò)調(diào)用boot rom程序?qū)lash存儲(chǔ)器作isp編程,也可通過(guò)調(diào)用在boot rom中的標(biāo)準(zhǔn)子程序?qū)lash存儲(chǔ)器進(jìn)行擦除和再編程(即iap)。 (3)它的時(shí)鐘周期是可以編程的;它每個(gè)的機(jī)器周期默認(rèn)的是6個(gè)時(shí)鐘周期;每個(gè)機(jī)器周期,但是也可以設(shè)置為12個(gè)時(shí)鐘周期來(lái)進(jìn)行操作; 在默認(rèn)的機(jī)器
36、周期下,它的頻率可以高達(dá)20mhz,也就相當(dāng)于40mhz時(shí)的性能;而在12個(gè)時(shí)鐘周期下它的頻率最高可以達(dá)到33mhz。 (4)它一共具有8個(gè)中斷源和4個(gè)中斷優(yōu)先級(jí)以及4個(gè)8位的i/o口。 (5)它的dart采用的是全雙工,性能非常強(qiáng);它帶有幀錯(cuò)誤檢測(cè)功能并且可以自動(dòng)的識(shí)別地址。(6)為了降低功耗,它的時(shí)鐘在不工作時(shí)可以被中止,再要恢復(fù)工作時(shí)時(shí)鐘可以被恢復(fù);為了進(jìn)一步減少功耗可以讓其處于空閑或者掉電的模式。(7)它兼容87c51硬件接口,可以利用它來(lái)進(jìn)行編程。(8)它有兩個(gè)數(shù)據(jù)指針(dptr)寄存器,可以用來(lái)存放16位地址;(9)它采用的是復(fù)位方式是異步端口復(fù)位,方便了信號(hào)的識(shí)別,節(jié)約了資源;(
37、10)低emi,即禁止地址鎖存使能的實(shí)施(ale);(1l)提供可靠性較高的的iic串行總線接口;(12)提供可編程的計(jì)數(shù)器陣列(pca);捕捉/比較;并且還提供pwm輸出。3.2.1單片機(jī)最小系統(tǒng)單片機(jī)的最小系統(tǒng)包括晶振電路和復(fù)位電路兩部分,只有將這兩部分電路與單片機(jī)結(jié)合起來(lái)才能真正實(shí)現(xiàn)控制核心的作用。1. 晶振電路單片機(jī)的工作的時(shí)間基準(zhǔn)是由晶振電路提供的,晶振電路的來(lái)源有兩種方式:內(nèi)部振蕩方式和外部振蕩方式。在本次的設(shè)計(jì)中,我們采用的是內(nèi)部振蕩的方式來(lái)產(chǎn)生時(shí)鐘信號(hào)。p89c668的內(nèi)部有一個(gè)用于構(gòu)成內(nèi)部振蕩器的反向放大器,xtal1和xyal2兩個(gè)管腳分別是放大器的輸入和輸出,電路中c1和
38、c2是兩個(gè)30pf電容器,它們起到了一個(gè)穩(wěn)定振蕩頻率、快速啟動(dòng)的作用,y1是一個(gè)12mhz的石英晶。在xtal1和xyal2之間接入了c1和c2以及y1就構(gòu)成了單片機(jī)的時(shí)鐘電路。2. 復(fù)位電路單片機(jī)的復(fù)位電路通??梢苑譃槿N,一種是上電復(fù)位,另外兩種是按鍵復(fù)位和內(nèi)部復(fù)位。上電自動(dòng)復(fù)位是通過(guò)電容的充放電來(lái)實(shí)現(xiàn)的;按鍵手動(dòng)復(fù)位是電平復(fù)位方式,通過(guò)reset端經(jīng)電阻與電源vcc接通實(shí)現(xiàn)的。本次設(shè)計(jì)采用的是上電復(fù)位。:當(dāng)單片機(jī)復(fù)位時(shí),芯片中的一部分寄存器和一些引腳都恢復(fù)到了默認(rèn)的值,但是振蕩器是任然處于工作的狀態(tài),單片機(jī)從起始地址0000h開(kāi)始執(zhí)行程序。如圖3-2所示即為單片機(jī)的最小系統(tǒng):圖3-2 單
39、片機(jī)最小系統(tǒng)3.2.2單片機(jī)存儲(chǔ)器電路我們知道,由于單片機(jī)中需要固化部分的協(xié)議,并且需要執(zhí)行和傳輸數(shù)據(jù),因此需要的存儲(chǔ)空間就相對(duì)的大一些,本次設(shè)計(jì)采用24wc256對(duì)單片機(jī)的存儲(chǔ)空間進(jìn)行擴(kuò)展。24wc256的內(nèi)部含有32768個(gè)字節(jié),并且每個(gè)字節(jié)都是8位的數(shù)據(jù)存儲(chǔ)空間。它的電路圖如圖3-3所示:如上圖所示:scl和sda分別為串行時(shí)鐘和串行數(shù)據(jù)/地址,它們分別是一個(gè)輸入和輸出管腳。這兩個(gè)管腳分別與單片機(jī)的p1.6/scl和p1.7/sda相連接,進(jìn)行一個(gè)數(shù)據(jù)和時(shí)鐘的交換。24wc256芯片的存儲(chǔ)地址是16位的,它通常是先發(fā)送高8位的地址,然后是低6位的。它的頁(yè)地址是000000111111,每
40、當(dāng)有一個(gè)數(shù)據(jù)被寫(xiě)進(jìn)來(lái)后,它的低6位地址就會(huì)自動(dòng)加一,直到地址變?yōu)?11111,在有數(shù)據(jù)進(jìn)來(lái)后,就會(huì)被放到000000中去。圖3-3 存儲(chǔ)器電路3.2.3單片機(jī)電源電路 電源是所有電氣設(shè)備不可或缺的部分,根據(jù)產(chǎn)品的不同所需的電源也是不同的,有些產(chǎn)品只要用電池就可以正常完成工作,但是對(duì)一些品來(lái)說(shuō),我們就需要考慮的是怎樣將家用或公用的220v或380v的交流電轉(zhuǎn)換成產(chǎn)品所需要電壓。本次設(shè)計(jì)的電源采用的是將220v交流電轉(zhuǎn)化為單片機(jī)可以使用的5v電源,因此可以直接作為單片機(jī)供電電路用,為了防止電流的反灌,加了一個(gè)二極管。電路圖如圖3-4所示:圖3-4 電源電路如上圖所示,三端穩(wěn)壓器是一種集成電路元件,
41、內(nèi)部由一些三極管和電阻等構(gòu)成,在分析電路時(shí)可簡(jiǎn)單的認(rèn)為這是一個(gè)能自動(dòng)調(diào)節(jié)電阻的元件。lm7805最大可以輸出1a的電流,內(nèi)部有限流式短路保護(hù)。當(dāng)220v電源整流濾波后送入lm7805穩(wěn)壓,在輸出端接一個(gè)470u和0.1u電容進(jìn)一步濾除紋波,得到5v穩(wěn)壓電源,可以供單片機(jī)使用。3.3以太網(wǎng)接口電路 3.3.1以太網(wǎng)控制器芯片rtl8019as rtl8019as是現(xiàn)在應(yīng)用比較廣泛的一種以太網(wǎng)控制器,由于它具有軟件移植性好、接口簡(jiǎn)單、價(jià)格便宜和帶寬充裕的優(yōu)點(diǎn),所以在市場(chǎng)上10mbps網(wǎng)卡中占有相當(dāng)大的比例。其主要性能如下:(1)具備全雙工通訊和功率下降特性,兼容ne2000即插即用適配器;(2)支
42、持10base、bnc和aui接口之間的自動(dòng)檢測(cè);(3)有8/16位的數(shù)據(jù)總線,有8個(gè)中斷申請(qǐng)線以及16個(gè)i/o基地址選擇;(4)支持utp、aui、bnc的自動(dòng)檢測(cè)功能,還支持對(duì)10baset拓?fù)浣Y(jié)構(gòu)的自動(dòng)極性修正;(5)集成了媒體訪問(wèn)控制子層和物理層的功能,可以方便的用來(lái)設(shè)計(jì)基于(isa)總線的網(wǎng)絡(luò)系統(tǒng),也可以簡(jiǎn)單地實(shí)現(xiàn)與單片機(jī)的互聯(lián);(6)采用的是pqfp封裝,有100個(gè)引腳,大大縮小了pcb板的尺寸,允許3個(gè)診斷l(xiāng)ed引腳可編程輸出。按數(shù)據(jù)鏈路的不同,可以將rtl8019as內(nèi)部寄存器分為兩部分:一部分是rtl8019as定義寄存器和ne2000兼容寄存器,這部分寄存器分為4頁(yè),每頁(yè)1
43、6個(gè)寄存器,單片機(jī)通過(guò)指令設(shè)置命令寄存器cr中的ps0、ps1兩位來(lái)尋址不同的頁(yè),通過(guò)16個(gè)i/o端口地址來(lái)尋址頁(yè)內(nèi)寄存器;另一部分為即插即用寄存器。3.3.2 rtl8019as工作原理由于選用的p89c668是一個(gè)8位的單片機(jī),因此要選擇的以太網(wǎng)控制芯片必須支持8位的工作狀態(tài)。rtl8019as是針對(duì)pc機(jī)的isa總線設(shè)計(jì)的,現(xiàn)在運(yùn)用于p89c668單片機(jī)設(shè)備中,在硬件和軟件的設(shè)計(jì)上有一些特殊性,p89c668單片機(jī)能夠?qū)tl8019as內(nèi)部的寄存器映射成片外ram寄存器來(lái)訪問(wèn)。本地的dma是通過(guò)網(wǎng)線來(lái)和外面的數(shù)據(jù)來(lái)進(jìn)行交換的,它的操作是由控制器本身來(lái)完成的,因此單片機(jī)在收發(fā)數(shù)據(jù)的時(shí)候只
44、要對(duì)遠(yuǎn)程的dma進(jìn)行操作就可以了。當(dāng)處理器要發(fā)送數(shù)據(jù)到網(wǎng)上時(shí),它可以通過(guò)遠(yuǎn)程dma通道,先將一幀的數(shù)據(jù)送到rtl8019as中的發(fā)送緩存區(qū),然后在發(fā)出傳送數(shù)據(jù)幀的命令。rtl8019as在完成了上一幀的數(shù)據(jù)發(fā)送后,再完成這一幀數(shù)據(jù)的發(fā)送。rtl8019as會(huì)把收到的數(shù)據(jù)先通過(guò)mac比較后,在進(jìn)行crc的校驗(yàn),最后通過(guò)fifo存到接收緩存區(qū)之中 ,最后以中斷或寄存器標(biāo)志的方式來(lái)通知單片機(jī),待接收緩存區(qū)中收集滿一幀的數(shù)據(jù)值之后。rtl8019as工作原理如圖3-5所示。圖3-5 rtl8019as工作原理 rtl8019as的dma與我們一般在微機(jī)組成原理上看到的的dma有不同,它們之間存在著一點(diǎn)
45、差別。rtl8019as的本地 dma操作是由以太網(wǎng)控制器本身所來(lái)完成完成的,而其遠(yuǎn)程dma則是需要在單片機(jī)的參與下才能夠完成操作,這樣數(shù)據(jù)幀才能發(fā)送到單片機(jī)的內(nèi)存中。與dma有關(guān)的寄存器如圖3-6所示:圖3-6與dma有關(guān)的寄存器rtl8019as內(nèi)部還有一個(gè)16kb的sram,它由接收緩沖以及發(fā)送緩沖兩個(gè)部分組成。具體結(jié)構(gòu)如圖3-7所示。 設(shè)定接收緩沖頁(yè)的范圍是pstart和pstop寄存器;設(shè)定發(fā)送緩沖頁(yè)范圍的是rsar0、rsar1和rbcr0、rbcr1寄存器。 圖3-7接收發(fā)送緩沖區(qū)工作示意圖3.3.3片內(nèi)dma地址空間分配在以太網(wǎng)控制器rtl8019as中,它本身是含有ram的,
46、大小為16k字節(jié),它的地址范圍是0x4000到0x7fff。其中,我們又用頁(yè)對(duì)它進(jìn)行了劃分,一頁(yè)的話有256個(gè)字節(jié),因此總共的地址范圍是為64頁(yè)。我們通常把地址的高8位又叫做頁(yè)的地址,因此頁(yè)地址的范圍為0x40-0x7f。這16k的ram是分兩部分來(lái)使用的,我們通常把一部分用來(lái)存放接收到的數(shù)據(jù)包,而另一部分則用來(lái)存儲(chǔ)待發(fā)送的數(shù)據(jù)包,如表3-1,則為rtl8019as內(nèi)部ram的使用情況。表3-1 rtl8019as內(nèi)部ram使用 如表3-1所示,其中pstart和pstop中分別存放著接收緩沖區(qū)的起始頁(yè)地址和結(jié)束頁(yè)地址,尤其需要指明的是pstop不能用來(lái)接收;bnry是起到了一個(gè)讀指針的作用,
47、即它用來(lái)指向最后一個(gè)已經(jīng)讀的頁(yè);curr是當(dāng)接收結(jié)束時(shí),當(dāng)前頁(yè)的地址,起到了寫(xiě)指針的作用。3.4以太網(wǎng)接口電路設(shè)計(jì)以太網(wǎng)控制器協(xié)議轉(zhuǎn)換模塊主要由微控制器p89c668、以太網(wǎng)通信控制器rtl8019as和隔離濾波器pm34組成。所設(shè)計(jì)的以太網(wǎng)接口電路,是針對(duì)嵌入式網(wǎng)關(guān)設(shè)計(jì)監(jiān)控通信的實(shí)現(xiàn)。rtl8019as在復(fù)位上升沿鎖定iocs16b腳的電平,它的值決定了數(shù)據(jù)總線的寬度:如果iocs16b腳的電平為高電平的話,則數(shù)據(jù)總線為16位總線方式,反之為8位總線方式。rtl8019as的工作方式一般有三種,分別是:(1) 跳線方式:跳線決定了網(wǎng)卡的i/o口和中斷都由;(2)即插即用方式:pnp是由軟件自
48、動(dòng)進(jìn)行配置的;(3) 免跳線方式:從外部接入的93c46它里面的內(nèi)容來(lái)決定網(wǎng)卡的i/o和中斷。我們選擇的是跳線方式,即rtl8019as為8位模式,在設(shè)計(jì)中,我們使用rtl8019as的低5位地址線sa0sa4以及低8位數(shù)據(jù)線sd0sd7。將rtl8019as的低5位地址線與p89c668的高8位地址線連接,然后再將rtl8019as的低8位的數(shù)據(jù)線與p89c668的低8位數(shù)據(jù)線相連接。rtl8019as還將其網(wǎng)絡(luò)收發(fā)器的4根引腳out、out、in、in相連接,通過(guò)外接的隔離濾波器pm34與以太網(wǎng)相連。采用隔離濾波器pm34是為了提高網(wǎng)絡(luò)通信的抗干擾能力。電路中iocs16b是16位或8位i
49、/o的選擇腳。當(dāng)上電復(fù)位的時(shí)候,這個(gè)腳為芯片的輸入腳,如果這個(gè)腳為低電平,網(wǎng)卡將選擇8位模式,如果這個(gè)腳為高電平,網(wǎng)絡(luò)控制器將選擇16位的模式,本電路用了個(gè)電阻r9(27k)下拉,因此在復(fù)位時(shí),這個(gè)腳為低電平,網(wǎng)卡選擇8位模式。,具體電路如圖3-8所示 。由于rtl8019as每個(gè)引腳(除aen外)內(nèi)部都有100k的下拉電阻置地,故當(dāng)各引腳懸空時(shí)內(nèi)部檢測(cè)為低電平,由上圖可知85腳、84腳、82腳、81腳分別空。從而選擇了基地址300h, 則其內(nèi)部寄存器地址硬件配置如表3-2所示。36腳43腳為數(shù)據(jù)輸入輸出口直接連接到單片機(jī)p0口。rtl8019as有三個(gè)分別反映其工作狀態(tài)的輸出引腳,它們分別為
50、led0(led_col|led_link)、led1(led_rx|led_crs)以及l(fā)ed2(led_tx|mcsb),分別輸出網(wǎng)絡(luò)的連接性、數(shù)據(jù)發(fā)送和數(shù)據(jù)輸出等狀態(tài)。表3-2 rtl8019as硬件地址分配地址a19a10a9a8a7a6a5a4a3a2a1a0300h0011000000003*h0011000*31fh001100011111當(dāng)rtl8019as選擇了基地址為300h時(shí),則電路擴(kuò)展就要以此為基準(zhǔn)來(lái)進(jìn)行配置,rtl8019as地址線a19a10固定接地,a9、a8定接p2.5作為地址選擇端,由單片機(jī)來(lái)控制而不是用34腳aen(直接接地)來(lái)作為地址選擇端。根據(jù)地址分配表
51、將a7,a6,a5固定接地,a4a0要根據(jù)所要訪問(wèn)的rtl8019as寄存器地址不同而不同,由單片機(jī)的地址線(由p89c668的p2.0p2.4來(lái)選擇300h31fh)來(lái)選擇。具體單片機(jī)接口尋址配置如表3-3和3-4所示。圖3-8以太網(wǎng)與單片機(jī)的接口電路圖由表可知在電路中單片機(jī)對(duì)rtl8019as的i/o進(jìn)行尋址并不是連續(xù)的,(僅有p2口來(lái)選擇地址,而p0口并沒(méi)有參與地址編址,只用來(lái)作為數(shù)據(jù)總線,為了尋址編程方便故在地址中全為0,程序中分別定義reg00reg1f來(lái)分別對(duì)應(yīng)300h31fh端口,定義如下:#define reg00 xbyte0xe000 /* 300h*/#define re
52、g01 xbyte0xe100 /* 301h*/#define reg02 xbyte0xe200 /* 302h*/. . . #define reg1f xbyte0xff00 /* 31fh*/表3-3單片機(jī)與rtl8019as接口地址線sa8,9/addr13sa4/addr12sa3/addr11sa2/addr10sa1/addr9sa0/addr81xxxxxp2口p2.5p2.4p2.3p2.2p2.1p2.01xxxxx表3-4單片機(jī)與rtl8019as對(duì)應(yīng)地址單片機(jī)也就是dphrtl8019as(i/o)(11)10 0000 0xe0300h(11)1x xxxx3xx
53、h(11)11 1111 0xff31fhrtl8019as一共有32位的輸入輸出地址,它的偏移量為00h至1fh,寄存器地址為16個(gè),地址范圍是00h至0fh。我們將寄存器分為了4頁(yè),分別為page0、page1、page2和page3,是否訪問(wèn)該頁(yè)是cr中的ps1、ps0位來(lái)決定的。但由于前3頁(yè)寄存器的與ne2000兼容,因此只有page3是rtl8019as自己定義的。由于遠(yuǎn)程dma地址每個(gè)都是相同的,所以只用其一即可。它們的地址范圍為10h至17h,一共是8個(gè)。復(fù)位端口一共有8個(gè),地址范圍是18h到1fh,它們的端口功能都是一樣的,都是用于rtl8019as的復(fù)位,因此只用一個(gè)就可以了
54、。 因?yàn)樯厦嫖覀冞x擇的是8位的操作工作方式,則我們也可以得出18個(gè)有用的地址。根據(jù)它們的地址和功能的不同,我們將rtl8019as的寄存器組分為兩組,一組是ne2000,另一組是pnp.在本課題中主要用的是ne2000寄存器,在這組寄存器中共包括4頁(yè)寄存器,每頁(yè)都可以由cr寄存器中的ps0和ps1來(lái)選擇。每一頁(yè)包含16個(gè)寄存器。其中cr命令寄存器在程序中擔(dān)負(fù)讀寫(xiě)以太網(wǎng)數(shù)據(jù),啟動(dòng)和停止發(fā)送命令和選擇寄存器頁(yè)碼等,對(duì)程序的成功運(yùn)行起了很大作用。其描述如表3-5所示。表3-5 cr命令寄存器描述3.5串行通信接口電路計(jì)算機(jī)與計(jì)算機(jī)之間或者計(jì)算機(jī)與終端之間,它們有兩種方式來(lái)傳輸數(shù)據(jù)一種是串行通訊另一種
55、是并行通訊。但由于串行通訊成本低以及通信距離遠(yuǎn)等優(yōu)點(diǎn),本系統(tǒng)采用串行通信全雙工的方式進(jìn)行通信。rs-232c是個(gè)人計(jì)算機(jī)上常用的通訊接口之一,由于串行通信是一位一位的在一根傳輸線上傳送信息,所用的傳輸線少,并且可以借助現(xiàn)成的電話網(wǎng)進(jìn)行信息傳送,因此,特別適合于遠(yuǎn)距離傳輸通常。rs-232 接口以9個(gè)引腳 (db-9) 或是25個(gè)引腳 (db-25) 的型態(tài)出現(xiàn),本次設(shè)計(jì)采用的是9個(gè)引腳 (db-9)。本串口硬件電路采用傳統(tǒng)的電平轉(zhuǎn)換芯片max232來(lái)進(jìn)行ttl與rs-232c之間的電平轉(zhuǎn)換,因?yàn)樗膬?nèi)部有專門(mén)的升壓電路,所以可以把輸入的+5v電源變換成為rs-232c輸出電平所需的10v電壓。
56、因此外部只要接入+5v的電壓就可以了,接口非常的方便實(shí)用,芯片不易損壞,電路圖如3-9所示。10腳(t2in)和11腳(t1in)是ttl/cmos電平信號(hào)輸入腳,其一與p89c668的txd引腳相連,同理9腳(r2out)和12腳(r1out)與p89c668的rxd引腳相連;8腳(r2in)和13腳(r1in)為rs-232電平輸入引腳,與db9的發(fā)送引腳相連,同理7腳(t2out)和14腳(t1out)與db9的接收引腳相連。其中11腳和12腳分別與單片機(jī)的txd和rxd(即11腳p3.0/rxd與13腳p3.1/txd)接口相連接。圖3-9 串行接口電路3.6pcb板的繪制對(duì)一件產(chǎn)品的開(kāi)發(fā),pcb板的繪制是極其重要的,它是產(chǎn)品硬件設(shè)計(jì)的開(kāi)發(fā)前序和軟件開(kāi)發(fā)的必備。要想繪制pcb板,則要經(jīng)過(guò)以下幾個(gè)步驟:1、利用原理圖設(shè)計(jì)工具繪制原理圖,并且生成對(duì)應(yīng)的網(wǎng)絡(luò)表;2、手工更改網(wǎng)絡(luò)表更改元件上與庫(kù)中不同的引腳或;3、畫(huà)出自己定義的非標(biāo)準(zhǔn)器件的封裝庫(kù);4、繪制pcb板;5、布線。繪制的pcb板如圖3-10所示:圖3-10 pcb板3.7本章小結(jié)本章主要是對(duì)嵌入式網(wǎng)關(guān)硬件部分電路的設(shè)計(jì),它主要包括三個(gè)部分:?jiǎn)纹瑱C(jī)系統(tǒng)、以太網(wǎng)接口電路和串行通信接口
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 施工現(xiàn)場(chǎng)施工防臺(tái)風(fēng)災(zāi)害制度
- 施工現(xiàn)場(chǎng)安全管理制度的國(guó)際比較與借鑒
- 施工單位關(guān)于現(xiàn)場(chǎng)布置的工作聯(lián)系函
- 科技輔助小學(xué)語(yǔ)文教學(xué)的策略與實(shí)踐
- 飯店生產(chǎn)安全事故應(yīng)急預(yù)案
- 食品安全的應(yīng)急預(yù)案
- DB6528T 146-2024庫(kù)爾勒香梨雜交育種技術(shù)規(guī)程
- DB3702T 46.2-2024地理標(biāo)志產(chǎn)品 平度大花生 第2部分:質(zhì)量標(biāo)準(zhǔn)
- 專賣(mài)店員工聘用合同標(biāo)準(zhǔn)格式
- 個(gè)人信用抵押借款合同2025
- 燈謎大全及答案1000個(gè)
- 白酒銷售經(jīng)理述職報(bào)告
- 六年級(jí)英語(yǔ)上冊(cè)綜合測(cè)試卷(一)附答案
- 部編小學(xué)語(yǔ)文(6年級(jí)下冊(cè)第6單元)作業(yè)設(shè)計(jì)
- 洗衣機(jī)事業(yè)部精益降本總結(jié)及規(guī)劃 -美的集團(tuán)制造年會(huì)
- 2015-2022年湖南高速鐵路職業(yè)技術(shù)學(xué)院高職單招語(yǔ)文/數(shù)學(xué)/英語(yǔ)筆試參考題庫(kù)含答案解析
- 2023年菏澤醫(yī)學(xué)??茖W(xué)校單招綜合素質(zhì)模擬試題及答案解析
- 鋁合金門(mén)窗設(shè)計(jì)說(shuō)明
- 常見(jiàn)食物的嘌呤含量表匯總
- 小學(xué)數(shù)學(xué)-三角形面積計(jì)算公式的推導(dǎo)教學(xué)設(shè)計(jì)學(xué)情分析教材分析課后反思
- 人教版數(shù)學(xué)八年級(jí)下冊(cè)同步練習(xí)(含答案)
評(píng)論
0/150
提交評(píng)論