日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

基于ARM微處理器及嵌入試Linux的串口網(wǎng)橋軟硬件設(shè)計(jì)

出處:bcaiyo 發(fā)布于:2007-04-29 09:19:10

基于ARM微處理器及嵌入試Linux的串口網(wǎng)橋軟硬件設(shè)計(jì)

許振山 晏寄夫 王富榮
西南交通大學(xué)電氣學(xué)院 四川成都 610031

l、引言

在電力系統(tǒng)自動(dòng)化控制及其他工業(yè)控制、民用設(shè)備如商場(chǎng)銷售系統(tǒng)等領(lǐng)域,眾多設(shè)備的對(duì)外通訊接口仍然是低速串口。串口由于其易用性、可靠性及相對(duì)于工控設(shè)備來(lái)說(shuō)足夠高的通信能力而長(zhǎng)盛不衰。然而,串口有一個(gè)重大弱點(diǎn)就是傳輸距離短且無(wú)法與網(wǎng)絡(luò)直接相連,造成設(shè)備無(wú)法實(shí)現(xiàn)遠(yuǎn)程控制及數(shù)據(jù)共享,而這些恰恰是實(shí)現(xiàn)工業(yè)控制高度自動(dòng)化的必須條件。因此,要求設(shè)計(jì)一種使串口設(shè)備快捷方便地實(shí)現(xiàn)聯(lián)網(wǎng)功能的裝置,而且要求其成本低廉,我們稱之為串口網(wǎng)橋或串口設(shè)備聯(lián)網(wǎng)服務(wù)器。

2、串口網(wǎng)橋簡(jiǎn)介

我們?cè)O(shè)計(jì)的串口網(wǎng)橋是一個(gè)可以為RS-232串口設(shè)備提供聯(lián)網(wǎng)能力的設(shè)備聯(lián)網(wǎng)服務(wù)器。裝置主要完成主機(jī)與串口設(shè)備間交流數(shù)據(jù)的過(guò)濾與轉(zhuǎn)發(fā)功能,將RS-232信號(hào)轉(zhuǎn)換成TCP/IP協(xié)議,使設(shè)備數(shù)據(jù)可以在I n t e r n e t或 Intranet上流通、共享。牢門網(wǎng)橋具體功能描述如下:

● (遠(yuǎn)程、本地)主機(jī)可以如操作本機(jī)串口一樣通過(guò)TCP/1P網(wǎng)絡(luò)對(duì)串口設(shè)備進(jìn)行遠(yuǎn)程數(shù)據(jù)讀取,資料處理和數(shù)據(jù)多點(diǎn)傳輸,即串口設(shè)備原有的主機(jī)方應(yīng)用程序不需任何修改即可重新利用;

●支持主機(jī)以Web方式及Telnet方式登錄修改配置;

●可在網(wǎng)橋裝置上直接設(shè)置IP地址;

●自動(dòng)檢測(cè)10/100Mbps Ethernet網(wǎng)絡(luò);

●可同時(shí)操作8個(gè)串口設(shè)備。串口網(wǎng)橋裝置廣泛應(yīng)用于工業(yè)設(shè)備聯(lián)網(wǎng)自動(dòng)化、門禁考勤管理、商場(chǎng)銷售系統(tǒng)聯(lián)網(wǎng)自動(dòng)化、遠(yuǎn)程影像傳輸?shù)缺姸囝I(lǐng)域,它的典型應(yīng)用如圖1所示:

3、系統(tǒng)硬件結(jié)構(gòu)

串口網(wǎng)橋的硬件結(jié)構(gòu)原理圖如圖2所示:

各主要模塊基本組成描述如下:

●每微處理器MCU:采用SAMISUNG公司生產(chǎn)的ARM7TDMI內(nèi)核S3C4510B處理器;

