久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于DM9000A的網絡接口設計

基于DM9000A的網絡接口設計

作者: 時間:2012-07-17 來源:網絡 收藏

2 芯片操作
的讀/寫操作與一般的異步存儲器相同,圖2和圖3分別顯示了的讀/寫時序。

本文引用地址:http://www.cqxgywz.com/article/148754.htm

d.JPG


根據芯片資料,編寫讀/寫寄存器的子函數。
寄存器的讀操作程序:
e.JPG
f.JPG

3 軟件
3.1 DM9000A初始化
對DM9000A芯片的初始化,就是向相應的寄存器寫入期望的值,為芯片的穩定工作做好準備。主要需要進行以下設置以便讓芯片處于工作狀態:
(1)開啟DM9000A工作狀態:芯片GEPIO0的默認值為1,芯片處于Powerdown狀態,所以首先需要將這一位設置為0,來打開芯片。設置方法是將寄存器GPCR的bit[0]設置為1,將寄存器GPR的bit[0]設置為0。
(2)進行2次復位操作:根據芯片的特點,要使芯片達到正常工作狀態,需要對其進行2次軟啟動操作,方法是向NCR寄存器寫入3,延遲至少10μs后,寫入0,重復這個操作一次。
(3)設置MAC地址:初始化時要初始化PAR(10h~15h)寄存器,PAR中保存的是芯片物理地址(MAC地址),芯片根據數據與PAR中的數據比較來確定接收到的數據是否是發給自己的。
(4)收、發控制寄存器設置:要清除發送狀態寄存器,打開收/發中斷使能。
初始化完成后可以通過讀NCR寄存器來判斷芯片是否已經正確的完成初始化,并處于工作狀態,如果未初始化成功,可以重復以上操作。
3.2 數據發送
在數據發送之前,首先要對數據按協議進行封包,將封包后的數據全部發送。DM9000A的內部RAM地址0000h~0BFFh是發送緩沖區,用來存放發送數據包。用戶在寫入數據時,無需關心數據存放的地址,只要向MWCMD寄存器連續寫入封包數據即可,芯片會自動將數據依次寫入到發送緩沖區中。另外還需將要封包后數據的大小存放在TXPLH和TXPLL寄存器中,之后再將TCR的bit0設為1,芯片將開始進行封包數據的傳送。可以通過讀取TSRI,TSR11寄存器判斷本次數據發送是否成功。



評論


相關推薦

技術專區

關閉