百科解釋
網(wǎng)絡控制器選用DAVICOM公司的DM9000快速以太網(wǎng)控制處理器,合成了MAC,PHY,MMU。該處理器配備有標準10M/100M自適應,16K大容量的FIFO,4路多功能GPIO,掉電,全雙工工作等功能。物理層支持以太網(wǎng)接口協(xié)議。由于數(shù)據(jù)有時是以猝發(fā)形式收到的,因此,DM9000還集成有接收緩沖區(qū),以便在接收到數(shù)據(jù)時能把數(shù)據(jù)放到這個緩沖區(qū)中,然后由數(shù)據(jù)鏈路層直接從該緩沖區(qū)里取走數(shù)據(jù)。鏈路層通常包括操作系統(tǒng)中的設備驅(qū)動程序和計算機中對應的網(wǎng)絡接口卡,它們一起處理與電纜的物理接口細節(jié)數(shù)據(jù),它的緩沖區(qū)可用來暫時存儲要發(fā)送或接收的幀。
DM9000網(wǎng)卡工作原理:
·DM_NCR(0x00)
網(wǎng)絡控制寄存器。網(wǎng)絡控制寄存器用于對DM9000工作狀態(tài)的控制,可以使DM9000復位。
·DM_NSR(0x01)
網(wǎng)絡狀態(tài)寄存器,從該寄存器可以獲知DM9000當前的工作狀態(tài),例如是否處于連接狀態(tài),發(fā)送數(shù)據(jù)是否完畢,是否處于睡眠狀態(tài)等。
·DM_TCR(0x02)
發(fā)送控制寄存器,可以控制發(fā)送使能。
·DM_RCR(0x05)
接收控制寄存器,可以控制接收使能。
·DM_RST (0x06)
接收狀態(tài)寄存器,當有接收中斷到來時,可以通過讀取該寄存器,進一步了解當前DM9000網(wǎng)卡的接收狀態(tài),從而確定目前接受的這一幀數(shù)據(jù)應該如何處理。
·DM_FCR(0x0A)
接收、發(fā)送流量控制寄存器。
·DM_TXPLL(0xFC)
傳送數(shù)據(jù)長度低字節(jié)寄存器,在發(fā)送數(shù)據(jù)時,該寄存器存放發(fā)送的數(shù)據(jù)的長度的低字節(jié)。
·DM_TXPLH(0xFD)
傳送數(shù)據(jù)長度高字節(jié)寄存器,在發(fā)送數(shù)據(jù)時,該寄存器存放發(fā)送的數(shù)據(jù)的長度的高字節(jié)。
·DM_ISR(0xFE)
中斷狀態(tài)寄存器,當一個中斷到來時,該寄存器存放著中斷類型。DM9000中斷處理函數(shù)通過讀取該寄存器,得到目前中斷信息,從而能夠正確調(diào)用相應的中斷處理子程序。讀取該中斷狀態(tài)寄存器之后,還需要將讀取結(jié)果存放回該寄存器,也就是需要清楚中斷狀態(tài),否則將無法再次響應中斷。
·DM_IMR (0xFF)
中斷掩碼寄存器,該寄存器存放當前DM9000使能的中斷類型。在該系統(tǒng)中,我們只讓接收中斷使能。利用該寄存器,我們可以靈活地使得DM9000屏蔽中斷,或者開啟中斷,例如在發(fā)送數(shù)據(jù)開始時,可以屏蔽中斷,在發(fā)送結(jié)束后,再開啟中斷,這樣可以使得DM9000工作的穩(wěn)定性大大提高。