在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于51單片機(jī)RTL8019AS的網(wǎng)卡驅(qū)動(dòng)程序

            基于51單片機(jī)RTL8019AS的網(wǎng)卡驅(qū)動(dòng)程序

            作者: 時(shí)間:2012-01-20 來(lái)源:網(wǎng)絡(luò) 收藏

            MAC地址不是隨便定義的,它的組成結(jié)構(gòu)如圖9所示。以太網(wǎng)的地址為48位,由ieee統(tǒng)一分配給制造商,每個(gè)的地址都必須是全球唯一的。共6個(gè)字節(jié)的長(zhǎng)度。FF:FF:FF:FF:FF:FF為廣播地址,只能用在目的地址段,不能作為源地址段。目的地址為廣播地址的數(shù)據(jù)包,可以被一個(gè)局域網(wǎng)內(nèi)的所有網(wǎng)卡接收到。合法的以太網(wǎng)地址第32位組播標(biāo)志必須為0。例如:

            本文引用地址:http://www.biyoush.com/article/172229.htm

              X0:XX:XX:XX:XX:XX

              X2:XX:XX:XX:XX:XX

              X4:XX:XX:XX:XX:XX

              X6:XX:XX:XX:XX:XX

              X8:XX:XX:XX:XX:XX

              XA:XX:XX:XX:XX:XX

              XC:XX:XX:XX:XX:XX

              XE:XX:XX:XX:XX:XX

              為合法以太網(wǎng)地址。上面的X代表0-F中的任一個(gè)。

              地址

              X1:XX:XX:XX:XX:XX

              X3:XX:XX:XX:XX:XX

              X5:XX:XX:XX:XX:XX

              X7:XX:XX:XX:XX:XX

              X9:XX:XX:XX:XX:XX

              XB:XX:XX:XX:XX:XX

              XD:XX:XX:XX:XX:XX

              XF:XX:XX:XX:XX:XX

              為組播地址,只能作為目的地址,不能作為源地址。組播地址可以被支持該組播地址的一組網(wǎng)卡接收到。組播地址主要用在視頻廣播,遠(yuǎn)程喚醒(通過發(fā)一個(gè)特殊的數(shù)據(jù)包使網(wǎng)卡產(chǎn)生一個(gè)中斷信號(hào),啟動(dòng)電腦),游戲(多個(gè)人在局域網(wǎng)里聯(lián)機(jī)打游戲)里等。

              以下是一些具體的組播地址:

              地址范圍

              01:00:5E:00:00:00---01:00:5E:7F:FF:FF 用于ip地址的組播,其他組播地址跟tcp/ip無(wú)關(guān),不做介紹。

              網(wǎng)卡可以接收以下3種地址的數(shù)據(jù)包:

              第一種 目的地址跟自己的網(wǎng)卡地址是一樣的數(shù)據(jù)包;

              第二種 目的地址為FF:FF:FF:FF:FF:FF廣播地址的數(shù)據(jù)包;

              第三種 目的地址為跟自己的組播地址范圍相同的數(shù)據(jù)包。

              在以太網(wǎng)的應(yīng)用當(dāng)中,如果你希望你的數(shù)據(jù)包只發(fā)給一個(gè)網(wǎng)卡,目的地址用對(duì)方的網(wǎng)卡地址;

              如果你想把數(shù)據(jù)包發(fā)給所有的網(wǎng)卡,目的地址用廣播地址;

              如果你想把數(shù)據(jù)包發(fā)給一組網(wǎng)卡,目的地址用組播地址。

              其他用到的寄存器:

              CR---命令寄存器 TSR---發(fā)送狀態(tài)寄存器 ISR---中斷狀態(tài)寄存器

              RSR---接收狀態(tài)寄存器 RCR---接收配置寄存器 TCR---發(fā)送配置寄存器

              DCR---數(shù)據(jù)配置寄存器 IMR---中斷屏蔽寄存器 NCR---包發(fā)送期間碰撞次數(shù)

              FIFO---環(huán)回檢測(cè)后,查看FIFO內(nèi)容

              CNTR0---幀同步錯(cuò)總計(jì)數(shù)器

              CNTR1---CRC錯(cuò)總計(jì)數(shù)器

              CNTR2---丟包總計(jì)數(shù)器

              PAR0-5---本節(jié)點(diǎn)MAC地址

              MAR0-7---多播地址匹配

              建議:將圖形中寄存器名稱標(biāo)注上頁(yè)號(hào)和地址偏移(如:BNRY 0頁(yè)0x03),打印出此圖,看圖編程,直觀且不容易出錯(cuò)。

              備注:收緩沖區(qū)、發(fā)緩沖區(qū)、數(shù)據(jù)存儲(chǔ)區(qū)在16K雙口RAM里的安排由用戶自行決定,只要不引起沖突即可,以下源程序代碼實(shí)現(xiàn)的只是其中的一種分配方案。

              部分源程序清單:

              struct ethernet{

              unsigned char status; //接收狀態(tài)

              unsigned char nextpage; //下一個(gè)頁(yè)

              unsigned int length; //以太網(wǎng)長(zhǎng)度,以字節(jié)為單位

              unsigned int destnodeid[3]; //目的網(wǎng)卡地址

              unsigned int sourcenodeid[3]; //源網(wǎng)卡地址

              unsigned int protocal; //下一層協(xié)議

              unsigned char packet[1500]; //包的內(nèi)容

              };

              void ne2000init()//ne2000網(wǎng)卡初始化

              {

              rtl8019as_rst();

              reg00=0x21; //選擇頁(yè)0的寄存器,網(wǎng)卡停止運(yùn)行,因?yàn)檫€沒有初始化。

              delay_ms(10); //延時(shí)10毫秒,確保芯片進(jìn)入停止模式

              //使芯片處于mon和loopback模式,跟外部網(wǎng)絡(luò)斷開



            評(píng)論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