基于ARM微處理器的嵌入式以太網(wǎng)接口設(shè)計(jì)
在嵌入式應(yīng)用場(chǎng)合,如果不使用93C46的話,可以降低成本,同時(shí)又減少連線,因此,本文采用第1 種方式即跳線方式,即通過(guò)設(shè)置RTL8019AS的65腳jp為高電平(接到Vcc或通過(guò)一個(gè)10kΩ的上拉電阻)來(lái)實(shí)現(xiàn)。
RTL8019AS是性價(jià)比高且?guī)в屑床寮从霉δ艿?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/全雙工以太網(wǎng)">全雙工以太網(wǎng)控制器,它的主要特點(diǎn)包括:符合EthernetⅡ與IEEE802.3標(biāo)準(zhǔn);全雙工,收發(fā)可同時(shí)達(dá)到10Mbit/s的速率;內(nèi)置16KB的SRAM,用于收發(fā)緩沖,減低對(duì)主處理器的要求;支持UTP、AUI、BNC自動(dòng)檢測(cè),還支持對(duì)10BaseT拓?fù)浣Y(jié)構(gòu)的自動(dòng)極性修正;允許4個(gè)診斷LED 引腳編程輸出。RTL8019AS內(nèi)部有2個(gè)RAM區(qū):1塊16KB,地址為0x4000~0x7fff;1塊32 B,地址為0x0000~0x001f。RAM 按頁(yè)存儲(chǔ),每256 B為一頁(yè)。
本方案中將RTL8019AS 的RAM 的前12 頁(yè)(0x4000~0x4Bff)作為發(fā)送緩沖區(qū),后52頁(yè)(0x4c00~0x7fff)作為接收緩沖區(qū),第0頁(yè)只有32B,用來(lái)存儲(chǔ)以太網(wǎng)的物理地址。
RTL8019AS 具有32 個(gè)輸出/ 輸出地址,地址偏移量為00H~1FH。其中00H~0FH 具有16 個(gè)地址為寄存器的地址,寄存器分為page0~page3,由RTL8019AS 中的命令寄存器CR中的PS1 和PS0 位來(lái)決定要訪問(wèn)的頁(yè)。復(fù)位端口包括18H~1FH 共8 個(gè)地址,用于RTL8019AS 的復(fù)位。
軟件設(shè)計(jì)
編寫控制以太網(wǎng)接口程序的步驟。
(1)μC/OS Ⅱ?qū)崟r(shí)操作系統(tǒng)的移植
μc/os Ⅱ是一種開(kāi)放源碼的實(shí)時(shí)嵌入式操作系統(tǒng),是一個(gè)可移植,可裁減,可固化的占先式多任務(wù)操作系統(tǒng),已被應(yīng)用到多種微處理器上,其大部分源碼是ANSI C 語(yǔ)言編寫的。
移植工作包括以下幾個(gè)內(nèi)容:a.設(shè)置:OS_CPU.H 中與處理器和編譯器相關(guān)的代碼。b.用C 語(yǔ)言改寫OS_CPU_C.C 中6個(gè)與操作系統(tǒng)相關(guān)的簡(jiǎn)單函數(shù)。c. 用匯編語(yǔ)言改寫OS _CPU _A..ASM 中的4 個(gè)與處理器相關(guān)的函數(shù)。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論