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

          新聞中心

          EEPW首頁 > 電源與新能源 > 設計應用 > 基于c8051f020的遠程電源監(jiān)控系統(tǒng)設計

          基于c8051f020的遠程電源監(jiān)控系統(tǒng)設計

          作者: 時間:2009-05-14 來源:網(wǎng)絡 收藏

            3.2 網(wǎng)卡的初始化

            網(wǎng)卡在能夠正常工作以前,必須先對其進行初始化,一般帶有操作系統(tǒng)的計算機上,網(wǎng)卡的初始化由其驅(qū)動程序完成。此例中由于單片機是全裸機(不含驅(qū)動程序),不僅需要用戶自己完成網(wǎng)卡的初始化,還需要用戶自己設置網(wǎng)卡的mac(介質(zhì)訪問控制)地址以及對網(wǎng)卡進行讀寫訪問。

            初始化需要設置頁0與頁1的相關(guān)寄存器,頁2的寄存器是只讀的,不可以設置,頁3的寄存器不是ne2000兼容的,不用設置。需初始化的寄存器包括cr、dcr、pbcr、pstart、pstop、isr、imr、par0~par5、mar0~mar7、curr、tcr、rcr等寄存器。初始化函數(shù)主要要完成以下諸項工作。

           ?。?) 調(diào)用復位子程序隊rtl8019as進行復位。有兩種復位方式:一是硬件復位,通過拉高拉低reset引腳達到復位rtl8019as的目的;二是軟件復位,向if端口讀寫數(shù)據(jù)從而使rtl8019as復位。

            (2) 向命令寄存器cr寫入0x21h使rtl8019as處于停止模式,設置寄存器。

           ?。?) 設置數(shù)據(jù)配置寄存器dcr為使用fifo緩存、普通模式、8位數(shù)據(jù)傳輸模式,字節(jié)順序為高位字節(jié)在前,低位字節(jié)在后。設置rbcr0、rbcr1寄存器為0,即讀取ram字節(jié)數(shù)。

           ?。?) 設置接收和發(fā)送緩沖區(qū)起止地址。pstart接收緩沖區(qū)的起始頁地址0x46;pstop接收緩沖區(qū)的結(jié)束頁地址0x80;bnry指向最后一個已經(jīng)讀取頁的指針0x46;tpsr發(fā)送頁的起始地址0x40;curr芯片寫內(nèi)存指針,它指向當前正在寫的頁的下一個頁,即初始化時指向0x47。

           ?。?) 設置rcr接收配置寄存器為0xcc,使用接收緩沖區(qū),僅接收自己的地址的數(shù)據(jù)包(以及廣播地址數(shù)據(jù)包)和多點播送地址包,小于64字節(jié)的包丟棄,校驗錯的數(shù)據(jù)包不接收。設置tcr發(fā)送配置寄存器為0xe0,啟用crc自動生成和自動校驗,工作在正常模式。

           ?。?) 設置mar0~mar8為0,清除多播地址寄存器;設置isr為0xff,清除中斷狀態(tài)寄存器;設置中斷屏蔽寄存器imr為0,屏蔽所有中斷請求。

           ?。?) 將物理地址寫入par0~5物理地址寄存器。

           ?。?) 最后設置tcr發(fā)送配置寄存器為0xe0;設置命令寄存器cr為0x22,芯片進入正常工作狀態(tài),rtl8019as初始化完成。

            初始化時,必需指明嵌入式設備的48位硬件地址和廣播地址,并正確設置它的ip地址、子網(wǎng)掩碼和默認網(wǎng)關(guān)。工業(yè)控制一般都在一個同級局域網(wǎng)內(nèi)部進行,因此可以直接令網(wǎng)關(guān)的ip地址為0。其主控制流程如圖4所示。

          主控制流程

            4 結(jié)束語

            本文分析了嵌入式設備與以太網(wǎng)接口的組成,簡要介紹了rtl8019as和c8019f芯片,并給出了嵌入式mcu與以太網(wǎng)控制芯片的硬件連接及其軟件。該以數(shù)據(jù)采集為例的,在工業(yè)生產(chǎn)中有很大的現(xiàn)實意義。


          上一頁 1 2 3 下一頁

          評論


          相關(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); })();