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