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

正文內(nèi)容

嵌入式網(wǎng)絡(luò)測控系統(tǒng)畢業(yè)論文(參考版)

2025-07-01 14:02本頁面
  

【正文】 dm9008init()。//定時(shí)中斷 0設(shè)置 (打開) watchdog()。 delay_ms(500)。 locate(3,3)。 locate(1,2)。 delay_ms(50)。//定時(shí)中斷 0設(shè)置 EA=1。//設(shè)外部中斷 1為下降沿觸發(fā) EX1=1。//設(shè)外部中斷 0為下降沿觸發(fā) //EX0=1。//時(shí)間中斷 1設(shè)置;當(dāng)程序接收到數(shù)據(jù)時(shí)中斷 ET1=0。 TR0=1。 TH1=0x3c。 TH0=0x3c。 TMOD=0x11。 key_scan_DATA=0x8400。 return。 delay_ms(5)。 delay_ms(5)。 scan_char_count=0。 WDTRST=0xE1。/***********************************************************************/void watchdog(){ AUXR=0xff。bit get_data=0。sfr AUXR=0X8E。感謝母校——天津工程師范學(xué)院和母校所有的老師們,在母校為我提供了好的環(huán)境讓我成長,老師們的教導(dǎo)讓我學(xué)習(xí)了這么多的知識(shí)。感謝我在四年中的搭檔楊振雷和李國化,在四年間對(duì)我的幫助,讓我在四年之中有這樣好的學(xué)習(xí)機(jī)會(huì)。結(jié) 論通過實(shí)驗(yàn)和研究表明通過 AT89S52單片機(jī)控制網(wǎng)絡(luò)控制器可以得到在低速率的傳輸系統(tǒng)中得到低成本、基于以太網(wǎng)的網(wǎng)絡(luò)控制節(jié)點(diǎn),方便家用設(shè)備和工業(yè)控制設(shè)備的網(wǎng)絡(luò)互聯(lián),有利于資源的利用、設(shè)備的遠(yuǎn)程控制和信息的共享。 顯示溫度曲線顯示曲線函數(shù)調(diào)用 CNet2View類的 OnDraw(CDC* pDC)函數(shù),首先獲得窗口類環(huán)境變量指針,開始設(shè)置窗口大小、定義畫筆等。網(wǎng)絡(luò)數(shù)據(jù)接收采用 Windows Sockets(網(wǎng)絡(luò)套接字)編程。程序主要包括數(shù)據(jù)的接收和顯示溫度曲線。 /* 將進(jìn)位到高位的 16bit與低16bit 再相加 */ return (unsigned int)(~cksum)。0xffff)。 } if(size){cksum += *(unsigned char*)buffer。 while(size1) { cksum += *buffer++。具體函數(shù)如下。寫入 UDP數(shù)據(jù),啟動(dòng)本地 DMA發(fā)送數(shù)據(jù)。寫入網(wǎng)絡(luò)接口層數(shù)據(jù)后寫入 IP 數(shù)據(jù)包頭部,寫 IP頭部的過程中,先將 IP頭部數(shù)據(jù)寫入寄存器,調(diào)用校驗(yàn)函數(shù) checksum()得到 IP頭部的校驗(yàn)碼數(shù)據(jù),再將數(shù)據(jù)全部寫入 DM9008的遠(yuǎn)程 DMA中。 數(shù)據(jù)封裝數(shù)據(jù)封裝函數(shù)主要是按網(wǎng)絡(luò)數(shù)據(jù)的格式,將數(shù)據(jù)打包發(fā)送,具體流程圖如圖。 由此我們可以得到 UDP數(shù)據(jù)報(bào)結(jié)構(gòu)如表 :表 :UDP 數(shù)據(jù)報(bào)結(jié)構(gòu)UDP源端口 UDP目的端口UDP長度 16位 UDP校驗(yàn)和 數(shù)據(jù) 網(wǎng)絡(luò)協(xié)議軟件設(shè)計(jì)在本設(shè)計(jì)中采用的協(xié)議才用簡化了的網(wǎng)絡(luò)協(xié)議,在編程的過程過主要是按照數(shù)據(jù)結(jié)構(gòu)對(duì)數(shù)據(jù)進(jìn)行封裝,將數(shù)據(jù)寫入 DM9008的遠(yuǎn)程 DMA中。Checksum=0x0000,占 16位數(shù)據(jù),值為 0,表示無校驗(yàn)。與源端口一樣,在數(shù)據(jù)包中占 16位,最大端口到 65535。圖 UDP 數(shù)據(jù)報(bào)結(jié)構(gòu)Source port =200,表示源端口為 200,在數(shù)據(jù)中表示為 0X00C8,在數(shù)據(jù)中占 16位,所以最大端口到 65535。該部分占 32個(gè) BIT。該部分占 32個(gè) BIT。該部分占 16個(gè)BIT,用十六進(jìn)制表示。該部分占 8個(gè) BIT。如果是ICMP協(xié)議,則此處的協(xié)議代碼應(yīng)為 01。該部分占 8個(gè)BIT。該部分占 13個(gè) BIT。第三個(gè) 0為是否最后一片標(biāo)志位,0 表示最后一片,1 表示還有更多的片。Flags,表示片標(biāo)志,占 3個(gè) BIT。該部分占 16個(gè) BIT,以十進(jìn)制數(shù)表示。因此,在以太網(wǎng)中能夠傳輸?shù)淖畲?IP數(shù)據(jù)包為 65535個(gè)字節(jié)。在該數(shù)據(jù)包中為數(shù)據(jù) 0x00、0x4C。 8個(gè) BIT的含義是: 000 前三位不用 0 表示最小時(shí)延,如 Tel服務(wù)使用該位 0 表示吞吐量,如 FTP服務(wù)使用該位 0 表示可靠性,如 SNMP服務(wù)使用該位 0 表示最小代價(jià) 0 不用 Total Length=76Bytes,表示該 IP包的總長度為 76個(gè)字節(jié)。Differentiated Services Field=0x00,表示服務(wù)類型為 0。 Header Length=20 Bytes,表示 IP包頭的總長度為 20個(gè)字節(jié)。 TCP/IP數(shù)據(jù)包詳解下面通過 Ethereal軟件捕獲一個(gè)數(shù)據(jù)包,我們以 IP地址為、MAC 地址為 00 00 0e 20 01 95的主機(jī)向 IP 地址為、MAC 地址為 00 1b b9 d9 a6 e2的主機(jī)發(fā)送 UDP數(shù)據(jù)為例來簡要分析一下該數(shù)據(jù)的封裝過程和各數(shù)據(jù)層間的數(shù)據(jù)結(jié)構(gòu),軟件捕獲的全部數(shù)據(jù)如表:表 :網(wǎng)絡(luò)數(shù)據(jù)表:0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1500 1b b9 d9 a6 e2 00 00 0e 20 01 95 08 00 45 0000 4c 00 ea 00 00 80 11 b5 42 c0 a8 01 be c0 a801 66 00 c8 00 64 00 38 00 00 55 55 eb 01 eb 01eb 01 eb 01 eb 01 eb 01 eb 01 eb 01 eb 01 eb 01eb 01 eb 01 eb 01 eb 01 eb 01 eb 01 eb 01 eb 01eb 01 eb 01 eb 01 eb 01 eb 01 網(wǎng)絡(luò)接口層幀結(jié)構(gòu)詳解 網(wǎng)絡(luò)接口層幀數(shù)據(jù)結(jié)構(gòu)如圖 :圖 捕獲的網(wǎng)絡(luò)接口層幀數(shù)據(jù)結(jié)構(gòu)首先是 6字節(jié)的目的 MAC地址 00 1b b9 d9 a6 e2,接著是六字節(jié)的源 MAC地址,后面是 2字節(jié)的以太網(wǎng)類型得到網(wǎng)絡(luò)接口層幀結(jié)構(gòu)如表 :表 :網(wǎng)絡(luò)接口層幀結(jié)構(gòu)目的 MAC(6 個(gè)字節(jié)) 源 MAC(6 個(gè)字節(jié)) 以太網(wǎng)類型(2 個(gè)字節(jié)) IP數(shù)據(jù)報(bào)結(jié)構(gòu)詳解還是以同一個(gè)數(shù)據(jù)包為例,在網(wǎng)絡(luò)接口層后面是互聯(lián)網(wǎng)層,則緊接著的數(shù)據(jù)是 IP數(shù)據(jù)報(bào),具體結(jié)構(gòu)如圖 ;圖 捕獲的 IP 數(shù)據(jù)報(bào)結(jié)構(gòu) Version=4,表示 IP協(xié)議的版本號(hào)為 4。如果執(zhí)行 ping不成功,則可以預(yù)測故障出現(xiàn)在以下幾個(gè)方面:網(wǎng)線是否連通,網(wǎng)絡(luò)適配器配置是否正確,IP 地址是否可用等;如果執(zhí)行 ping成功而網(wǎng)絡(luò)仍無法使用,那么問題很可能出在網(wǎng)絡(luò)系統(tǒng)的軟件配置方面,ping 成功只能保證當(dāng)前主機(jī)與目的主機(jī)間存在一條連通的物理路徑。圖 數(shù)據(jù)包的分用過程圖 UDP 數(shù)據(jù)包的封裝過程 ping程序   這個(gè)程序用來檢測一幀數(shù)據(jù)從當(dāng)前主機(jī)傳送到目的主機(jī)所需要的時(shí)間。 網(wǎng)絡(luò)協(xié)議的數(shù)據(jù)封裝 數(shù)據(jù)在網(wǎng)絡(luò)應(yīng)用程序和以太網(wǎng)間的對(duì)接是通過 TCP/IP協(xié)議簇封裝的,在不同的程序之間協(xié)議不盡相同,數(shù)據(jù)包的分用過程如圖 ,不同的程序在不同的層采用不同的協(xié)議,如 ping程序在傳輸層采用了 ICMP協(xié)議,而我們常用的Telnent程序在傳輸層采用的是 TCP協(xié)議。?傳輸層:為兩個(gè)用戶進(jìn)程之間建立、管理和拆除可靠而又有效的端到端連接。?網(wǎng)絡(luò)接口層:它定義了將數(shù)據(jù)組成正確幀的規(guī)程和在網(wǎng)絡(luò)中傳輸幀的規(guī)程,幀是指一串?dāng)?shù)據(jù),它是數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)膯挝弧? TCP/IP參考模型 TCP/IP協(xié)議的開發(fā)研制人員將 Inter分為五個(gè)層次,以便于理解,它也稱為互聯(lián)網(wǎng)分層模型或互聯(lián)網(wǎng)分層參考模型,具體如表 。? FCS: 32位的 CRC校驗(yàn),該校驗(yàn)由網(wǎng)卡自動(dòng)計(jì)算,自動(dòng)生成,自動(dòng)校驗(yàn),我們無需了解.事實(shí)上,PR,SD,PAD,FCS 這幾個(gè)數(shù)據(jù)段我們不用理它 ,它是由網(wǎng)卡控制芯片自動(dòng)產(chǎn)生的,我們要理的是 DA,SA,TYPE,DATA四個(gè)段的內(nèi)容.所有數(shù)據(jù)位的傳輸由低位開始(但傳輸?shù)奈涣魇怯寐鼜厮固鼐幋a的) 以太網(wǎng)的沖突退避算法就不介紹了,它是由硬件自動(dòng)執(zhí)行的.DA+SA+TYPE+DATA+PAD最小為 60字節(jié),最大為 1514字節(jié).以太網(wǎng)卡可以接收三種地址的數(shù)據(jù),一個(gè)是廣播地位,一個(gè)是多播地址(我們用不上),(用于網(wǎng)絡(luò)分析和監(jiān)控).任何兩個(gè)網(wǎng)卡的物理地址都是不一樣的,是世界上唯一的,網(wǎng)卡地址由專門機(jī)構(gòu),卡的地址段(網(wǎng)卡地址的前三個(gè)字節(jié)),可以由用戶去設(shè)定,但一般不需要. TCP/IP協(xié)議TCP/IP(TransmissionControlProtocol/InterProtocol 的簡寫,中文譯名為傳輸控制協(xié)議/互聯(lián)網(wǎng)絡(luò)協(xié)議)協(xié)議是 Inter最基本的協(xié)議,簡單地說,就是由底層的 IP協(xié)議和 TCP協(xié)議組成的。? PAD:填充位。因?yàn)橐蕴W(wǎng)規(guī)定整個(gè)傳輸包的最大長度不能超過 1514字節(jié)。如:0800H 表示數(shù)據(jù)為 IP包,0806H 表示數(shù)據(jù)為 ARP包,814CH 是SNMP包,8137H 為 IPX/SPX包,(小于 0600H的值是用于 IEEE802的,表示數(shù)據(jù)包的長度。? SA:源地址,48 位,表明該幀的數(shù)據(jù)是哪個(gè)網(wǎng)卡發(fā)的,即發(fā)送端的網(wǎng)卡地址,同樣是 6個(gè)字節(jié)。表 :以太網(wǎng)的物理傳輸幀PR SD DA SA TYPE DATA PAD FCS56位 8位 48位 48位 16位 不超過 1500字節(jié) 可選 32位? PR:同步位,用于收發(fā)雙方的時(shí)鐘同步,同時(shí)也指明了傳輸?shù)乃俾剩?0M 和100M的時(shí)鐘頻率不一樣,所以 100M網(wǎng)卡可以兼容 10M網(wǎng)卡),是 56位的二進(jìn)制數(shù) 101010101010.....? SD: 分隔位,表示下面跟著的是真正的數(shù)據(jù),而不是同步時(shí)鐘,為 8位的10101011,跟同步位不同的是最后 2位是 11而不是 10?,F(xiàn)代的操作系統(tǒng)均能同時(shí)支持這兩種類型的協(xié)議格式。下面具體對(duì)以太網(wǎng)物理傳輸幀協(xié)議和 TCP/IP協(xié)議進(jìn)行分析,并且捕獲具體的 TCP/IP協(xié)議數(shù)據(jù)包說明網(wǎng)絡(luò)接口層幀數(shù)據(jù)結(jié)構(gòu)、IP 協(xié)議數(shù)據(jù)結(jié)構(gòu)和 UDP協(xié)議數(shù)據(jù)結(jié)構(gòu)。 TBCR1(06H)、TBCR0(05H)為發(fā)送數(shù)據(jù)包的長度; TPSR(04H)為 40H,即發(fā)送緩沖區(qū)開始地址高位字節(jié); CR 為 26H,啟動(dòng)發(fā)送。 CR 為 22H,選擇寄存器頁面 0; ISR 為 40H,清除發(fā)送完成標(biāo)志; DMA 地址寄存器 RSARRSAR0 為 4000H,即發(fā)送緩沖區(qū)開始地址; DMA 字節(jié)計(jì)數(shù)寄存器 RBCRRBCR0 為發(fā)送數(shù)據(jù)包的長度; CR 為 12H,設(shè)置命令寄存器為遠(yuǎn)程 DMA 寫;; ISR,等待遠(yuǎn)程 DMA 完成; CR 為 22H,設(shè)置 RBCRRBCR0 為 0,遠(yuǎn)程 DMA 停止; ISR 為 40H,清除發(fā)送完成標(biāo)志。具體過程如下:?數(shù)據(jù)包在發(fā)送前應(yīng)該按規(guī)定的格式封裝好。(9)結(jié)束遠(yuǎn)程 DMA,設(shè)置下一次接收數(shù)據(jù)指針和接收邊界指針。(7)設(shè)置 CR 為 22H,遠(yuǎn)程 DMA 完成。(4)設(shè)置遠(yuǎn)程 DMA 地址寄存器 RSARRSAR0 為接收地址指針,該指針高位字節(jié)初始值位 PSTART+1,低位字節(jié)為 0。(2)判斷是否數(shù)據(jù)接收中斷,如果不是,不執(zhí)行以下步驟。只要網(wǎng)絡(luò)上有可以接收的數(shù)據(jù)包,DM9008 自動(dòng)將數(shù)據(jù)存入接收緩沖區(qū)并在收完后向 CPU 發(fā)中斷申請。(16)設(shè)置 CR 為 22H,芯片進(jìn)入工作狀態(tài)。(14)設(shè)置中斷屏蔽寄存器 IMR(0FH)為 3BH,即接收中斷允許、接收錯(cuò)誤中斷允許、發(fā)送錯(cuò)誤中斷允許、溢出中斷允許、計(jì)數(shù)器溢出中斷允許。(12)設(shè)置 CR 為 21H,選擇寄存器頁面 0。(10)設(shè)置當(dāng)前頁面寄存器 CURR(07H)為 PSTART+1,即 4DH。(8)設(shè)置 CR 為 61H,選擇頁面 1。(7)劃分緩沖區(qū)接收緩沖區(qū)和發(fā)送緩沖區(qū),并建立接收緩沖環(huán)。(5)讀出網(wǎng)絡(luò)的物理地址: DMA 計(jì)數(shù)器 RBCR1(0BH)、RBCR0(0AH)的值為 000CH; DMA 地址 RSAR1(09H)、RSAR0(08H)的值為 0000H; CR(00H)為遠(yuǎn)程 DMA 讀,即 0AH;(10H)讀 6 個(gè)字節(jié),這 6 個(gè)字節(jié)即網(wǎng)絡(luò)物理地址; DMA,設(shè)置 CR 為 21H,RBCRRBCR0 為 0000H。(3)設(shè)置數(shù)據(jù)結(jié)構(gòu)寄存器 DCR(0EH)為 48H。1. DM9008 的初始化DM9008 的具體初始化過程如下(CPU 對(duì) DM9008 的尋址需要加上基地址,為了描述方便,省略掉基地址直接用 DM9008 的內(nèi)部地址描述寄存器地址):(1)讀入 1FH 端口數(shù)據(jù),再寫回該地址以啟動(dòng) DM9008 工作。其中 00H~0FH 是寄存器區(qū),00H~1FH。本地 DMA 完成 DMA9008 與其內(nèi)部 FIFO 隊(duì)列之間的數(shù)據(jù)傳送,遠(yuǎn)程 DMA 完成 DM9008 與 CPU 之間的數(shù)據(jù)傳送。DM9008 的初始化主要是設(shè)置所需的寄存器狀態(tài),建立網(wǎng)絡(luò)接口收發(fā)的條件。  DM9008 底層軟件設(shè)計(jì)DM9008 的編程包括初始化、發(fā)送、接收三部分功能。由于本設(shè)計(jì)只使用 10BASET,即采用無屏蔽雙絞線的 RJ45 接口,而 DM9008 已內(nèi)置了 10BASET 的收發(fā)器,故接口部分電路比較簡單,只需要外接 1 個(gè)隔離濾波器 LAN7236 即可。所以通常先通過編程器把配置數(shù)據(jù)寫入93C46,再把它焊在電路板上
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1