基于AT91RM9200的以太網(wǎng)接口模塊設(shè)計
摘 要:主要介紹基于AT91RM9200處理器的以太網(wǎng)接口模塊設(shè)計,給出基于網(wǎng)絡(luò)芯片RTL8019AS的系統(tǒng)外圍接口相關(guān)器件選型。在硬件設(shè)計的基礎(chǔ)上,給出了詳細的編程思想、工作流程以及部分關(guān)鍵代碼。在此設(shè)計方案下,完全可以實現(xiàn)通過以太網(wǎng)進行通信,達到嵌入式模塊之間實時控制的目的。
關(guān)鍵詞:AT91RM9200;以太網(wǎng);RTL8019AS;嵌入式模塊
0 引 言
在Internet飛速發(fā)展的今天,網(wǎng)絡(luò)已經(jīng)滲透到生活的方方面面,與網(wǎng)絡(luò)的結(jié)合已經(jīng)成為嵌入式系統(tǒng)發(fā)展的必然趨勢。目前,ARM微處理器已經(jīng)在多個領(lǐng)域中得到應(yīng)用,各種基于ARM微處理器的設(shè)備應(yīng)用數(shù)量已經(jīng)遠遠超過了通用計算機,基于ARM微處理器的開發(fā)應(yīng)用正成為數(shù)字時代的技術(shù)潮流。
l AT91RM9200簡介
AT91RM9200是Atreel公司開發(fā)的基于ARM920T核的高性能,低功耗16/32位RISC微處理器,內(nèi)部集成豐富的外設(shè)資源與外設(shè)接口,從而為低功耗,低成本,高性能的計算機應(yīng)用提供了一個單片解決方案。適用于要求外設(shè)資源豐富,功耗低,工作穩(wěn)定的工業(yè)控制等方面。
AT91RM9200微處理器最高主頻為180 MHz,其雙向、32位外部數(shù)據(jù)總線支持8/16/32位數(shù)據(jù)寬度,26位地址總線可以對最大64 MB空間進行尋址。片內(nèi)集成了非常豐富的外圍功能模塊,包括內(nèi)存管理單元(MMU)、內(nèi)部包含16 KB的SRAM和128 KB的ROM,16 KB的數(shù)據(jù)緩存以及16 KB的指令緩存。其外部總線接口控制器(EBI),支持SDRAM,靜態(tài)存儲器,Burst FLASH以及Compact FLASH。為了提高系統(tǒng)性能還擴展了以下外設(shè);增強的時鐘發(fā)生器與電源管理控制器(PMC);系統(tǒng)定時器(ST);實時時鐘(RTC);高級中斷控制器(AIC);4個32位PIO控制器;20通道的外設(shè)數(shù)據(jù)控制器(PDC);10/100兆Base-T型以太網(wǎng)卡接口;4個通用同步/異步串行收發(fā)器(UASRT)以及JTAG/ICE接口等。
2 最小系統(tǒng)設(shè)計
硬件系統(tǒng)設(shè)計是嵌入式系統(tǒng)設(shè)計的基礎(chǔ),ARM系統(tǒng)硬件平臺主要分為兩部分:一部分為基于ARM處理器的最小系統(tǒng);另一部分為外圍擴展電路。系統(tǒng)只有在硬件最小系統(tǒng)調(diào)試穩(wěn)定的基礎(chǔ)上,才能靈活、輕松地擴展出其他外圍應(yīng)用,所以最小系統(tǒng)是保證微處理器可靠工作所必須的基本電路?;贏T91RM9200微處理器的最小系統(tǒng)由微處理器、電源電路、時鐘電路、復(fù)位電路、JTAG接口、存儲器模塊、串行調(diào)試接口等電路組成。
2.1 電源電路設(shè)計
在系統(tǒng)中AT91RM9200需要1.8 V和3.3 V電源,另外,大部分外圍器件需要3.3 V電源,小部分外圍器件還需要5 V電源,假設(shè)輸入電壓為5 V直流穩(wěn)壓電源。為了得到可靠的3.3 V電壓,此處選用的電壓轉(zhuǎn)換芯片是NCPlll7ST33T3,它的輸入電壓為5 V,輸出電壓為3.3 V,最大輸出電流為0.8 A。同樣,為了得到可靠的1.8 V電壓,選用NCPlll7STl8T3,它的輸入電壓為5 V,輸出電壓為1.8 V,最大輸出電流為0.8 A。由于3.3 V和1.8 V屬于NCPlll7系列的2個固定輸出電壓,所以設(shè)計比較簡單,只需要在電路中與芯片并聯(lián)2個典型值為10 tLF、的濾波電容即可。
2.2 時鐘電路設(shè)計
時鐘電路為AT91RM9200和其他外設(shè)電路提供工作時鐘。處理器內(nèi)部帶有鎖相環(huán)電路,所以外接頻率比較低的晶體振蕩器,該設(shè)計用晶體振蕩器Y1(20 MHz)作為系統(tǒng)的主時鐘振蕩器。處理器內(nèi)部還帶有實時時鐘電路,還需要外接32.768 kHz的晶體振蕩器。振蕩器產(chǎn)生的主時鐘和慢時鐘經(jīng)過微處理器內(nèi)部2個鎖相環(huán)后,產(chǎn)生系統(tǒng)所需的各種主時鐘、外設(shè)時鐘以及USB器件工作時鐘。
2.3 復(fù)位電路設(shè)計
AT91RM9200有2個獨立的復(fù)位信號,即系統(tǒng)復(fù)位信號NRST與調(diào)試復(fù)位信號NTRSI,都是低電平有效。系統(tǒng)上電后,AT91RM9200必須執(zhí)行一個上電復(fù)位,在過渡狀態(tài)下,它的強制復(fù)位信號為低,直到電源電壓和振蕩器工作頻率穩(wěn)定為止。此外,NRST和NTRST還可以手動復(fù)位,以方便用戶調(diào)試程序。該設(shè)計中選用的復(fù)位芯片是MAX811,再加上一個手動按鍵,當(dāng)工作電壓低于3 V或手動復(fù)位輸入引腳被拉低時處理器復(fù)位。
2.4 存儲器模塊設(shè)計
存儲器模塊包括NOR FLASH存儲器和SDRAM存儲器。
NOR FLASH存儲器用于存儲系統(tǒng)運行所需的程序和重要數(shù)據(jù),即使掉電,程序和數(shù)據(jù)也不會丟失。該設(shè)計中所用芯片是Atmel公司生產(chǎn)的AT49BNl614T,以保持與AT91RM9200的兼容性,其存儲容量為2 MB,工作電壓為3.3 V,采用56引腳TSOP封裝,具有16位數(shù)據(jù)寬度。AT91RM9200需要以下引腳與之對應(yīng)相連:A[1:21],D[0:15],NCSO/BFCS,NRST,BFRDY,BFWE,BFOE。
SDRAM存儲器的作用是存放系統(tǒng)運行時的程序和數(shù)據(jù),掉電后該部分程序和數(shù)據(jù)會丟失。設(shè)計中使用兩片數(shù)據(jù)寬度為16位的SDRAM并為一個具有32位數(shù)據(jù)寬度的SDRAM模塊,以充分發(fā)揮微處理器32位數(shù)據(jù)寬度的高性能。設(shè)計所使用的芯片是HY57V561620,其存儲容量為32 MB,工作電壓為3.3 V,采用54引腳TSOP封裝,16位數(shù)據(jù)寬度,支持自動刷新和自刷新。AT91RM9200需要以下引腳與HY57V561620對應(yīng)相連:D[0:31],A[2:11],A[13:14],NBS0,N:BSl,NBS2,NBS3,SDCKE,SDCK,SDCS,RAS,CAS,SDWE。這里特別注意:A12引腳不使用。
評論