● 1 0/100M以太網(wǎng)接口:用一片RTL8201與S3C4510B片內(nèi)的MAC控制器一起組成以太網(wǎng)接口電路,并通過(guò)網(wǎng)絡(luò)隔離變壓器與RJ45以太網(wǎng)口相連;

●FLASH存儲(chǔ)器:采用一片39VFl60
FLASH存儲(chǔ)器,大小為2M字節(jié),用于存
放已調(diào)試好的用戶應(yīng)用程序、嵌入式
操作系統(tǒng)以及其他在系統(tǒng)掉電后需要
保存的用戶數(shù)據(jù)等;

● S D R A M存儲(chǔ)器:用兩片HY57V641620HG并聯(lián)構(gòu)建32位的SDRAM存儲(chǔ)器系統(tǒng),共16M字節(jié),可滿足嵌入式操作系統(tǒng)及各種相對(duì)較復(fù)雜的算法的運(yùn)行要求;

●JTAG接口:可對(duì)芯片內(nèi)部的所有部件進(jìn)行訪問(wèn),通過(guò)該接口可對(duì)系統(tǒng)進(jìn)行調(diào)試、編程等;

●多串口擴(kuò)展:用兩片STl6C554擴(kuò)展出八個(gè)串口,以同時(shí)連接多臺(tái)串口設(shè)備。

下面分別對(duì)裝置硬件結(jié)構(gòu)中的主要模塊功能進(jìn)行簡(jiǎn)要分析。

3.1ARM微處理器S3C4510B

串口網(wǎng)橋的系統(tǒng)是一顆韓國(guó)三星電子生產(chǎn)的S3C45l0B-16/32位RI 5C(精簡(jiǎn)指令集計(jì)算機(jī))微控制器。該微控制器專為以太網(wǎng)通信系統(tǒng)的集線器和路由器而設(shè)計(jì),具有低成本和高性能的特點(diǎn)。

S3C45l0B中內(nèi)置了ARM公司設(shè)計(jì)的16/32位ARM7TDMI處理器,提供了8K字節(jié)的Cache(高速緩存)和以太控制器,內(nèi)置2通道的HDLC(數(shù)據(jù)鏈路控制),2個(gè)UART(通用異步收發(fā))通道,內(nèi)置32位定時(shí)器和18個(gè)通用可編程I/O端口。S3C4510B內(nèi)部采用32位系統(tǒng)總線,有I2C接口,還集成了中斷控制器、DRAM/SDRAM控制器、ROM/SRAM和閃存控制器。以上功能特點(diǎn)均集成在此單芯片中,可大大減少系統(tǒng)成本。 軟件方面,S3C45l 0B因內(nèi)置ARSM7TDMI核,可以執(zhí)行32位的ARM指令,也可執(zhí)行16位的THUMB指令。

S3C4510B采用3.3V電壓供電,208腳的QFP封裝,操作頻率達(dá)50MHz。

3.2 10/100M以太網(wǎng)接口電路

S3C4510B內(nèi)嵌了一個(gè)以太網(wǎng)控制器,支持媒體獨(dú)立接口(Media Independent Interface,UII)和帶緩沖DMA接口(Buffered DMA Interface,BDI),可在半雙工或全雙工模式下提供10/100Mbps的以太網(wǎng)接入。在半雙工模式下,控制器支持CSMA/CD協(xié)議,在全雙工模式下支持IEEE802.3 MAC控制層協(xié)議。

但S3C4510B并未提供物理層接口,因此,需外接一片物理層芯片以提供以太網(wǎng)的接入通道。常用的單口10/l00Mbps高速以太網(wǎng)物理層接口器件主要有RTL8201,DM9161等,均提供MII接口和傳統(tǒng)7線制網(wǎng)絡(luò)接口,可方便地與S3C4510B相連。串口網(wǎng)橋的設(shè)計(jì)中使用RTL8201作為以太網(wǎng)的物理層接口。

3.3 Flash存儲(chǔ)器接口電路

