《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > TCP/IP協(xié)議單片機(jī)在網(wǎng)絡(luò)通信中的數(shù)據(jù)傳輸技術(shù)
TCP/IP協(xié)議單片機(jī)在網(wǎng)絡(luò)通信中的數(shù)據(jù)傳輸技術(shù)
摘要: 介紹了嵌入式TCP/IP協(xié)議單片機(jī)在網(wǎng)絡(luò)通信中的數(shù)據(jù)傳輸技術(shù)。將TCP/IP協(xié)議嵌入式單片機(jī)中,借助網(wǎng)卡芯片CS8900實(shí)現(xiàn)了單片機(jī)在局域網(wǎng)內(nèi)和通過局域網(wǎng)在因特網(wǎng)上的數(shù)據(jù)傳輸。用戶終端以單片機(jī)系統(tǒng)板為媒介,通過網(wǎng)絡(luò)與遠(yuǎn)程數(shù)據(jù)終端實(shí)現(xiàn)數(shù)據(jù)通信。
Abstract:
Key words :

介紹了嵌入式TCP/IP" title="TCP/IP">TCP/IP協(xié)議單片機(jī)" title="單片機(jī)">單片機(jī)在網(wǎng)絡(luò)通信中的數(shù)據(jù)傳輸" title="數(shù)據(jù)傳輸">數(shù)據(jù)傳輸技術(shù)。將TCP/IP協(xié)議嵌入式單片機(jī)中,借助網(wǎng)卡芯片CS8900實(shí)現(xiàn)了單片機(jī)在局域網(wǎng)內(nèi)和通過局域網(wǎng)在因特網(wǎng)上的數(shù)據(jù)傳輸。用戶終端以單片機(jī)系統(tǒng)板為媒介,通過網(wǎng)絡(luò)與遠(yuǎn)程數(shù)據(jù)終端實(shí)現(xiàn)數(shù)據(jù)通信。

在因特網(wǎng)上,TCP/IP協(xié)議每時(shí)每刻保證了數(shù)據(jù)的準(zhǔn)確傳輸。在數(shù)據(jù)采集領(lǐng)域,如何利用TCP/IP協(xié)議在網(wǎng)絡(luò)中進(jìn)行數(shù)據(jù)傳輸成為一個(gè)炙手可熱的話題。在本系統(tǒng)中,筆者利用TCP/IP協(xié)議中的UDP(用戶數(shù)據(jù)報(bào)協(xié)議)、IP(網(wǎng)絡(luò)報(bào)文協(xié)議)、ARP(地址解析協(xié)議)及簡單的應(yīng)用層協(xié)議成功地實(shí)現(xiàn)了單片機(jī)的網(wǎng)絡(luò)互連,既提高了數(shù)據(jù)傳輸?shù)乃俣?又保證了數(shù)據(jù)傳輸?shù)恼_性,同時(shí)也擴(kuò)展了數(shù)據(jù)傳輸?shù)挠行О霃健?/p>

1 TCP/IP協(xié)議簡介

TCP/IP協(xié)議是一套把因特網(wǎng)上的各種系統(tǒng)互連起來的協(xié)議組,保證因特網(wǎng)上數(shù)據(jù)的準(zhǔn)確快速傳輸。參考開放系統(tǒng)互連(OSI)模型,TCP/IP通常采用一種簡化的四層模型,分別為:應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、鏈路層。

(1)應(yīng)用層

網(wǎng)絡(luò)應(yīng)用層要有一個(gè)定義清晰的會(huì)話過程,如通常所說的Http、Ftp、Telnet等。在本系統(tǒng)中,單片機(jī)系統(tǒng)傳遞來自Ethernet和數(shù)據(jù)終端的數(shù)據(jù),應(yīng)用層只對大的數(shù)據(jù)報(bào)作打包拆報(bào)處理。

(2)傳輸層

