<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          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í)間:2010-08-23 來(lái)源:網(wǎng)絡(luò) 收藏

            page(0);

            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í)讓芯片開(kāi)始工作?

            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;

          51單片機(jī)相關(guān)文章:51單片機(jī)教程




          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();