Flash存儲(chǔ)器具有低功耗、大容量、擦寫(xiě)速度快.可整片或分扇區(qū)在系統(tǒng)編程(燒寫(xiě))、擦除等特點(diǎn),因而在各種嵌入式系統(tǒng)中得到了廣泛的應(yīng)用。作為一種非易失性存儲(chǔ)器,F(xiàn)lash在系統(tǒng)中通常用于存放程序代碼以及一些在系統(tǒng)掉電后需要保存的用戶數(shù)據(jù)等。系統(tǒng)中用了一片39VFl60 FLASH存儲(chǔ)器,其單片存儲(chǔ)容量為16M位(2M字節(jié)),工作電壓為2.7V~3.6V,采用48腳TSOP封裝或48腳FBGA封裝,16位數(shù)據(jù)寬度。

39VF160僅需單3V電壓即可完成在系統(tǒng)的編程與擦除操作,通過(guò)對(duì)其內(nèi)部的命令寄存器寫(xiě)入標(biāo)準(zhǔn)的命令序列,可對(duì)Flash進(jìn)行編程(燒寫(xiě))、整片擦除、按扇區(qū)擦除以及其他操作。

3.4 SDRAM接口電路

SDPAM在系統(tǒng)中主要用作程序的運(yùn)行空間,數(shù)據(jù)及堆棧。當(dāng)系統(tǒng)啟動(dòng)
時(shí),CPU首先從復(fù)位地址起始處開(kāi)始讀取啟動(dòng)代碼,在完成系統(tǒng)的初始化后,程序代碼一般應(yīng)調(diào)入SDRAM中運(yùn)行,以提高系統(tǒng)的運(yùn)行速度,同時(shí),系統(tǒng)堆棧,用戶堆棧以及運(yùn)行數(shù)據(jù)也都放在SDRAM中。

要在系統(tǒng)中使用SDRAM.要求微處理器具有刷新控制邏輯,或在系統(tǒng)中另外加入刷新控制邏輯電路。S3C4510B及其他一些ARM芯片在片內(nèi)具有獨(dú)立的SDRAM刷新控制邏輯,可方便地與SDRAM相連接。

HY57V641620HG為16位數(shù)據(jù)寬度,單片容量為8M字節(jié),為充分發(fā)揮32位CPU的數(shù)據(jù)處理能力,串口網(wǎng)橋設(shè)計(jì)中用兩片HY57V641620HG并聯(lián)構(gòu)成32位的SDRAM存儲(chǔ)器系統(tǒng),共16M字節(jié)的SDRAM空間,可滿足嵌入式操作系統(tǒng)及各種相對(duì)較復(fù)雜的算法的運(yùn)行要求。

3.5 JTAG接口電路

JTAG(Joint Test Action Group)是一種國(guó)際標(biāo)準(zhǔn)測(cè)試協(xié)議,主要用于芯片內(nèi)部測(cè)試及對(duì)系統(tǒng)進(jìn)行仿真、調(diào)試。JTAG技術(shù)是一種嵌入式調(diào)試技術(shù),它在芯片內(nèi)部封裝了專門的測(cè)試電路,可以通過(guò)專用的JTAG測(cè)試軟件對(duì)芯片內(nèi)部節(jié)點(diǎn)進(jìn)行測(cè)試。目前大多數(shù)比較復(fù)雜的器件都支持JTAG協(xié)議,如ARM、DSP,F(xiàn)PGA器件等。JTAG接口常用于實(shí)現(xiàn)ISP(In-System Programmable,在系統(tǒng)編程)功能,如對(duì)FLASH器件進(jìn)行編程等。通過(guò)JTAG接口,可對(duì)芯片內(nèi)部的所有部件進(jìn)行訪問(wèn),因而是開(kāi)發(fā)調(diào)試嵌入式系統(tǒng)的一種簡(jiǎn)潔而高效的手段。

3.6多串口擴(kuò)展