傳輸層讓網(wǎng)絡(luò)程序通過明確定義的通道及某些特性獲取數(shù)據(jù),如定義網(wǎng)絡(luò)連接的端口號等,實(shí)現(xiàn)該層協(xié)議的傳輸控制協(xié)議TCP和用戶數(shù)據(jù)協(xié)議UDP。在本系統(tǒng)中使用UDP數(shù)據(jù)報(bào)協(xié)議。

(3)網(wǎng)絡(luò)層

網(wǎng)絡(luò)層讓信息可以發(fā)送到相鄰的TCP/IP網(wǎng)絡(luò)上的任一主機(jī)上,IP協(xié)議就是該層中傳送數(shù)據(jù)的機(jī)制。同時(shí)建立網(wǎng)絡(luò)間的互連,應(yīng)提供ARP地址解析協(xié)議,實(shí)現(xiàn)從IP地址到數(shù)據(jù)鏈路物理地址的映像。

(4)鏈路層

由控制同一物理網(wǎng)絡(luò)上的不同機(jī)器間數(shù)據(jù)傳送的底層協(xié)議組成,實(shí)現(xiàn)這一層協(xié)議的協(xié)議并屬于TCP/IP協(xié)議組。在本系統(tǒng)中這部分功能由單片機(jī)控制網(wǎng)卡芯片CS8900實(shí)現(xiàn)。

2 硬件框圖

如圖1所示,系統(tǒng)提供RJ45接口連接Ethernet網(wǎng)絡(luò),并且提供一個(gè)串口給用戶使用。系統(tǒng)板可以將從Ethernet上過來的IP數(shù)據(jù)報(bào)解包后送給串口,也可將從串口過來的數(shù)據(jù)封裝為IP包送到局域網(wǎng)中。外部RAM使用61C1024(128KB),從而為數(shù)據(jù)處理提供了很大的緩存;使用E2PROM——X25045,既可以作為看門狗使用,也可以將IP地址、網(wǎng)卡物理地址和其他參數(shù)保存在里面。

CS8900芯片是Cirrus Logic公司生產(chǎn)的一種局域網(wǎng)處理芯片,它的封裝是100-pin TQFP,內(nèi)部集成了在片RAM、10BASE-T收發(fā)濾波器,并且提供8位和16位兩種接口,本文只介紹它的8位模式。

NE103是一種脈沖變壓器,在CS8900的前端對網(wǎng)絡(luò)信號進(jìn)行脈沖波形變換。

3 工作原理

3.1 CS8900的工作原理

CS8900與單片機(jī)按照8位方式連接,網(wǎng)卡芯片復(fù)位后默認(rèn)工作方式為I/O連接,基址是300H,下面對它的幾個(gè)主要工作寄存器進(jìn)行介紹(寄存器后括號內(nèi)的數(shù)字為寄存器地址相對基址300H的偏移量)。

·LINECTL(0112H)

LINECTL決定CS8900的基本配置和物理接口。在本系統(tǒng)中,設(shè)置初始值為00d3H,選擇物理接口為10BASE-T,并使能設(shè)備的發(fā)送和接收控制位。

·RXCTL(0104H)

RXCTL控制CS8900接收特定數(shù)據(jù)報(bào)。設(shè)置RXTCL的初始值為0d05H,接收網(wǎng)絡(luò)上的廣播或者目標(biāo)地址同本地物理地址相同的正確數(shù)據(jù)報(bào)。

·RXCFG(0102H)

RXCFG控制CS8900接收到特定數(shù)據(jù)報(bào)后會(huì)引發(fā)接收中斷。RXCFG可設(shè)置為0103H,這樣當(dāng)收到一個(gè)正確的數(shù)據(jù)報(bào)后,CS8900會(huì)產(chǎn)生一個(gè)接收中斷。

·BUSCT(0116H)

BUSCT可控制芯片的I/O接口的一些操作。設(shè)置初始值為8017H,打開CS8900的中斷總控制位。

