色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于LXT971A的嵌入式系統(tǒng)的網(wǎng)絡(luò)通訊設(shè)計(jì)

          基于LXT971A的嵌入式系統(tǒng)的網(wǎng)絡(luò)通訊設(shè)計(jì)

          作者: 時(shí)間:2006-02-15 來(lái)源:網(wǎng)絡(luò) 收藏
          摘要:介紹接口電路的內(nèi)部結(jié)構(gòu)和引腳功能,給出在中采用與MPC860型處理器進(jìn)行的硬件接口實(shí)現(xiàn)方法,同時(shí)介紹的服務(wù)器端的軟件編程。

          關(guān)鍵詞: 網(wǎng)絡(luò)通訊 接口電路 處理器 服務(wù)器

          1 概述

          在嵌入式系統(tǒng)中,網(wǎng)絡(luò)通訊是非常重要而且必備的功能。為了充分發(fā)揮嵌入式系統(tǒng)中CPU的網(wǎng)絡(luò)控制功能,選擇一款合適 的網(wǎng)絡(luò)接口電路至關(guān)重要,網(wǎng)絡(luò)通訊接口電路就是一個(gè)很好的選擇。LXT971A是Intel公司的網(wǎng)絡(luò)通訊接口電路,它符合IEEE標(biāo)準(zhǔn),直接支持10Mb/s/100Mb/s雙絞線(xiàn)應(yīng)用,也支持100Mb/s光纖接口;該電路提供的MII接口能很好的符合10/100Mb/s雙絞線(xiàn)應(yīng)用,也支持100Mb/s光纖接口;該電路提供的MII接口能很好的符合10/100MACs。

          圖1所示是LXT971A的內(nèi)部功能結(jié)構(gòu)框圖。

          圖1

          2 LXT971A的引腳功能

          LXT971A具有64個(gè)引腳,其引腳排列如圖2所示。各引腳的功能如下:

          TXD0-TXD3是并行數(shù)據(jù)發(fā)送端口;

          TX_EN是發(fā)送使能端;

          TX_CLK是發(fā)送時(shí)鐘,速率為10Mb/s時(shí)為2.5MHz,速率為100Mb/s時(shí)為25MHz;

          TX_ER是錯(cuò)誤數(shù)據(jù)發(fā)送端;

          RXD0-RXD3是并行數(shù)據(jù)接收端;

          RX_CLK是接收時(shí)鐘,速率為10Mb/s時(shí)為2.5MHz,速率為100Mb/s時(shí)為25MHz.

          RX_DV是接收數(shù)據(jù)正常指示端;

          COL是沖突檢測(cè)端;

          CRS是載波檢測(cè)端;

          MDDIS、MOC、MDIO、MDINT是MII控制信號(hào)端口;

          TPFOP、TPFON是網(wǎng)絡(luò)接口輸出正、負(fù)端口;

          TPFIP、TPFIN是網(wǎng)絡(luò)接口輸入正、負(fù)端口;

          SD/TP是TP選擇;

          TxSLEW0、TxSLEW1是TP驅(qū)動(dòng)端;

          RESET是復(fù)位端;

          ADDR0-ADDR4是設(shè)備地址端口;

          RBIAS是偏置端;

          PAUSE是暫停端;

          SLEEP是休眠端;

          TEST0、TEST1是測(cè)試端,接地;

          REFCLK/XI、REFCLK/XO是晶振輸入、輸出端;

          TDI、TDO、TMS、TCK、TRST是JTAG測(cè)試端;

          LED/CFG1、LED/CFG2、LED/CFG3是LED驅(qū)動(dòng)或配置輸入端。

          3 硬件接口

          在實(shí)際應(yīng)用系統(tǒng)中,要實(shí)現(xiàn)LXT971A的網(wǎng)絡(luò)接口功能還要借助于MPC860型網(wǎng)絡(luò)通信處理器。LXT971網(wǎng)絡(luò)接口電路與MPC860網(wǎng)絡(luò)通信處理器是一種非常好的組合,以它們?yōu)楹诵呐玫木W(wǎng)絡(luò)產(chǎn)品有很好的實(shí)用性。筆者的硬盤(pán)錄像機(jī)和遠(yuǎn)程電量采集器均是以MPC860為核心CPU,以L(fǎng)XT971為接口電路來(lái)實(shí)現(xiàn)的,實(shí)際應(yīng)用中均取得了比較好的應(yīng)用效果。

          MPC860是Motorola公司推出的網(wǎng)絡(luò)通信處理器,其特點(diǎn)主要有:內(nèi)嵌PowerPC內(nèi)核;4kbyte指令緩沖和4kbyte數(shù)據(jù)緩沖;強(qiáng)有力的內(nèi)存控制和系統(tǒng)功能;高效的結(jié)構(gòu),可用一個(gè)獨(dú)立的RISC處理器處理通訊單元;可支持以太網(wǎng)、快速以太網(wǎng)、HDLC、ATM等;帶有8kB雙端口RAM;可提供50MHz、66MHz、80MHz頻率,采用357引腳BGA封裝;具有強(qiáng)大的第三方工具支持等。

          SPC860與LXT971的接口采用標(biāo)準(zhǔn)的MII接口,SD/TP引腳接地,傳輸介質(zhì)可采用雙絞線(xiàn)。MPC860可通過(guò)MII接口初始化LXT971A,而不需要使用LXT971A中的JTAG口。它們的連接原理如圖3所示。

          4 軟件

          在筆者所開(kāi)發(fā)的嵌入式系統(tǒng)中,MPC860所配置的操作系統(tǒng)為Nucleus PLUS實(shí)時(shí)嵌入式系統(tǒng)。該系統(tǒng)對(duì)網(wǎng)絡(luò)的出色支持能夠使MPC860與LXT971實(shí)現(xiàn)無(wú)縫連接,而軟件中,只需簡(jiǎn)單調(diào)用操作系統(tǒng)中的MII_AutoNeg 0函數(shù)就可以完成初始化LXT971A的工作,進(jìn)而快速地進(jìn)行下一步的網(wǎng)絡(luò)應(yīng)用編程。

          該系統(tǒng)可支持TCP、UDP、RAW_IP3種接口編程方式。下面給出的是采用TCP方式的服務(wù)程序。

          Void TCP_Server_Task(UNSIGNED argc,VOID *argv) //TCP服務(wù)器端任務(wù)

          {

          INT socketd,newsock; //套接字標(biāo)識(shí)

          Struct addr_struct *servaddr; //服務(wù)器地址結(jié)構(gòu)指針

          unsigned int i;

          VOID *pointer;

          STATUS status;

          Struct addr_struct client_addr;

          NU_DEVICE devices[1];

          CHAR serv_in_addrp[]={192.168.1.1};//服務(wù)器(本機(jī))IP地址

          CHAR subnet[]={255,255,255,0};//子碼掩摸

          if(NU_Init_Net(Noncached_Memory=NUU_SUCC ESS) //初始化網(wǎng)絡(luò)模塊

          {

          DEMO_Exit(0); //不成功退出

          }

          memcpy(devices[0].dv_ip_addr,

          serv_ip_addr,4);

          //服務(wù)器IP地址拷貝到地址結(jié)構(gòu)中

          memcpy(devices[0].dv_subnet_mask,subnet,4);

          //服務(wù)器子碼掩摸拷貝到地址結(jié)構(gòu)中

          memcpy(devices[0].dv_subnet_mask,subnet,4);

          //服務(wù)器子碼掩拷貝到地址結(jié)構(gòu)中

          if(UN_Init_Devices(devices,1)!=NU_SUCCESS)

          //初始化網(wǎng)絡(luò)設(shè)備LXT971A

          {

          DEMO_Exit(0); //不成功退出

          }

          if((socketd=NU_Socket(NU_FAMILY_IP,NU_TYPE_STREAM,0))>=0)

          //創(chuàng)建套接字

          {

          if((NU_Bind(socketd,servaddr,0))>=0)

          //綁定服務(wù)器IP地址

          {

          status=NU_Listen(socketd,10);//偵聽(tīng)

          if(status==NU_SUCCESS)

          {

          for=(i=0;iDEMO_MAX_CONNE CTIONS;i++)

          {

          newsock=NU_Accept(socketd,client_addr,0);//接地

          if(newsock>=0)

          {status=NU_Send_T0_QueuesocketQueue,(UNSIGNED*)newsock,1,NU_SU SPEND}; //接收成功隊(duì)列發(fā)送

          }

          }

          }

          }

          }

          }

          編程方式與Windows的網(wǎng)絡(luò)編程相似。

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

          該設(shè)計(jì)應(yīng)用廣泛,凡是對(duì)網(wǎng)絡(luò)通訊要求比較高的產(chǎn)品均可采用該設(shè)計(jì)。如用作監(jiān)控系統(tǒng)核心產(chǎn)品的硬盤(pán)錄像機(jī)DVR、10萬(wàn)伏變電站上用的高端遠(yuǎn)程電理采集器、電信網(wǎng)中的路由器等。

          linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)


          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