嵌入式TCP/IP協(xié)議單片機(jī)技術(shù)在網(wǎng)絡(luò)通信中的
發(fā)布時間:2008/5/26 0:00:00 訪問次數(shù):1870
    
    
    摘要:介紹了嵌入式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ù)通信。
    關(guān)鍵詞:tcp/ip協(xié)議 單片機(jī) 因特網(wǎng) 局域網(wǎng) 網(wǎng)卡芯片
    在因特網(wǎng)上tcp/ip協(xié)議每時每刻保證了數(shù)據(jù)的準(zhǔn)確傳輸。在數(shù)據(jù)采集領(lǐng)域,如何利用tcp/ip協(xié)議在網(wǎng)絡(luò)中進(jìn)行數(shù)據(jù)傳輸成為一個炙手可熱的話題。在本系統(tǒng)中,筆者利用tcp/ip協(xié)議中的udp(用戶數(shù)據(jù)報協(xié)議)、ip(網(wǎng)絡(luò)報文協(xié)議)、arp(地址解析協(xié)議)及簡單的應(yīng)用層協(xié)議成功地實(shí)現(xiàn)了單片機(jī)的網(wǎng)絡(luò)互連既提高了數(shù)據(jù)傳輸?shù)乃俣龋直WC了數(shù)據(jù)傳輸?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)用層要有一個定義清晰的會話過程如通常所說的http、ftp、telnet等。在本系統(tǒng)中,單片機(jī)系統(tǒng)傳遞來自ethernet和數(shù)據(jù)終端的數(shù)據(jù),應(yīng)用層只對大的數(shù)據(jù)報作打包拆報處理。
    (2)傳輸層
    傳輸層讓網(wǎng)絡(luò)程序通過明確定義的通道及某些特性獲取數(shù)據(jù),如定義網(wǎng)絡(luò)連接的端口號等實(shí)現(xiàn)該層協(xié)議的傳輸控制協(xié)議tcp和用戶數(shù)據(jù)報協(xié)議udp。在本系統(tǒng)中使用udp數(shù)據(jù)報協(xié)議。
    (3)網(wǎng)絡(luò)層
    網(wǎng)絡(luò)層讓信息可以發(fā)送到相鄰的tcp/ip網(wǎng)絡(luò)上的任一主機(jī)上,ip協(xié)議就是該層中傳送數(shù)據(jù)的機(jī)制。同時為建立網(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ò),并且提供一個串口給用戶使用。系統(tǒng)板可以將從ethernet上過來的ip數(shù)據(jù)報解包后送給串口,也可將從串口過來的數(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位模式。
    me103是一種脈沖變壓器,在cs8900的前端對網(wǎng)絡(luò)信號進(jìn)行脈沖波形變換。
    3 工作原理
    3.1 cs8900的工作原理
    cs8900與單片機(jī)按照8位方式連接,網(wǎng)卡芯片復(fù)位后默認(rèn)工作方式為i/o連接,基址是300h,下面對它的幾個主要工作寄存器進(jìn)行介紹(寄存器后括號內(nèi)的數(shù)字為寄存器地址相對基址300h的偏移量)。
    ·linectl(0112h)
    linectl決定cs8900的基本配置和物理接口。在本系統(tǒng)中,設(shè)置初始值為00d3h,選擇物理接口為10base-t,并使能設(shè)備的發(fā)送和接收控制位。
    ·rxctl(0104h)
    rxctl控制cs8900接收特定數(shù)據(jù)報。設(shè)置rxtcl的初始值為0d05h,接收網(wǎng)絡(luò)上的廣播或者目標(biāo)地址同本地物理地址相同的正確數(shù)據(jù)報。
    ·rxcfg(0102h)
    rxcfg控制cs8900接收到特定數(shù)據(jù)報后會引發(fā)接收中斷。rxcfg可設(shè)置為0103h,這樣當(dāng)收到一個正確的數(shù)據(jù)報后,cs8900會產(chǎn)生一個接收中斷。
    ·busct(0116h)
    busct可控制芯片的i/o接口的一些操作。設(shè)置初始值為8017h,打開cs8900的中斷總控制位。
    ·isq(0120h)
    isq是網(wǎng)卡芯片的中斷狀態(tài)寄存器,內(nèi)部映射接收中斷狀態(tài)寄存器和發(fā)送中斷狀態(tài)寄存器的內(nèi)容
    
    
    摘要:介紹了嵌入式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ù)通信。
    關(guān)鍵詞:tcp/ip協(xié)議 單片機(jī) 因特網(wǎng) 局域網(wǎng) 網(wǎng)卡芯片
    在因特網(wǎng)上tcp/ip協(xié)議每時每刻保證了數(shù)據(jù)的準(zhǔn)確傳輸。在數(shù)據(jù)采集領(lǐng)域,如何利用tcp/ip協(xié)議在網(wǎng)絡(luò)中進(jìn)行數(shù)據(jù)傳輸成為一個炙手可熱的話題。在本系統(tǒng)中,筆者利用tcp/ip協(xié)議中的udp(用戶數(shù)據(jù)報協(xié)議)、ip(網(wǎng)絡(luò)報文協(xié)議)、arp(地址解析協(xié)議)及簡單的應(yīng)用層協(xié)議成功地實(shí)現(xiàn)了單片機(jī)的網(wǎng)絡(luò)互連既提高了數(shù)據(jù)傳輸?shù)乃俣,又保證了數(shù)據(jù)傳輸?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)用層要有一個定義清晰的會話過程如通常所說的http、ftp、telnet等。在本系統(tǒng)中,單片機(jī)系統(tǒng)傳遞來自ethernet和數(shù)據(jù)終端的數(shù)據(jù),應(yīng)用層只對大的數(shù)據(jù)報作打包拆報處理。
    (2)傳輸層
    傳輸層讓網(wǎng)絡(luò)程序通過明確定義的通道及某些特性獲取數(shù)據(jù),如定義網(wǎng)絡(luò)連接的端口號等實(shí)現(xiàn)該層協(xié)議的傳輸控制協(xié)議tcp和用戶數(shù)據(jù)報協(xié)議udp。在本系統(tǒng)中使用udp數(shù)據(jù)報協(xié)議。
    (3)網(wǎng)絡(luò)層
    網(wǎng)絡(luò)層讓信息可以發(fā)送到相鄰的tcp/ip網(wǎng)絡(luò)上的任一主機(jī)上,ip協(xié)議就是該層中傳送數(shù)據(jù)的機(jī)制。同時為建立網(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ò),并且提供一個串口給用戶使用。系統(tǒng)板可以將從ethernet上過來的ip數(shù)據(jù)報解包后送給串口,也可將從串口過來的數(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位模式。
    me103是一種脈沖變壓器,在cs8900的前端對網(wǎng)絡(luò)信號進(jìn)行脈沖波形變換。
    3 工作原理
    3.1 cs8900的工作原理
    cs8900與單片機(jī)按照8位方式連接,網(wǎng)卡芯片復(fù)位后默認(rèn)工作方式為i/o連接,基址是300h,下面對它的幾個主要工作寄存器進(jìn)行介紹(寄存器后括號內(nèi)的數(shù)字為寄存器地址相對基址300h的偏移量)。
    ·linectl(0112h)
    linectl決定cs8900的基本配置和物理接口。在本系統(tǒng)中,設(shè)置初始值為00d3h,選擇物理接口為10base-t,并使能設(shè)備的發(fā)送和接收控制位。
    ·rxctl(0104h)
    rxctl控制cs8900接收特定數(shù)據(jù)報。設(shè)置rxtcl的初始值為0d05h,接收網(wǎng)絡(luò)上的廣播或者目標(biāo)地址同本地物理地址相同的正確數(shù)據(jù)報。
    ·rxcfg(0102h)
    rxcfg控制cs8900接收到特定數(shù)據(jù)報后會引發(fā)接收中斷。rxcfg可設(shè)置為0103h,這樣當(dāng)收到一個正確的數(shù)據(jù)報后,cs8900會產(chǎn)生一個接收中斷。
    ·busct(0116h)
    busct可控制芯片的i/o接口的一些操作。設(shè)置初始值為8017h,打開cs8900的中斷總控制位。
    ·isq(0120h)
    isq是網(wǎng)卡芯片的中斷狀態(tài)寄存器,內(nèi)部映射接收中斷狀態(tài)寄存器和發(fā)送中斷狀態(tài)寄存器的內(nèi)容
熱門點(diǎn)擊
- 單片機(jī)控制的網(wǎng)絡(luò)交換機(jī)設(shè)計與實(shí)現(xiàn)
- 基于SDA80D51的以太電話機(jī)的設(shè)計
- 基于ZigBee技術(shù)的射頻芯片CC2430
- IP電話的VoIP語音網(wǎng)關(guān)設(shè)計
- 實(shí)現(xiàn)基于GPRS的無線遠(yuǎn)程IAP功能
- DSP與PC間高速串口通信的實(shí)現(xiàn)
- 基于SoC的IPSec協(xié)議實(shí)現(xiàn)技術(shù)
- SOTDMA技術(shù)應(yīng)用及其性能分析
- 基于研祥EIP的VOIP解決方案
- 超寬帶無線電中納秒級脈沖生產(chǎn)研究
推薦技術(shù)資料
- CV/CC InnoSwitch3-AQ 開
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究