·ISQ(0120H)

ISQ是網(wǎng)卡芯片的中斷狀態(tài)寄存器,內(nèi)部映射接收中斷狀態(tài)寄存器和發(fā)送中斷狀態(tài)寄存器的內(nèi)容。

·PORT0(0000H)

發(fā)送和接收數(shù)據(jù)時(shí),CPU通過PORT0傳遞數(shù)據(jù)。

·TXCMD(0004H)

發(fā)送控制寄存器,如果寫入數(shù)據(jù)00C0H,那么網(wǎng)卡芯片在全部數(shù)據(jù)寫入后開始發(fā)送數(shù)據(jù)。

·TXLENG(0006H)

發(fā)送數(shù)據(jù)長度寄存器,發(fā)送數(shù)據(jù)時(shí),首先寫入發(fā)送數(shù)據(jù)長度,然后將數(shù)據(jù)通過PORT0寫入芯片。

以上為幾個(gè)最主要的工作寄存器(為16位),CS8900支持8位模式,當(dāng)讀或?qū)?6位數(shù)據(jù)時(shí),低位字節(jié)對應(yīng)偶地址,高位字節(jié)對應(yīng)奇地址。例如,向TXCMD中寫入00C0H,則可將00h寫入305H,將C0H寫入304H。

系統(tǒng)工作時(shí),應(yīng)首先對網(wǎng)卡芯片進(jìn)行初始化,即寫寄存器LINECTL、RXCTL、RCCFG、BUSCT。發(fā)數(shù)據(jù)時(shí),寫控制寄存器TXCMD,并將發(fā)送數(shù)據(jù)長度寫入TXLENG,然后將數(shù)據(jù)依次寫入PORT0口,如將第一個(gè)字節(jié)寫入300H,第二個(gè)字節(jié)寫入301H,第三個(gè)字節(jié)寫入300H,依此類推。網(wǎng)卡芯片將數(shù)據(jù)組織為鏈路層類型并添加填充位和CRC校驗(yàn)送到網(wǎng)絡(luò)同樣,單片機(jī)查詢ISO的數(shù)據(jù),當(dāng)有數(shù)據(jù)來到后,讀取接收到的數(shù)據(jù)幀。讀數(shù)據(jù)時(shí),單片機(jī)依次讀地址300H,301H,300H,301H…。

3.2 單片機(jī)工作流程

如圖人所示,單片機(jī)首先初始化網(wǎng)絡(luò)設(shè)備。網(wǎng)卡IP地址和物理地址存在X25045中,單片機(jī)復(fù)位后首先讀取這些數(shù)據(jù)以初始化網(wǎng)絡(luò)。

    單片機(jī)主要完成數(shù)據(jù)的解包打包。當(dāng)有數(shù)據(jù)從RJ45過來,單片機(jī)對數(shù)據(jù)報(bào)進(jìn)行分析,如果是ARP(物理地址解析)數(shù)據(jù)包,則程序轉(zhuǎn)入ARP處理程序(因?yàn)樵诰W(wǎng)絡(luò)上正是ARP協(xié)議將IP地址和物理地址相映射)。如果是IP數(shù)據(jù)包且傳輸層使用UDR協(xié)議,端口正確,則認(rèn)為數(shù)據(jù)報(bào)正確,數(shù)據(jù)解包后,將數(shù)據(jù)部分通過串口輸出。反之,如果單片機(jī)從串口收到數(shù)據(jù),則將數(shù)據(jù)按照UDP協(xié)議格式打包,送入CS8900,由CS8900將數(shù)據(jù)輸出到局域網(wǎng)中。

可以知道,單片機(jī)主要處理協(xié)議的網(wǎng)絡(luò)層和傳輸層,鏈路層部分由CS8900完成。因單片機(jī)將數(shù)據(jù)接收后完整不變地通過串口輸出,所以將應(yīng)用層交付用戶來處理,用戶可以根據(jù)需求對收到的數(shù)據(jù)進(jìn)行處理。

