音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

基于ARM的嵌入式網(wǎng)絡(luò)接口控制器設(shè)計(jì)

出處:yewuyi 發(fā)布于:2008-09-01 08:57:42

  摘要:隨著工業(yè)以太網(wǎng)技術(shù)的發(fā)展,以太網(wǎng)已經(jīng)滲透到了控制系統(tǒng)網(wǎng)絡(luò)的控制層和設(shè)備層,然而大量的工業(yè)現(xiàn)場設(shè)備尚不具備網(wǎng)絡(luò)接口,主要通過串行口進(jìn)行通訊,以至無法直接接到以太網(wǎng)。隨著技術(shù)的發(fā)展,32位微處理器成為嵌入式市場應(yīng)用的主流,本文選用32位微處理器s3c2410作為主芯片開發(fā)嵌入式接口控制器,實(shí)現(xiàn)串口數(shù)據(jù)和以太網(wǎng)數(shù)據(jù)之間的轉(zhuǎn)換.在不改變原有設(shè)備的基礎(chǔ)上,為其添加網(wǎng)絡(luò)接口,從而實(shí)現(xiàn)傳統(tǒng)串口設(shè)備接入以太網(wǎng)。

 ?。薄∏把?/FONT>

  以太網(wǎng)作為目前應(yīng)用為廣泛的局域網(wǎng)技術(shù),在工業(yè)自動化和過程控制領(lǐng)域得到了越來越的應(yīng)用。傳統(tǒng)的控制系統(tǒng)在信息層大都采用以太網(wǎng),而在控制層和設(shè)備層一般采用不同的現(xiàn)場總線或其他專用網(wǎng)絡(luò)。目前,隨著工業(yè)以太網(wǎng)技術(shù)的發(fā)展,以太網(wǎng)已經(jīng)滲透到了控制層和設(shè)備層?;谝蕴W(wǎng)的控制網(wǎng)絡(luò)典型的應(yīng)用形式是Ethernet+ICP/IP,它的底層是Ethernet,網(wǎng)絡(luò)層和傳輸層采用國際公認(rèn)的標(biāo)準(zhǔn)TCP/IP.然而大量的工業(yè)現(xiàn)場設(shè)備,如數(shù)控機(jī)床、機(jī)械手等設(shè)備,這些設(shè)備常用的通訊方式為RS-232/485/422串行接口,不具備網(wǎng)絡(luò)接口,以至無法直接接到以太網(wǎng)。

  隨著半導(dǎo)體產(chǎn)業(yè)和集成電路技術(shù)的發(fā)展,以微控制器/微處理為硬件的嵌入式系統(tǒng)得到迅速發(fā)展,并在無線通訊、網(wǎng)絡(luò)設(shè)備、工業(yè)控制等領(lǐng)域得到廣泛應(yīng)用。本文選用基于ARM9和armlinux開發(fā)嵌入式網(wǎng)絡(luò)接口控制器,實(shí)現(xiàn)串行口數(shù)據(jù)與以太網(wǎng)數(shù)據(jù)的相互轉(zhuǎn)換,通過這種方式,可以使傳統(tǒng)串口設(shè)備成為具有網(wǎng)絡(luò)接口的設(shè)備,直接接入工業(yè)以太網(wǎng)。

 ?。病∏度胧骄W(wǎng)絡(luò)接口控制器工作原理

  嵌入式網(wǎng)絡(luò)接口器選用DM9000E芯片作以太網(wǎng)控制器,來完成與上級以太網(wǎng)的數(shù)據(jù)交換,采用32位微處理器s3c2410和嵌入式Linux進(jìn)行協(xié)議實(shí)現(xiàn)和數(shù)據(jù)處理,然后將處理過的數(shù)據(jù)下傳給底層設(shè)備終端;把從底層終端設(shè)備接收的數(shù)據(jù),進(jìn)行數(shù)據(jù)處理和協(xié)議實(shí)現(xiàn),通過DM900E傳輸?shù)剑桑睿簦澹颍睿澹羯稀9ぷ髟砣纾彼?/FONT>

 ?。场∏度胧骄W(wǎng)絡(luò)接口控制器硬件平臺

  嵌入式網(wǎng)絡(luò)接口控制器硬件平臺的整體連接框圖如圖?。病∷尽1疚倪x用基于ARM9內(nèi)核ARM9TDMI的32位微處理器s3c2410作為主控芯片。S3C2410處理器是Samsung公司基于ARM公司的ARM920T處理器核,采用0.18um制造工藝的32位微控制器。該處理器擁有:獨(dú)立的16KB指令Cache和16KB數(shù)據(jù)Cache,MMU,支持TFT的LCD控制器,NAND閃存控制器,3路UART,4路DMA,4路帶PWM的Timer ,I/O口,RTC,8路10位ADC,Touch Screen接口,IIC-BUS 接口,IIS-BUS 接口,2個USB主機(jī),1個USB設(shè)備,SD主機(jī)和MMC接口,2路SPI。S3C2410處理器可運(yùn)行在203MHz。本系統(tǒng)的FLASH存儲器選INTEL公司的28F128,SDRAM芯片選用兩片HY57V561620構(gòu)成32位的存儲器系統(tǒng).

  以太網(wǎng)控制器芯片選擇DM9000,它是完全綜合的、成本較低的單一快速,具有通用的處理器接口,10/100M自適應(yīng),以及4K雙字節(jié)靜態(tài)存取存儲器。它被設(shè)計(jì)為低功耗、高處理性能,支持3.3V到5V的容差。DM9000提供一個MII接口來連接HPNA設(shè)備或者其他支持MII接口的收發(fā)器,并支持8位、16位、32位的接口來適應(yīng)不同的處理器對內(nèi)部存儲器的訪問,它支持IEEE802.3u規(guī)格,還支持IEEE?。福埃玻常p工流控制。在DM9000和RJ45接口之間需要用漢仁電子有限公司的網(wǎng)絡(luò)隔離變壓器HR601627來連接,網(wǎng)絡(luò)隔離變壓器起信號傳輸、阻抗匹配、波形修復(fù)、雜波抑制以及高電壓隔離等作用,以保護(hù)系統(tǒng)的安全。

  圖1嵌入式網(wǎng)絡(luò)接口控制器工作原理

  圖 2嵌入式網(wǎng)絡(luò)接口控制器硬件框

 ?。础∏度胧讲僮飨到y(tǒng)的選擇

  本系統(tǒng)的設(shè)計(jì),網(wǎng)卡驅(qū)動和TCP/IP協(xié)議的實(shí)現(xiàn)是重點(diǎn),選擇嵌入式Linux,它已經(jīng)嵌入了TCP/IP協(xié)議棧,使TCP/IP協(xié)議得以實(shí)現(xiàn)。嵌入式Linux系統(tǒng)支持多種類型的網(wǎng)卡如各種lOM/lOOM,1000M 的Ethemet網(wǎng)卡等。對于?。模停梗埃埃埃乓蕴W(wǎng)控制器,嵌入式Linux已經(jīng)提供了很好的支持,移植過程中只需要修改源代碼和配置相應(yīng)模塊即可實(shí)現(xiàn)對網(wǎng)絡(luò)的支持。

 ?。怠∫蕴W(wǎng)數(shù)據(jù)與串口數(shù)據(jù)轉(zhuǎn)換實(shí)現(xiàn)

  本文開發(fā)的接口控制器主要完成兩個功能,即將串口接收到的數(shù)據(jù)通過網(wǎng)卡發(fā)送至以太網(wǎng),將網(wǎng)卡接收到的數(shù)據(jù)通過串口發(fā)送至另一串口端。工作模式上可以選擇為服務(wù)器或客戶端模式,數(shù)據(jù)傳輸協(xié)議可以選擇為TCP(Transmission?。茫铮睿簦颍铮臁。校颍铮簦铮悖铮?,傳輸控制協(xié)議)方式或UDP(User Datagram?。校颍铮簦铮悖铮?,用戶數(shù)據(jù)報(bào)協(xié)議)方式。其中TCP和UDP是以太網(wǎng)數(shù)據(jù)的兩種傳輸協(xié)議,TCP是基于連接的協(xié)議,在正式收發(fā)數(shù)據(jù)前,必須和對方建立可靠的連接,而UDP是面向非連接的數(shù)據(jù)直接傳輸協(xié)議,不需要對方的回答確認(rèn)。

  5.1 應(yīng)用程序的開發(fā)環(huán)境和網(wǎng)絡(luò)編程

  由于嵌人式系統(tǒng)程序的開發(fā)和執(zhí)行是在PC和ARM 兩個不同的平臺上進(jìn)行的,因此需要進(jìn)行交叉編譯和連接。用串口和以太網(wǎng)將宿主機(jī)和目標(biāo)板連接起來,程序開發(fā)在RedHat9.0?。蹋椋睿酰僮飨到y(tǒng)下編輯,調(diào)試通過后,加入自己開發(fā)的程序重新編譯armlinux內(nèi)核,并將編譯好的二進(jìn)制文件固化到開發(fā)板的ROM中,使其開機(jī)后自動運(yùn)行。

 ?。裕茫校桑刑幚砟K采用SOCKET套接字編程實(shí)現(xiàn)。SOCKET早是在UNIX系統(tǒng)上為TCP/IP網(wǎng)絡(luò)通信而開發(fā)的一個接口程序,后來被成功移植到DOS、Windows等操作系統(tǒng)上,成為Internet上網(wǎng)絡(luò)開發(fā)為通用的API函數(shù)。用于網(wǎng)絡(luò)開發(fā)的SOCKET主要有Stream?。樱铮悖耄澹簦螅鞲袷剑┖停模幔簦幔纾颍幔怼。樱铮悖耄澹簦螅〝?shù)據(jù)報(bào)格式)兩種類型,流格式Socket與TCP協(xié)議對應(yīng),數(shù)據(jù)報(bào)格式Socket與UDP協(xié)議對應(yīng)。

 ?。担病≤浖O(shè)計(jì)

  本系統(tǒng)采用工作模式TCP Server服務(wù)器,等待客戶端請求連接,實(shí)現(xiàn)數(shù)據(jù)傳輸功能。本程序的流程圖如圖3所示。首先,打開串口,在Linux下打開串口是通過標(biāo)準(zhǔn)的文件打開函數(shù)

  圖3 功能實(shí)現(xiàn)流程圖

  圖4 以太網(wǎng)數(shù)據(jù)通過串口發(fā)送

  圖5 串口數(shù)據(jù)通過網(wǎng)卡發(fā)送

  操作,程序代碼如下:

 ?。椋睿簟。妫洌?/FONT>

 ?。妫洌剑铮穑澹睿ā埃洌澹觯簦簦樱啊?,O_RDWR);

 ?。椋妫ǎ妫洌剑剑保。穑澹颍颍铮颍ā疤崾惧e誤!”);}

  然后設(shè)置串口的波特率、校驗(yàn)位和停止位。要用網(wǎng)卡接收發(fā)送數(shù)據(jù),就要首先創(chuàng)建套接字,程序代碼如下:

  int?。螅铮悖耄撸妫?;

 ?。螅铮悖耄撸妫洌剑螅铮悖耄澹簦ǎ粒疲撸桑危牛裕樱希茫耍撸樱裕遥牛粒?,O)

  if(sock_fd==-1)

 ?。穑澹颍颍铮颍ā埃螅铮悖耄澹簟保?;

 ?。澹椋簦ǎ保?;}

  然后設(shè)置屬性,然后等待客戶端的連接,一旦建立連接,就可以實(shí)現(xiàn)數(shù)據(jù)的接收和傳送。

  數(shù)據(jù)處理在整個程序中是十分關(guān)鍵的一環(huán),該環(huán)節(jié)中實(shí)現(xiàn)的是在網(wǎng)絡(luò)數(shù)據(jù)和串口數(shù)據(jù)之間的相互交換,根據(jù)實(shí)際需要也可以將網(wǎng)絡(luò)數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù)或者其他類型接口的數(shù)據(jù);這里網(wǎng)絡(luò)和串口數(shù)據(jù)交互處理分成兩部分,一部份是網(wǎng)絡(luò)數(shù)據(jù)轉(zhuǎn)變成串口數(shù)據(jù),另一部份是串口數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)上,其流程圖如圖4、5所示。為了充分利用系統(tǒng)資源,在數(shù)據(jù)處理程序中調(diào)用select()函數(shù)。Select函數(shù)原型為:int?。螅澹欤澹悖簦ǎ椋睿簟。睿酰恚妫洌?,fd_set?。颍澹幔洌妫洌?,fd_set?。鳎颍椋簦澹螅澹簦妫洌撸螅澹簟。澹悖澹穑簦螅澹簦悖铮睿螅簟。螅簦颍酰悖簟。簦椋恚澹觯幔臁。簦椋恚澹铮酰簦?;

  返回:準(zhǔn)備好的文件描述符個數(shù)(可以是0),-1表示出錯。

 ?。丁〗Y(jié)束語

  本文作者創(chuàng)新點(diǎn):本文采用性價比高的32位微處理器s3c2410作為主控芯片,移植了源代碼開放的Linux,它易于實(shí)現(xiàn)了TCP/IP處理模塊,這樣大大縮短了產(chǎn)品開發(fā)周期,并有利于提高了串口數(shù)據(jù)和以太網(wǎng)數(shù)據(jù)的轉(zhuǎn)換速率,提高數(shù)據(jù)傳輸?shù)膶?shí)時性,使傳統(tǒng)串口設(shè)備方便接入以太網(wǎng),為以太網(wǎng)在控制層和設(shè)備層的應(yīng)用奠定了基礎(chǔ)。
 
  請登陸: 維庫電子市場網(wǎng)(m.58mhw.cn) 瀏覽更多信息


  
關(guān)鍵詞:基于ARM的嵌入式網(wǎng)絡(luò)接口控制器設(shè)計(jì)嵌入式網(wǎng)絡(luò)接口

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

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(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)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

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

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號碼:
QQ:
有效期:

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

在線人工客服

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

0571-85317607

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

13606545031

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

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

建議反饋

聯(lián)系人:

聯(lián)系方式:

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