串口網(wǎng)橋提供八個(gè)標(biāo)準(zhǔn)RS232串口以連接多臺(tái)串口設(shè)備。當(dāng)然。S3C4510B不可能提供這么多個(gè)串口,因此我們需要自己擴(kuò)展。

多串口擴(kuò)展原理如圖3所示。

STl6C554是集成異步通信元件,每片16C554中包含4個(gè)改良的16C350異步傳輸器件,每個(gè)通道有獨(dú)立的16字節(jié)接收緩沖器和16字節(jié)發(fā)送緩沖器,可以達(dá)到更高的通訊速率而無(wú)需占用過(guò)多的CPU資源。

Maxim公司的MAX202芯片是標(biāo)準(zhǔn)的RS232電平轉(zhuǎn)換器,是符合RS232通信標(biāo)準(zhǔn)的接口芯片,該芯片功耗低,集成度高,使用單一5V電源,每片有2個(gè)驅(qū)動(dòng)器和2個(gè)接收器,具有2組接收和發(fā)送通道,接口電路簡(jiǎn)單,可靠性高,可實(shí)現(xiàn)TTL電平和RS232電平的直接轉(zhuǎn)換。

串口數(shù)據(jù)信號(hào)通過(guò)MAX202轉(zhuǎn)換成TTL電平,再通過(guò)STl6C554輸出中斷請(qǐng)求。八個(gè)串口的中斷請(qǐng)求或起來(lái)產(chǎn)生IRQ信號(hào)INTREQ,經(jīng)CPLD再與CPU的中斷控制器相連。

設(shè)計(jì)中使用CPLD主要是為了解決多串口共享一個(gè)中斷源時(shí)必然產(chǎn)生的中斷重疊問(wèn)題。為提高可靠性,系統(tǒng)中的八個(gè)串口均采用中斷方式進(jìn)行數(shù)據(jù)處理,并且八個(gè)串口共享一個(gè)中斷源。在共用的中斷服務(wù)程序中,程序按順序?qū)Π藗€(gè)串口進(jìn)行數(shù)據(jù)檢測(cè)。若發(fā)現(xiàn)某個(gè)串口有數(shù)據(jù),則進(jìn)行相應(yīng)處理。但這樣一來(lái),將會(huì)產(chǎn)生如下問(wèn)題:例如,中斷服務(wù)程序剛對(duì)串口l進(jìn)行檢測(cè),沒(méi)有發(fā)現(xiàn)數(shù)據(jù),則轉(zhuǎn)向串口2進(jìn)行檢測(cè),發(fā)現(xiàn)串口2有數(shù)據(jù),因此程序?qū)⑦M(jìn)行串口2的數(shù)據(jù)處理,如果這時(shí)串口l發(fā)生中斷請(qǐng)求,由于CPU無(wú)法保存該請(qǐng)求脈沖,串口l的中斷請(qǐng)求將被忽略。

為了解決這個(gè)問(wèn)題,可以在共享中斷源后面加一個(gè)用CPLD實(shí)現(xiàn)的邏輯電路。該邏輯電路由兩部分組成,部分是一個(gè)可尋址的寄存器INTEN,作為共享中斷的允許位。第二部分是一個(gè)狀態(tài)機(jī)邏輯電路,該電路共有三個(gè)狀態(tài):S 0是等待狀態(tài),該狀態(tài)下INTEN=I,只要任何一個(gè)串口產(chǎn)生中斷請(qǐng)求,CPU將馬上響應(yīng)該中斷;Sl是中斷服務(wù)狀態(tài),中斷服務(wù)程序一開(kāi)始執(zhí)行,馬上將INTEN設(shè)置為0,以屏蔽其他中斷請(qǐng)求,退出中斷服務(wù)程序時(shí),再將INTEN設(shè)置為1,中斷服務(wù)程序執(zhí)行期間產(chǎn)生的串口中斷請(qǐng)求由INTREQ鎖存;S2為延時(shí)狀態(tài),延時(shí)50us,以確保中斷服務(wù)程序完全退出。

