freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

嵌入式webserver的設(shè)計(jì)與實(shí)現(xiàn)(專業(yè)版)

2025-08-10 23:39上一頁面

下一頁面
  

【正文】 IP數(shù)據(jù)報(bào)TCP數(shù)據(jù)報(bào)IP首部TCP首部TCP數(shù)據(jù) 圖45 TCP數(shù)據(jù)在IP數(shù)據(jù)報(bào)中的封裝TCP協(xié)議包含的程序,(1) init_ tcp(void)初始化TCP協(xié)議(2) Tcp_send(UINT flags, DINT hdr_len, UCHAR nr)發(fā)送TCP(3) Tcp_ retransmit(void)重發(fā)TCP數(shù)據(jù)(4) Tcp_ inactivity(void)停止TCP(5) Tcp_ rcve(UCHAR xdata*inbuf, UINT len)接收TCP數(shù)據(jù)。(4)客戶機(jī)為響應(yīng)服務(wù)器的關(guān)閉,向服務(wù)器發(fā)出關(guān)閉一應(yīng)答段??蛻魴C(jī)請(qǐng)求對(duì)端接入時(shí),要隨機(jī)地選送一個(gè)初始序號(hào)。 但是對(duì)于WEB服務(wù)器而言,其實(shí)際在使用并沒有涉及到TCP所規(guī)定的所有狀態(tài),因此,我們可以考慮對(duì)其進(jìn)行簡(jiǎn)化。在嵌入式Internet中,一般使用Ping應(yīng)答來報(bào)告嵌入式系統(tǒng)是否處在正常運(yùn)行當(dāng)中,一般可不用實(shí)現(xiàn)Ping請(qǐng)求。雖然ICMP報(bào)文由IP數(shù)據(jù)報(bào)傳輸,但并不把它當(dāng)成比IP更高層的協(xié)議,而把它當(dāng)作IP的一個(gè)擴(kuò)展,因?yàn)樗⒉皇巧蠈訁f(xié)議賴以存在的基礎(chǔ),而只用來提供主機(jī)與主機(jī)或主機(jī)與路由器之間傳達(dá)控制和差錯(cuò)信息。整個(gè)ARP處理過程,主要用下面幾個(gè)函數(shù)實(shí)現(xiàn):(1)void init_arp(void)初始化ARP;(2)void arp_send(UCHAR * hwaddr, ULONG ipaddr, UCHAR msg_type) ARP請(qǐng)求;(3)void arp_rcve(UCHAR xdata *) ARP應(yīng)答;(4)UCHAR xdata * arp_resolve(ULONG) ARP回應(yīng)處理;(5)void age_arp_cache(void) Aged out a cache entry;(6)void arp_retransmit(void) ARP重新發(fā)送。對(duì)RTL8019接收數(shù)據(jù)操作,有查詢和中斷兩種方式。當(dāng)上述條件不成立時(shí),表示接收到新的數(shù)據(jù)包。在程序中用0x40~0x4B共12頁作為網(wǎng)卡的發(fā)送緩沖區(qū),剛好可以存儲(chǔ)2個(gè)最大的以太網(wǎng)包。因?yàn)椴捎肅語言編程,所以代碼便于閱讀和移植。填充碼:為了使數(shù)據(jù)為4個(gè)字節(jié)(32比特)的整數(shù)倍而添加“0”的調(diào)整字段。 TCP數(shù)據(jù)包的結(jié)構(gòu)如表37所示:表37 TCP首部 0 15 16 3116位源端口號(hào)16位目的端口號(hào)32位序列號(hào)32位確認(rèn)號(hào)4位首部長度保留(6位)URGACKPSHRSTSYNFIN16位窗口大小16位TCP檢驗(yàn)和16位緊急指針選項(xiàng)(若有)數(shù)據(jù)(若有) TCP消息段的字段描述如下:源/目的端口號(hào):發(fā)送端主機(jī)與接收端主機(jī)的端口號(hào),具有16比特的長度。這意味著,UDP客戶機(jī)向指定的遠(yuǎn)端主機(jī)發(fā)送數(shù)據(jù)包時(shí),并未事先確知對(duì)方是做好了接收數(shù)據(jù)的準(zhǔn)備的。在TCP/IP協(xié)議族中,有兩個(gè)互不相同的傳輸協(xié)議:TCP(傳輸控制協(xié)議)和UDP(用戶數(shù)據(jù)報(bào)協(xié)議)。ARP協(xié)議的功能是為32位IP地址到對(duì)應(yīng)的48位以太網(wǎng)物理地址之間提供動(dòng)態(tài)映射,將上層的IP地址與底層的物理地址進(jìn)行綁定,它形成了只能使用IP地址的上層協(xié)議軟件與只能使用物理地址的下層設(shè)備驅(qū)動(dòng)程序軟件之間的分界線。TCP傳給IP的數(shù)據(jù)單元稱作TCP報(bào)文段或簡(jiǎn)稱為TCP段(TCP segment)。D0~D7接單片機(jī)的P7口,/OE接單片機(jī)的RD,/WR接單片機(jī)的/WR,/。其中芯片的I/0地址由引腳8882和81來決定。RAM按頁存儲(chǔ),采用分頁的方式管理,每256字節(jié)為一頁。單片機(jī)收發(fā)數(shù)據(jù)只需要對(duì)遠(yuǎn)程DMA操作。本設(shè)計(jì)中沒有使用中斷方式,使用查詢方式。(2)全雙工,收發(fā)可同時(shí)達(dá)到10MBPS的速率。 (3)MCU直接實(shí)現(xiàn)形式。所謂的TCP/IP協(xié)議是一個(gè)四層協(xié)議系統(tǒng),包括數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層(含IP協(xié)議)、傳輸層(含TCP協(xié)議)和應(yīng)用層,每一層負(fù)責(zé)不同的功能。[2] 嵌入式Internet的研究意義及目的目前國內(nèi)單片機(jī)的應(yīng)用非常廣泛,大多數(shù)系統(tǒng)是以51單片機(jī)為核心,與檢測(cè)、伺服、顯示設(shè)備配合起來實(shí)現(xiàn)監(jiān)控功能。在制造工業(yè)、過程控制、通訊、儀器、儀表、汽車、船舶、航天、軍事裝備、消費(fèi)類產(chǎn)品等方面均是嵌入式計(jì)算機(jī)的應(yīng)用領(lǐng)域。嵌入式硬件部分主要由嵌入式處理器,嵌入式外圍設(shè)備等構(gòu)成。在個(gè)人領(lǐng)域中,嵌入式產(chǎn)品將主要作為個(gè)人移動(dòng)的數(shù)據(jù)處理和通信軟件。在廣播電視領(lǐng)域,嵌入式軟件技術(shù)和數(shù)字技術(shù)的結(jié)合,造就了家電行業(yè)的未來發(fā)展方向-信息家電。這一點(diǎn)就決定了它必然是一個(gè)技術(shù)密集、資金密集、高度分散、不斷創(chuàng)新的知識(shí)集成系統(tǒng)。嵌入式系統(tǒng)以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。三是直接實(shí)現(xiàn)方案,即在8位單片機(jī)中實(shí)現(xiàn)TCP/IP協(xié)議來實(shí)現(xiàn)Internet的接入功能。回復(fù)信息到局域網(wǎng)的過程與上面正好相反。EMIT采用桌面計(jì)算機(jī)或高性能的嵌入式處理器作為網(wǎng)關(guān),稱為emGateway,上面支持TCP/IP協(xié)議并運(yùn)行HTTP服務(wù)程序,形成一個(gè)用戶可以通過網(wǎng)絡(luò)瀏覽器進(jìn)行遠(yuǎn)程訪問的服務(wù)器。片內(nèi)JTAG調(diào)試電路提供全速,非侵入式的電路內(nèi)調(diào)試。2.1C8051F020與RTL8019AS接口電路設(shè)計(jì)中的幾個(gè)問題:(1)I/O地址:RTL8019AS的第65腳JP決定網(wǎng)卡的工作方式,本設(shè)計(jì)中JP腳接高電平(VCC),即使用跳線方式。會(huì)自動(dòng)測(cè)接口類型是用同軸電纜還是雙絞線。RTL8019AS的本地DMA操作是由控制器本身完成的,而其遠(yuǎn)程DMA并不是在無處理器的參與下,數(shù)據(jù)能自動(dòng)移到主處理器的內(nèi)存中,它的操作機(jī)制是這樣的:主處理器先賦值與遠(yuǎn)程DMA的起始地址寄存器RSAR0、RSAR1和字節(jié)計(jì)數(shù)器RR0、RBCR1,然后在RTL8019AS的DMA I/O地址上讀寫指定地址上的數(shù)據(jù)。這些是和NE2000兼容的寄存器件,和RTL8019AS本身設(shè)置相關(guān)的寄存器放在PAGE3里,PAGE3是RTL8019AS自己定義的,對(duì)于其它兼容NE2000的芯片如DM9008無效。 外部數(shù)據(jù)存儲(chǔ)器62256和鎖存器74HC573使用外部RAM 62256的目的是提高單片機(jī)的數(shù)據(jù)傳輸速度和進(jìn)行復(fù)雜的TCP/IP處理。本文僅介紹與嵌入式WEB SERVER編程密切相關(guān)的部分:TCP/IP協(xié)議的分層結(jié)構(gòu)及其報(bào)文格式。知道主機(jī)的IP地址并不能讓以太網(wǎng)驅(qū)動(dòng)程序發(fā)送一幀數(shù)據(jù)給主機(jī),以太網(wǎng)驅(qū)動(dòng)程序必須知道目的端的硬件地址才能發(fā)送數(shù)據(jù)。表33 IP數(shù)據(jù)報(bào)格式及首部中的各個(gè)字段4位版本4位首部長度8位服務(wù)類型(TOS)16位總長度(字節(jié))16位標(biāo)識(shí)3位標(biāo)志13位片偏移8位生存時(shí)間(TTL)8位協(xié)議16位首部檢驗(yàn)和32位源IP地址32位目的IP地址32位選項(xiàng)(若有)數(shù)據(jù) ICMP協(xié)議概述ICMP協(xié)議主要用來傳遞差錯(cuò)報(bào)文以及其它需要注意的信息。但是由于TCP所傳數(shù)據(jù)流應(yīng)用了順序號(hào)和應(yīng)答措施,可以發(fā)現(xiàn)數(shù)據(jù)的丟失、段的失序和對(duì)傳輸錯(cuò)誤的排除,所以TCP協(xié)議提供的是數(shù)據(jù)流的可靠傳輸。檢驗(yàn)和覆蓋整個(gè)UDP長度。校驗(yàn)和:用來確認(rèn)TCP報(bào)頭與數(shù)據(jù)是否被破壞的字段;緊急指針:以字節(jié)為單位表示放置需要緊急處理的數(shù)據(jù)的位置。以太網(wǎng)協(xié)議由芯片硬件自動(dòng)完成,不用考慮。這16 KB的RAM的一部分用于存放接收的數(shù)據(jù)包,一部分用于存儲(chǔ)待發(fā)送的數(shù)據(jù)包。CURR和BNRY主要用來控制緩沖區(qū)的存取過程,保證能順次寫入和讀出。因?yàn)镻AGEZ的寄存器是只讀寄存器,所以不能和不需要設(shè)置。當(dāng)系統(tǒng)收到一個(gè)目的IP地址為本機(jī)的IP地址的ARP請(qǐng)求報(bào)文后,它就把MAC地址填上去,然后用兩個(gè)目的端地址分別替換兩個(gè)發(fā)送端地址,并把操作字段置為2,最后把它發(fā)送出去。 該子程序檢測(cè)一個(gè)外來的數(shù)據(jù)包,并對(duì)數(shù)據(jù)包作相應(yīng)的處理。經(jīng)過簡(jiǎn)化的ping能夠完成最基本的連通測(cè)試功能。TCP協(xié)議可以用有限狀態(tài)機(jī)來描述的,有限狀態(tài)機(jī)是這樣一種機(jī)器,它通過有限個(gè)狀態(tài),并且在某一時(shí)刻只能處于某個(gè)狀態(tài)。作為對(duì)服務(wù)器所發(fā)請(qǐng)求接入的響應(yīng)。仍可接收數(shù)據(jù)?;瑒?dòng)窗口的一個(gè)極限情況是只使用一個(gè)窗口,這便成了一種簡(jiǎn)單的確認(rèn)方法。標(biāo)準(zhǔn)的WEB服務(wù)器通過多線程或多進(jìn)程同時(shí)處理來自多個(gè)客戶機(jī)的連接,但考慮到單片機(jī)的處理能力以及存儲(chǔ)空間大小,并不用實(shí)現(xiàn)這樣的功能,而只實(shí)現(xiàn)一次只處理與一個(gè)客戶機(jī)的連接。需要有一個(gè)間歇時(shí)間,避免前后兩次接入產(chǎn)生牽連。消除傳輸中的錯(cuò)誤,依靠持續(xù)跟蹤已發(fā)出數(shù)據(jù)段的應(yīng)答是否返回。從而實(shí)現(xiàn)TCP的狀態(tài)機(jī)的功能。這與面向流字符的TCP協(xié)議不同,UDP數(shù)據(jù)包封裝成一份IP數(shù)據(jù)包的格式如圖44所示。代碼字段提供關(guān)于類型字段的進(jìn)一步信息。(3)由于以太網(wǎng)數(shù)據(jù)報(bào)最小為60字節(jié),而整個(gè)ARP報(bào)文(28字節(jié))加上以太網(wǎng)首部(14字節(jié))也不過只有42字節(jié),因而在發(fā)送ARP數(shù)據(jù)報(bào)時(shí),需要填充數(shù)據(jù)報(bào)至60字節(jié)。當(dāng)BNRY+1與CURR不等時(shí),說明接收緩沖區(qū)接收到了新的數(shù)據(jù)幀。初始化為指向第一個(gè)發(fā)送緩沖區(qū)的頁0x40。開始時(shí)網(wǎng)卡沒有接收到任何數(shù)據(jù)包,所以BNRY設(shè)置為指向第一頁接收緩沖區(qū)的地址0x4c。這些寄存器包括CR、DCR、RBCI之、PSTART、PSTOP、ISR、IMR、PARO-PARS、MARO-MARS、CURR、TCR和RCR等。應(yīng)用層負(fù)責(zé)對(duì)接收的數(shù)據(jù)提供解釋服務(wù),對(duì)嵌入式系統(tǒng)來說兩個(gè)重要的協(xié)議是超文本傳輸協(xié)議HTTP和文本傳輸協(xié)議FTP。ACK(應(yīng)答確認(rèn))號(hào):用于保證可靠性的確認(rèn)代碼。也就是說,如果遠(yuǎn)端主機(jī)不能接收發(fā)去的UDP數(shù)據(jù)的話,客戶機(jī)還可以獲得一定的提示的。由于運(yùn)輸層提供了高可靠性的端到端的通信,因此應(yīng)用層可以忽略所有這些細(xì)節(jié)。如果查詢失敗,ARP會(huì)先廣播一個(gè)詢問目的主機(jī)硬件地址的ARP報(bào)文,等到收到回答后再將數(shù)據(jù)包發(fā)送出去。應(yīng)用程序TCPIP以太網(wǎng)驅(qū)動(dòng)程序應(yīng)用數(shù)據(jù)TCP首部IP首部應(yīng)用數(shù)據(jù)TCP首部IP首部以太網(wǎng)首部以太網(wǎng)尾部 用戶數(shù)據(jù)用戶數(shù)據(jù)Appl首部應(yīng)用數(shù)據(jù)TCP首部 TCP段IP數(shù)據(jù)報(bào) 14 20 20 4 以太網(wǎng) 以太網(wǎng)幀 46~1500字節(jié)圖32數(shù)據(jù)進(jìn)入?yún)f(xié)議棧時(shí)的封裝過程圖32中幀頭和幀尾下面所標(biāo)注的數(shù)字是典型以太網(wǎng)幀首部的字節(jié)長度。 RS232串行通信接口電路PC機(jī)與單片機(jī)通信的RS232通信接口電路原理圖24所示:C8051F020的TX0與RX0腳連接在RS232接口芯片上MAX232E上。RTL8019AS上的其它15根地址線按照I/O基地址的設(shè)置(0B000000000011000XXXXX)分別接地或者高電平。要接收或發(fā)送數(shù)據(jù)包就必須通過DMA讀寫RTL8019AS內(nèi)部的16KB RAM。RTL8019AS接收到的數(shù)據(jù)通過MAC比較、CRC校驗(yàn)后,由FIFO存到接收緩沖區(qū),收滿一幀后,以中斷或寄存器標(biāo)志的方式通知主處理器。(4)BROM:未用到BROM,引腳776667懸空即可。(4)支持8/16位數(shù)據(jù)總線,8個(gè)中斷申請(qǐng)線以及16個(gè)I/O基地址選擇,允許4個(gè)診斷LED引腳可編程輸出。FLASHC8051F020RTL8019ASPM34_1006MRJ45接口JTAGMAX232RS232接口SRAM圖 2-1 硬件系統(tǒng)框圖接口電路主要由MCU、網(wǎng)絡(luò)控制器、傳輸接口等構(gòu)成。當(dāng)然,還可以根據(jù)需要附加其它的協(xié)議功能。同時(shí),隨著Internet的普及,現(xiàn)代通信技術(shù)的進(jìn)步,基于TCP/IP和Client/ Server架構(gòu)的分布式監(jiān)控技術(shù)也日趨成熟。嵌入式產(chǎn)品成為信息產(chǎn)業(yè)的主流。嵌入式處理器是嵌入式系統(tǒng)硬件中的核心的部分。今天面對(duì)的是嵌入式系統(tǒng)工業(yè)化的潮流,嵌入式軟件必須以工業(yè)化的方式生產(chǎn)開發(fā),這對(duì)加速知識(shí)創(chuàng)新和建立面向新世紀(jì)的知識(shí)經(jīng)濟(jì)具有戰(zhàn)略意義。 嵌入式系統(tǒng)的發(fā)展及現(xiàn)狀嵌入式概念早在20世紀(jì)60年代末己被提出,在經(jīng)歷了二、三十年的緩慢發(fā)展后,截止到上世紀(jì)90年代,它獲得了全面的應(yīng)用和發(fā)展。它用于實(shí)現(xiàn)對(duì)其他設(shè)備的控制、監(jiān)視或管理等功能。外圍設(shè)備是指在一個(gè)嵌入式系統(tǒng)中,除了嵌入式處理器以外用于完成存儲(chǔ)、通信、調(diào)試、顯示等輔助設(shè)備功能的其他部件。此時(shí)把PC作為網(wǎng)關(guān),并由PC把該網(wǎng)絡(luò)上的信息轉(zhuǎn)換為TCP/IP協(xié)議數(shù)據(jù)包,發(fā)送到Internet上實(shí)現(xiàn)信息共享。由于大部分局域網(wǎng)都采用以太網(wǎng),這里的RTL8019AS就是用于處理以太網(wǎng)協(xié)議(IEEE )的。2. 硬件系統(tǒng)設(shè)計(jì)利用單片機(jī)實(shí)現(xiàn)嵌入式TCP/IP系統(tǒng),大體可有以下三種形式:(1)MCU+專用網(wǎng)絡(luò)芯片,如E155Web chip PS2000等。(2)片內(nèi)具有4KB的SRAM,64KB的Flash,無需外擴(kuò)資源,內(nèi)部4KB的RAM足夠以太網(wǎng)幀的存儲(chǔ),以太網(wǎng)最大包為1500字節(jié),64KB的Flash對(duì)于適當(dāng)?shù)某绦蚣訋讉€(gè)Web Pages是足夠的。另一套用于控制器內(nèi)部,稱為本地DMA。BNC接口方式支持8芯雙絞線或同軸電纜。當(dāng)該引腳為低電平時(shí),可決定RTL8019AS是工作在第2種還是第3種方式。(其中00H~0FH共16個(gè)地址,為寄存器地址)RTL8019AS
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1