亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于RTL8019AS單片機在以太網(wǎng)通信中的應(yīng)用

        2014-04-22 06:31:40汪文濤巨永龍施良偉
        科技視界 2014年24期
        關(guān)鍵詞:精簡以太網(wǎng)數(shù)據(jù)包

        汪文濤 徐 貴 巨永龍 施良偉 湯 超

        (安徽工程大學(xué)電氣工程學(xué)院,安徽 蕪湖 241000)

        0 引言

        隨著網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,網(wǎng)絡(luò)用戶呈指數(shù)增長,在使用計算機進行網(wǎng)絡(luò)連互的同時,小至各類家電、儀器儀表設(shè)備大至工業(yè)生產(chǎn)過程中數(shù)據(jù)采集、控制設(shè)備都在逐步趨向網(wǎng)絡(luò)化。網(wǎng)絡(luò)數(shù)據(jù)傳輸技術(shù)具有傳輸距離遠、傳輸速率高、信息共享程度高等優(yōu)點,因此對嵌入式設(shè)備增加網(wǎng)絡(luò)功能有著深遠的意義。

        目前在工業(yè)控制領(lǐng)域底層的儀器儀表、各類傳感器的參數(shù)等數(shù)據(jù)幾乎都是通過現(xiàn)場總線的方式進行上傳,但是現(xiàn)場總線的協(xié)議并不是統(tǒng)一的,故而在生產(chǎn)過程中帶來極大的不便。由于TCP/IP協(xié)議在行業(yè)內(nèi)已有統(tǒng)一的標(biāo)準(zhǔn),故而利用嵌入式芯片內(nèi)嵌TCP/IP精簡協(xié)議與以太網(wǎng)接口芯片RTL8019AS協(xié)同工作便能很好地解決這個問題。這種方法的顯著優(yōu)點就是成本低、實現(xiàn)簡單??梢哉f通過以太網(wǎng)進行通信是工業(yè)控制領(lǐng)域一大趨勢。

        本文以遠程數(shù)據(jù)傳輸和控制指令傳輸為應(yīng)用背景,設(shè)計了一套基于嵌入式系統(tǒng)的以太網(wǎng)通信模塊。

        1 系統(tǒng)簡介

        本系統(tǒng)采用的核心嵌入式控制芯片是C8051F020,該單片機使用美國Cygnal公司的CIP-51微控制器內(nèi)核。它采用PQFP-100的封裝形式,內(nèi)部集成了ADC、DAC、PCA、模擬比較器以及多種節(jié)電休眠和停機方式,工作頻率高達25MHz。

        以太網(wǎng)接口芯片是采用采用RealTek公司生產(chǎn)的RTL8019AS,它符合EthernetII與IEEE802.3標(biāo)準(zhǔn);全雙工,收發(fā)可同時進行,內(nèi)置16KB的SRAM,用于收發(fā)緩沖,降低了對處理器的速度要求;支持8/16位的數(shù)據(jù)總線;采用了100腳PQFP封裝。

        系統(tǒng)主要是由單片機C8051F020來驅(qū)動以太網(wǎng)接口芯片RTL8019AS,完成遠程數(shù)據(jù)的交換和控制指令的交換,從而由單片機發(fā)出指令使執(zhí)行機構(gòu)進行相應(yīng)的指令操作。系統(tǒng)結(jié)構(gòu)簡圖如圖1所示:

        圖1 系統(tǒng)結(jié)構(gòu)簡圖

        從信號采集裝置采集而來的模擬信經(jīng)過單片機C8051F020內(nèi)部的AD裝換器變成后續(xù)器件能夠處理的數(shù)字信號,之后將其按照系統(tǒng)所需要的TCP/IP精簡協(xié)議規(guī)范要求,逐層進行封裝,得到一個標(biāo)準(zhǔn)的以太網(wǎng)數(shù)據(jù)幀送往 RTL8019AS,然后數(shù)據(jù)幀便會按照 IEEE802.3標(biāo)準(zhǔn)經(jīng)過以太網(wǎng)絡(luò)發(fā)送到目的地址。接收數(shù)據(jù)的過程與發(fā)送數(shù)據(jù)過程類似,不再詳述。

        2 硬件設(shè)計

        由圖1系統(tǒng)結(jié)構(gòu)簡圖易知,硬件設(shè)計的主要部分是單片機及其模數(shù)信號相互轉(zhuǎn)換以及以太網(wǎng)通信部分組成。

        2.1 嵌入式控制器

        嵌入式控制器模塊核心采用美國Cygnal公司生產(chǎn)的高性能片上處理系統(tǒng)C8051F020,單個芯片上集成了大量的模擬、數(shù)字設(shè)備資源,主要包括8路12位逐次逼近型ADC,具有100kbps的最大可編程轉(zhuǎn)換速率和2.4V的內(nèi)部電壓基準(zhǔn),也可以選用外部電壓基準(zhǔn);具有多達64個數(shù)字I/O端口,支持TTL信號電平;具有多于5個16位定時器/計數(shù)器資源;內(nèi)部集成64KB的 flash程序存儲器;片內(nèi)集成了符合IEEE1149.1標(biāo)準(zhǔn)的JTAG編程掃描和調(diào)試電路,即使不用仿真器,也可以實現(xiàn)全速、非侵入式在系統(tǒng)程序調(diào)試。這些單片機資源,降低了成本,并簡化了系統(tǒng)設(shè)計的復(fù)雜性。

        2.2 RTL8019AS與C8051F20的連接

        一方面在嵌入式系統(tǒng)中以太網(wǎng)芯片是不允許經(jīng)常插拔的;另一方面為了精簡系統(tǒng)、降低成本和減少連線,所以本設(shè)計方案中使RTL8019AS工作于跳線工作方式,在這種模式下通過連接RTL8019AS的一些引腳來設(shè)定其工作方式,省去了要通EEPROM中的內(nèi)容來決定其工作方式,從而使控制程序變得精簡。如圖2所示其具體實現(xiàn)方式如下:

        (1)讓JP腳接高電平,使其工作在跳線工作方式下;

        (2)C8051F20的數(shù)據(jù)總線與芯片RTL8019AS的 SD0-SD7口相連,用于8位數(shù)據(jù)交換;

        (3)地址線A0-A4與芯片RTL8019AS的SA0-SA4地址線相連,用于單片機訪問不同的寄存器;

        (4)RD、WR分別為讀、寫信號,RST是芯片RTL8019AS的復(fù)位操作,AEN接地,使地址信號有效;

        (5)INT0為定時器中斷,用于通知C8051F20讀取RTL8019AS緩沖中的數(shù)據(jù);

        (6)最后是RTL8019AS經(jīng)過網(wǎng)絡(luò)濾波芯片LPT連接到RJ45接頭。

        圖2 RTL8019AS與C8051F20的連接電路圖

        3 軟件設(shè)計

        軟件部分主要由兩個部分組成,其中包括 TCP/IP精簡協(xié)議[1]的實現(xiàn)和RTL8019AS的驅(qū)動程序。

        3.1 TCP/IP精簡協(xié)議的實現(xiàn)

        TCP/IP實質(zhì)上是一系列協(xié)議的總稱,是實現(xiàn)Internet通訊必不可少的部分,其中包括十幾個協(xié)議標(biāo)準(zhǔn),在本研究課題中僅僅只需要實現(xiàn)嵌入式芯片連機通信,故而只需要選用其中部分即可,選用的標(biāo)準(zhǔn)是使代碼最簡,執(zhí)行效率最高。以下作出了詳細的介紹。

        OSI七層網(wǎng)絡(luò)模型理論[3-4]中指出,物理層是提供相鄰設(shè)備的比特流傳輸;數(shù)據(jù)鏈路層負責(zé)在兩個相鄰節(jié)點間線路上無差錯地傳送以幀為單位的數(shù)據(jù),采用IEEE802.3標(biāo)準(zhǔn)的以太網(wǎng)協(xié)議;網(wǎng)絡(luò)層主要負責(zé)處理數(shù)據(jù)包在網(wǎng)絡(luò)中的協(xié)議封裝,該層選用IP協(xié)議,同時選用ARP協(xié)議實現(xiàn)IP地址到MAC物理地址的轉(zhuǎn)換;傳輸層主要為兩臺主機上的應(yīng)用程序提供端到端的通信,選用TCP傳輸層協(xié)議,但針對底層的采集裝置進行適當(dāng)?shù)暮喕赃m應(yīng)嵌入式要求;應(yīng)用層則定義了運行在不同端系統(tǒng)上的應(yīng)用程序進程如何相互傳遞報文,根據(jù)本系統(tǒng)的實際需求選用應(yīng)用層協(xié)議中的DNS、FTP以及SNMP三個協(xié)議。

        3.2 RTL8019AS 的驅(qū)動程序

        RTL8019AS的驅(qū)動程序[5]主要由初始化、數(shù)據(jù)包的收發(fā)兩個部分組成,初始化是用來具體RTL8019AS的工作方式,設(shè)置一些必要的工作寄存器等;RTL8019AS對于數(shù)據(jù)包的收發(fā)均是采用 IEEE802.3協(xié)議,發(fā)送部分只要把數(shù)據(jù)寫入緩沖區(qū),啟動執(zhí)行命令,芯片會自動發(fā)送。通常情況下會在其內(nèi)部RAM中開辟2個以太網(wǎng)數(shù)據(jù)包的空間作為發(fā)送緩沖區(qū)。數(shù)據(jù)的發(fā)送校驗和總線數(shù)據(jù)包的碰撞檢測與避免都是由芯片自身獨立完成的,只需要配置發(fā)送數(shù)據(jù)的源地址、物理層地址、目的地址、數(shù)據(jù)包類型和發(fā)送的數(shù)據(jù)即可;RTL8019AS在接收到以太網(wǎng)數(shù)據(jù)包后自動將其存在接收緩沖區(qū)并發(fā)出中斷信號,在中斷服務(wù)程序中通過DMA就可接收到數(shù)據(jù),即通過遠端DMA把數(shù)據(jù)從以太網(wǎng)接口芯片RTL8019AS的RAM空間讀回單片機中處理。

        3.3 部分代碼

        由于篇幅有限,本文只附上數(shù)據(jù)發(fā)送子程序。在本程序主要是發(fā)送一個數(shù)據(jù)包的命令,數(shù)據(jù)包的長度最小為60個字節(jié),最大1514個字節(jié),需要發(fā)送的數(shù)據(jù)包要先存放在txdnet緩沖區(qū)中,然后遠端通過DMA從緩沖區(qū)中讀走數(shù)據(jù)。C程序[6]如下所示:

        void send packet(union netcard*txdnet,unsigned int length)

        {

        unsigned char i;

        unsigned int j;

        page(0); //選擇頁零的寄存器

        if(length<60)

        length=60;

        for(i=0;i<3;i++)

        txdnet->etherframe.sourcenodeid[i]=ethernet_address.words[i];

        txd_buffer=!txd_buffer;

        if(txd_buffer)

        reg09=0x40;

        else

        reg09=0x46;

        reg08=0x00;

        reg0b=length>>8;

        reg0a=length&0xFF;

        reg00=0x12;

        for(j=4;j

        reg10=txdnet->bytes.bytebuf[j];

        for(i=0;i<6;i++) //重發(fā)最多6次

        {

        for(j=0;j<1000;j++)//檢查txp為是否為低

        if((reg00&0x04)==0)break;

        if((reg04&0x01)!=0)break;//發(fā)送成功

        reg00=0x3E;

        }

        if(txd_buffer)

        reg04=0x40;

        else

        reg04=0x46;

        reg06=length>>8;

        reg05=length&0xFF;

        reg00=0x3E;

        }

        程序說明:本程序中未定義的變量均在主程序中有所定義。

        4 結(jié)論

        本文中最大創(chuàng)新之處是通過嵌入式芯片C8051F20內(nèi)嵌TCP/IP精簡協(xié)議以驅(qū)動以太網(wǎng)接口芯片RTL8019AS構(gòu)成以太網(wǎng)通信接口。它只需要將外部的模擬信號直接通過接口就可以實現(xiàn)聯(lián)機上網(wǎng)。這是一個通用型的設(shè)計,它相對于傳統(tǒng)的以太網(wǎng)通信接口模塊而言成本低、實現(xiàn)方便。非常適合工業(yè)控制現(xiàn)場和家電物聯(lián)網(wǎng)等方面的應(yīng)用,具有良好的應(yīng)用前景。

        [1]蘇錦秀,楊慶江,張廣璐.以太網(wǎng)控制芯片 RTL8019AS詳細配置[J].廣州:現(xiàn)代電子技術(shù)出版社,2007:151-1531.

        [2]陳立家,焦戰(zhàn)立,熊文龍.基于精簡TCP/IP協(xié)議棧網(wǎng)絡(luò)服務(wù)器的實現(xiàn)[J].武漢理工大學(xué)學(xué)報,2007:565-5681.

        [3]W.Richard Stevens.TCP/IP 詳解卷 1:協(xié)議[M].范建華,等,譯.北京:機械工業(yè)出版,2000:15-170.

        [4]W.Richard Stevens.TCP/IP 詳解卷 2:實現(xiàn)[M].范建華,等,譯.北京:機械工業(yè)出版社,2001:54-170.

        [5]趙建領(lǐng).51 系列單片機開發(fā)寶[M].北京:電子工業(yè)出版社,2007.

        [6]譚浩強.C 語言程序設(shè)計[M].3 版.北京:清華大學(xué)出版社,2005:29-31.

        猜你喜歡
        精簡以太網(wǎng)數(shù)據(jù)包
        基于1500以太網(wǎng)養(yǎng)豬場的智能飼喂控制系統(tǒng)的設(shè)計與實現(xiàn)
        SmartSniff
        時常精簡多余物品
        特別健康(2018年2期)2018-06-29 06:14:00
        一種面向應(yīng)用的流量監(jiān)測精簡架構(gòu)設(shè)計
        電子制作(2017年17期)2017-12-18 06:40:47
        談實時以太網(wǎng)EtherCAT技術(shù)在變電站自動化中的應(yīng)用
        電子制作(2017年24期)2017-02-02 07:14:44
        一種90W高功率以太網(wǎng)供電系統(tǒng)的設(shè)計
        淺談EPON與工業(yè)以太網(wǎng)在貴遵高速公路中的應(yīng)用
        基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計與實現(xiàn)
        應(yīng)用于SAN的自動精簡配置架構(gòu)設(shè)計與實現(xiàn)
        計算機工程(2014年6期)2014-02-28 01:25:08
        視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
        亚洲 欧美 激情 小说 另类| www久久久888| 国产午夜精品久久久久99| www.尤物视频.com| 亚洲高清国产拍精品熟女| 麻豆成年人视频在线观看| 免费人成网站在线视频| 精品亚洲一区二区三区四区五| 精品伊人久久大线蕉色首页| 特黄a级毛片免费视频| 国产精品6| 日韩精品一区二区三区四区| 亚洲精品一区二区三区av| 亚洲一区二区三区精品久久av| 99在线视频这里只有精品伊人| 先锋五月婷婷丁香草草| 成人久久久久久久久久久| 久久精品人妻一区二区三区| 99精品国产闺蜜国产在线闺蜜| 亚洲性av少妇中文字幕| 4hu四虎永久免费地址ww416| 亚洲欧美一区二区三区在线| 日韩在线第二页| 亚洲日本国产乱码va在线观看| 亚洲一区二区三区熟妇| 久久亚洲av成人无码国产最大| 东北少妇不带套对白| 伊人色综合视频一区二区三区| 免费观看国产精品| 尤物蜜芽福利国产污在线观看| 国产在线视频网友自拍| 亚洲av无码专区在线观看下载| 国产婷婷一区二区三区| 国产成人精品亚洲午夜| 日本变态网址中国字幕| 国产桃色一区二区三区| 欧美日韩在线视频一区| 娇妻玩4p被三个男人伺候电影| 国产精品,在线点播影院| 蜜桃tv在线免费观看| 免费看黄色电影|