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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于CP2200的嵌入式以太網(wǎng)接口設(shè)計(jì)

          基于CP2200的嵌入式以太網(wǎng)接口設(shè)計(jì)

          作者: 時(shí)間:2013-03-15 來源:網(wǎng)絡(luò) 收藏

            4. 軟件設(shè)計(jì)

            4.1 驅(qū)動(dòng)程序

            以太網(wǎng)中,網(wǎng)絡(luò)接口就是一個(gè)以太網(wǎng)控制芯片及其驅(qū)動(dòng)程序。驅(qū)動(dòng)程序包含管理控制器芯片與網(wǎng)絡(luò)協(xié)議棧中上一層之間通信的程序代碼,為了在以太網(wǎng)上傳送IP數(shù)據(jù)報(bào),IP層將數(shù)據(jù)報(bào)傳遞給以太網(wǎng)控制器的驅(qū)動(dòng)程序,驅(qū)動(dòng)程序指示以太網(wǎng)控制器傳送以太網(wǎng)幀。在接收來自網(wǎng)絡(luò)的IP數(shù)據(jù)報(bào)時(shí),以太網(wǎng)控制器檢查目標(biāo)地址是否與接口硬件地址或控制器可接收的組播或廣播地址一致,如果一致,則控制器檢查錯(cuò)誤,驅(qū)動(dòng)程序把數(shù)據(jù)報(bào)或出錯(cuò)指示傳遞給IP層。

            這里驅(qū)動(dòng)程序主要是的初始化配置和收發(fā)配置。

            (1) 復(fù)位初始化

            CP2200復(fù)位初始化過程可以確保設(shè)備正常工作。復(fù)位開始時(shí),首先要等待復(fù)位引腳升高,然后等待振蕩器初始化完成,振蕩器初始化完成后會(huì)發(fā)送一個(gè)中斷信號。之后是CP2200自身初始化,可以通過檢測INT0中斷狀態(tài)寄存器確定自身初始化的完成。由于系統(tǒng)默認(rèn)的是允許所有的中斷,通過設(shè)置INT0EN和INT1EN關(guān)閉哪些不被主處理器處理的中斷事件。初始化過程還包括物理層(PHY)的初始化,以及媒體訪問層(MAC)的初始化。最后配置接收過濾器,系統(tǒng)復(fù)位后,過濾器允許廣播包和組播包,通過設(shè)置RXFILT寄存器可以決定是接收還是忽略諸如廣播、組播、短幀(幀長度小于64字節(jié))或者CRC錯(cuò)誤的幀等。初始化完成后,接收緩沖區(qū)為空,CP2200開始準(zhǔn)備發(fā)送或接收數(shù)據(jù).

            圖3 CP2200發(fā)送流程圖

            (2) 數(shù)據(jù)的接收和發(fā)送

            單片機(jī)通過使用CP2200的直接和間接寄存器來控制CP2200,直接寄存器可

            以訪問RAM緩沖區(qū),F(xiàn)LASH存儲(chǔ)區(qū),間接的MAC配置寄存器及其它的狀態(tài)和控制寄存器。CP2200具有2K(0x0000–0x07FF)字節(jié)的發(fā)送緩沖區(qū)和4K(0x0000–0x0FFF)字節(jié)的接收緩沖區(qū),它們共享相同的地址空間,都使用RAMADDRH:RAMADDRL指針訪問,每個(gè)緩沖區(qū)都有一個(gè)專門的數(shù)據(jù)寄存器。其中CP2200發(fā)送數(shù)據(jù)的流程圖如圖3所示:

            使用隨機(jī)儲(chǔ)存器訪問方法將該包裝入發(fā)送緩沖區(qū):

            a.將RAMADDRH:RAMADDRL設(shè)為0x0000。

            b.將第一個(gè)字節(jié)寫入 RAMTXDATA。

            c.將RAMADDRH:RAMADDRL加1。

            d.將另一個(gè)數(shù)據(jù)字節(jié)寫入 RAMTXDATA.

            e.重復(fù)步驟c和d直到整個(gè)包全部裝入發(fā)送緩存區(qū)。

            f.長度小于64字節(jié)的幀需要填充為至少64字節(jié)。

            g.將TXENDH:TXENDL設(shè)置為最后一個(gè)字節(jié)的地址。該地址值必須大于等于0x0040。



          評論


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