狀態(tài)機(jī)邏輯電路狀態(tài)圖如圖4所示:

4.系統(tǒng)軟件平臺(tái)

4.5 uC1inux操作系統(tǒng)簡(jiǎn)介

Linux是一種很受歡迎的類UNIX操作系統(tǒng),它并開(kāi)放源代碼,在個(gè)人計(jì)算機(jī)、服務(wù)器領(lǐng)域應(yīng)用廣泛。更重要的是,Linux采取模塊化設(shè)計(jì),實(shí)際應(yīng)用中可以實(shí)現(xiàn)定制,因此Linux也適用于嵌入式領(lǐng)域。uClinux正是Linux的一個(gè)嵌入式版本,其內(nèi)核的二進(jìn)制映像文件可以做到小于512K。

uClinux針對(duì)無(wú)MMU(Memory Management Unit,內(nèi)存管理單元)的處理器設(shè)計(jì),支持多任務(wù),具有完備的TCP/IP協(xié)議棧并支持多種網(wǎng)絡(luò)協(xié)議。uClinux還支持多種文件系統(tǒng),如ROMFS,NFS,F(xiàn)ATl6/32。實(shí)際上,uClinux已經(jīng)成功應(yīng)用于路由器、網(wǎng)絡(luò)攝像機(jī)、機(jī)頂盒、PDA等諸多領(lǐng)域。

另外,uClinux可移植性很強(qiáng),用戶通過(guò)重新配置、編譯內(nèi)核,可以很方便地將其移植到ARM,Dragon Ball、ColdFire、Power PC等多種處理器計(jì)算平臺(tái)。當(dāng)前uClinux主要提供2.0和2.4兩個(gè)內(nèi)核版本。

4.2軟件開(kāi)發(fā)調(diào)試方法

嵌入式Linux軟件開(kāi)發(fā)可以采用一種特殊的模式:主機(jī)--目標(biāo)機(jī)模式進(jìn)行開(kāi)發(fā),其中主機(jī)就是常用的PC或工作站,開(kāi)發(fā)環(huán)境運(yùn)行在主機(jī)上,主機(jī)的操作系統(tǒng)是通用的Windows或Linux系統(tǒng)。目標(biāo)機(jī)就是嵌入式應(yīng)用系統(tǒng),它與主機(jī)間通過(guò)串行口、以太網(wǎng)或其他方式通信,從主機(jī)編譯好的代碼并運(yùn)行。

利用GNU提供的交叉調(diào)試工具,開(kāi)發(fā)人員可以在主機(jī)上調(diào)試目標(biāo)機(jī)上運(yùn)行的程序。在目標(biāo)機(jī)上運(yùn)行一個(gè)代理,以接收主機(jī)發(fā)送過(guò)來(lái)的命令和代碼,并解釋執(zhí)行。通過(guò)調(diào)試器。開(kāi)發(fā)者可以設(shè)定程序運(yùn)行的起止位置和斷點(diǎn),同時(shí)可以查看和改變變量、寄存器和內(nèi)存中的值,設(shè)置程序運(yùn)行條件等,使開(kāi)發(fā)人員感到如同在本機(jī)上調(diào)試程序一樣方便。

4.3程序框圖