在單片機(jī)的程序處理中,包含了完整的APR地址解析協(xié)議。通過在單片機(jī)中正確設(shè)置網(wǎng)關(guān)、子網(wǎng)掩碼等參數(shù),實(shí)現(xiàn)了通過局域網(wǎng)單片機(jī)與外部因特網(wǎng)上的終端設(shè)備的數(shù)據(jù)通信。

4 應(yīng)用

這種嵌入式TCP/IP協(xié)議的單片機(jī)系統(tǒng)板,具有成本低、硬件少、占用面積少、傳輸速度快、使用方便等優(yōu)點(diǎn)。適用于現(xiàn)有的網(wǎng)絡(luò)傳輸系統(tǒng),有著廣泛的應(yīng)用前景,特別是數(shù)據(jù)采集、數(shù)據(jù)傳輸領(lǐng)域。目前,在屏幕板數(shù)據(jù)成像、遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)中被使用。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
在线免费观看欧美| 国产日韩欧美不卡在线| 在线一区视频| 国产精品毛片一区二区三区| 亚洲欧美美女| 午夜国产精品视频免费体验区| 国产亚洲欧美激情| 可以免费看不卡的av网站| 亚洲人成网站精品片在线观看| 亚洲免费观看高清完整版在线观看熊| 国产精品hd| 久久亚洲欧洲| 99综合在线| 亚洲欧美日韩国产综合在线| 在线国产精品一区| 国产精品99一区二区| 欧美日韩精品在线播放| 欧美在线观看天堂一区二区三区| 亚洲激情综合| 亚洲视频一区二区在线观看| 狠狠久久综合婷婷不卡| 欧美三级第一页| 久久久不卡网国产精品一区| 亚洲精品综合在线| 亚洲男人影院| 午夜精品一区二区在线观看| 欧美一激情一区二区三区| 亚洲精品久久久久久久久| 国产欧美不卡| 国产视频在线观看一区| 欧美日韩国产综合久久| 欧美日韩一区二区三| 巨乳诱惑日韩免费av| 免费高清在线一区| 欧美亚洲一区三区| 一本久久a久久免费精品不卡| 一道本一区二区| 亚洲国产女人aaa毛片在线| 亚洲一二三区视频在线观看| 亚洲国产精品悠悠久久琪琪| 国产欧美日韩在线视频| 国产精品一区二区a| 欧美人与性动交cc0o| 久久精品二区亚洲w码| 中日韩高清电影网| 久久精品亚洲精品| 亚洲综合欧美日韩| 99视频超级精品| 亚洲国产精品一区制服丝袜 | 亚洲视频在线二区| 欧美在线啊v一区| 亚洲视频视频在线| 午夜视频在线观看一区| 亚洲国产欧美一区| 亚洲午夜久久久久久尤物| 亚洲黄色在线观看| 一区二区三区高清| 久久经典综合| 欧美人与性动交α欧美精品济南到| 国产精品免费看片| 在线欧美日韩精品| 亚洲视频一区二区在线观看| 亚洲高清在线精品| 久久成人在线| 午夜激情综合网| 亚洲毛片av在线| 欧美在线中文字幕| 欧美激情成人在线| 欧美精品激情| 欧美激情一区二区三区蜜桃视频| 国产精品视频自拍| 亚洲电影视频在线| 亚洲综合电影| 一区二区三区高清视频在线观看| 久久久久久久综合狠狠综合| 欧美在线视频免费观看| 欧美极品影院| 狠狠综合久久| 亚洲一区二区不卡免费| 亚洲精品女人| 久久久久久久久久久一区 | 欧美精品一区二| 国产综合香蕉五月婷在线| 国产欧美欧美| 亚洲精品中文字幕有码专区| 久久国产精品一区二区| 午夜精品福利一区二区蜜股av| 亚洲欧美中文日韩在线| 欧美国产欧美亚洲国产日韩mv天天看完整 | 一片黄亚洲嫩模| 亚洲少妇自拍| 亚洲精品一区二区三区99| 久久精品久久综合| 国产精品a久久久久| 亚洲三级视频| 亚洲经典自拍| 老色鬼精品视频在线观看播放| 国产日本欧洲亚洲| 国产精品99久久久久久宅男| 一区二区三区高清不卡| 欧美成人首页| 欧美日韩一本到| 亚洲国产成人不卡| 亚洲国产高潮在线观看| 久久er99精品| 国产欧美一区二区三区久久 | 国产精品久久久久毛片软件| 日韩视频一区| 一区二区三区日韩欧美精品| 欧美国产欧美亚洲国产日韩mv天天看完整| 狠狠色狠狠色综合系列| 久久av一区二区三区| 久久精品亚洲精品国产欧美kt∨| 国产精品一区二区三区四区五区 | 国产亚洲视频在线| 亚洲欧美一区二区精品久久久 | 久久精选视频| 国产午夜精品一区二区三区欧美| 亚洲资源在线观看| 香蕉成人伊视频在线观看| 久久精品国产亚洲a| 国产精品丝袜91| 亚洲伊人一本大道中文字幕| 亚洲欧美综合| 国产精品免费视频观看| 亚洲图片欧美日产| 午夜精品久久久久久久99热浪潮| 国产精品久久久久一区| 一区二区久久久久久| 亚洲在线播放| 久久深夜福利免费观看| 国产一区99| 欧美在线999| 免费成人你懂的| 最新中文字幕一区二区三区| 午夜国产不卡在线观看视频| 久久国产视频网站| 国内精品久久久| 亚洲国产精品va| 欧美顶级艳妇交换群宴| 亚洲精品中文字幕在线| 亚洲天堂网站在线观看视频| 国产精品久久久一区二区| 亚洲私人黄色宅男| 香蕉乱码成人久久天堂爱免费 | 亚洲老板91色精品久久| 亚洲一区999| 性做久久久久久| 久久久xxx| 亚洲黄色影片| 亚洲激情在线观看| 99国产精品自拍| 国产精品麻豆欧美日韩ww | 一区二区三区国产盗摄| 国产精品毛片| 亚洲第一精品久久忘忧草社区| 亚洲一级电影| 国产精品亚洲不卡a| 欧美在线亚洲| 欧美精品三级| 亚洲一区二区三区四区在线观看 | 国产精品久久二区| 亚洲成人在线观看视频| 一区二区国产日产| 国产欧美丝祙| 亚洲三级视频在线观看| 国产精品久久久久久超碰| 久久成人这里只有精品| 欧美日韩成人| 亚洲欧美激情视频| 欧美成人一二三| 亚洲欧美国产精品va在线观看| 女仆av观看一区| 伊人狠狠色j香婷婷综合| 亚洲欧美国产高清va在线播| 久久日韩粉嫩一区二区三区| 亚洲精品欧美激情| 欧美一区深夜视频| 在线视频观看日韩| 午夜精品久久久久久久99樱桃| 悠悠资源网亚洲青| 亚洲自拍16p| 在线观看日韩一区| 午夜精品在线看| 亚洲黄色毛片| 久久国产精彩视频| 日韩一区二区电影网| 久久综合导航| 亚洲一二三级电影| 欧美激情精品久久久久| 午夜精品福利一区二区蜜股av| 欧美精品九九99久久| 欧美一区亚洲二区| 国产精品成人免费精品自在线观看| 亚洲福利久久| 国产精品日韩久久久| 一本色道久久加勒比精品| 国产永久精品大片wwwapp| 亚洲欧美日韩精品久久| 亚洲精品综合在线|