在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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 來源:網(wǎng)絡(luò) 收藏

             page(0);

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

              reg0a=0x00;

              reg0b=0x00;

              reg0c=0xE0; //monitor mode (no packet receive)

              reg0d=0xE2; //loop back mode

              //使用0x40-0x4B為的發(fā)送緩沖區(qū),共12頁(yè),剛好可以存儲(chǔ)2個(gè)最大的以太網(wǎng)包。

              //使用0x4c-0x7f為的接收緩沖區(qū),共52頁(yè)。

              reg01=0x4C; //Pstart 接收緩沖區(qū)范圍

              reg02=0x80; //Pstop

              reg03=0x4C; //BNRY

              reg04=0x40; //TPSR 發(fā)送緩沖區(qū)范圍

              reg07=0xFF;/*清除所有中斷標(biāo)志位*/

              reg0f=0x00;//IMR disable all interrupt

              reg0e=0xC8; //DCR byte dma 8位dma方式

              page(1); //選擇頁(yè)1的寄存器

              reg07=0x4D; //CURR

              reg08=0x00; //MAR0

              reg09=0x41; //MAR1

              reg0a=0x00; //MAR2

              reg0b=0x80; //MAR3

              reg0c=0x00; //MAR4

              reg0d=0x00; //MAR5

              reg0e=0x00; //MAR6

              reg0f=0x00; //MAR7

              initNIC(); //初始化MAC地址和網(wǎng)絡(luò)相關(guān)參數(shù)

              //將設(shè)置成正常的模式,跟外部網(wǎng)絡(luò)連接

              page(0);

              reg0c=0xCC; //RCR

              reg0d=0xE0; //TCR

              reg00=0x22; //這時(shí)讓芯片開始工作?

              reg07=0xFF; //清除所有中斷標(biāo)志位

              }

              void send_packet(union netcard *txdnet,unsigned int length)//ne2000發(fā)包子程序

              {//發(fā)送一個(gè)數(shù)據(jù)包的命令,長(zhǎng)度最小為60字節(jié),最大1514字節(jié)需要發(fā)送的數(shù)據(jù)包要先存放在txdnet緩沖區(qū)

              unsigned char i;

              unsigned int ii;

              page(0);

              if(length60) length=60;

              for(i=0;i3;i++)

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

              txd_buffer_select=!txd_buffer_select;

              if(txd_buffer_select)

              reg09=0x40 ; //txdwrite highaddress

              else

              reg09=0x46 ; //txdwrite highaddress

              reg08=0x00; //read page address low

              reg0b=length>>8; //read count high

              reg0a=length0xFF; //read count low;

              reg00=0x12; //write dma, page0

              for(ii=4;ii reg10=txdnet->bytes.bytebuf[ii];

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

              for(ii=0;ii1000;ii++) //檢查txp為是否為低

              if((reg000x04)==0) break;

              if((reg040x01)!=0) break; //表示發(fā)送成功

              reg00=0x3E;



            評(píng)論


            相關(guān)推薦

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

            關(guān)閉