串口網(wǎng)橋控制程序的主要功能就是實(shí)現(xiàn)對(duì)串口數(shù)據(jù)和網(wǎng)絡(luò)數(shù)據(jù)的重組與轉(zhuǎn)發(fā)。本地主機(jī)或遠(yuǎn)端主機(jī)上的應(yīng)用程序以原有的操作本機(jī)串口的方式與連接在串口網(wǎng)橋上的設(shè)備進(jìn)行信息交互,主機(jī)上的設(shè)備驅(qū)動(dòng)程序?qū)?yīng)用程序要求發(fā)送的串口數(shù)據(jù)以及對(duì)應(yīng)串口號(hào)等輔助信息轉(zhuǎn)換為網(wǎng)絡(luò)數(shù)據(jù)包,發(fā)送到以太網(wǎng)上;串口網(wǎng)橋的控制程序接收到經(jīng)以太網(wǎng)傳送過(guò)來(lái)的數(shù)據(jù)包后,將數(shù)據(jù)包解包并提取其中的串口命令數(shù)據(jù)以及目標(biāo)串口號(hào)等信息,而后重組成串口數(shù)據(jù)并發(fā)送到相應(yīng)串口。控制程序處理串口設(shè)備上傳給本地主機(jī)或遠(yuǎn)端主機(jī)的數(shù)據(jù)的方式與上述過(guò)程相反。

串口網(wǎng)橋軟件結(jié)構(gòu)如圖5所示:

5,結(jié)束語(yǔ)

本文討論了一個(gè)基于ARM微處理器S3C4510B及uClinux的串口網(wǎng)橋設(shè)備的軟硬件設(shè)計(jì),對(duì)S3C4510B芯片功能進(jìn)行了簡(jiǎn)要描述,并探討了基于該芯片的嵌入式Linux軟件開(kāi)發(fā)模式.事實(shí)證明,采用Linux作為嵌入式操作系統(tǒng)并充分利用GNU提供的開(kāi)發(fā)工具包,降低了嵌入式系統(tǒng)開(kāi)發(fā)的經(jīng)濟(jì)門檻,使更多的人能夠掌握相關(guān)技術(shù),代表了嵌入式系統(tǒng)開(kāi)發(fā)的一種新方向。



  

參考文獻(xiàn):

[1]. RS-232 datasheet http://www.hbjingang.com/datasheet/RS-232_584855.html.
[2]. ARM7TDMI datasheet http://www.hbjingang.com/datasheet/ARM7TDMI_139812.html.
[3]. S3C4510B datasheet http://www.hbjingang.com/datasheet/S3C4510B_589499.html.
[4]. 100M datasheet http://www.hbjingang.com/datasheet/100M_2509927.html.
[5]. RTL8201 datasheet http://www.hbjingang.com/datasheet/RTL8201_586322.html.
[6]. HY57V641620HG datasheet http://www.hbjingang.com/datasheet/HY57V641620HG_390467.html.
[7]. ROM datasheet http://www.hbjingang.com/datasheet/ROM_1188413.html.
[8]. DM9161 datasheet http://www.hbjingang.com/datasheet/DM9161_264516.html.
[9]. FBGA datasheet http://www.hbjingang.com/datasheet/FBGA_1457924.html.
[10]. RS232 datasheet http://www.hbjingang.com/datasheet/RS232_585128.html.
[11]. 16C554 datasheet http://www.hbjingang.com/datasheet/16C554_24747.html.
[12]. Maxim datasheet http://www.hbjingang.com/datasheet/Maxim_1062568.html.
[13]. MAX202 datasheet http://www.hbjingang.com/datasheet/MAX202_1089634.html.
[14]. TTL datasheet http://www.hbjingang.com/datasheet/TTL_1174409.html.
[15]. CPLD datasheet http://www.hbjingang.com/datasheet/CPLD_1136600.html.


關(guān)鍵詞:基于ARM微處理器及嵌入試Linux的串口網(wǎng)橋軟硬件設(shè)計(jì)MAXIMMAX202HY57V641620HGS3C4510BDM916139VF16016C554RJ45RS232RS-232 

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

Maxim (美信)緊缺芯片IC「MAX333AEWP 」開(kāi)箱,中遠(yuǎn)亞電子實(shí)拍!
廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號(hào)碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號(hào),
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫(kù)提出的寶貴意見(jiàn),您的參與是維庫(kù)提升服務(wù)的動(dòng)力!意見(jiàn)一經(jīng)采納,將有感恩紅包奉上哦!