网站首页
IC库存
IC展台
电子资讯
技术资料
PDF文档
我的博客
IC72论坛
ic72 logo
资料首页最新产品 技术参数 电路图 设计应用 解决方案 代理商查询 IC替换 IC厂商 电子辞典
关键字: 技术文章 PDF资料 IC价格 电路图 代理商查询 IC替换 IC厂商 电子辞典

基于LXT971A的嵌入式系统的网络通讯设计

    摘要:介绍LXT971A型网络通讯接口电路的内部结构和引脚功能,给出在嵌入式系统中采用LXT971A与MPC860型网络通讯处理器进行网络通讯的硬件接口实现方法,同时介绍基于嵌入式系统的服务器端的软件编程。

      关键词:嵌入式系统 网络通讯 接口电路 处理器 服务器

    1 概述

    在嵌入式系统中,网络通讯是非常重要而且必备的功能。为了充分发挥嵌入式系统中CPU的网络控制功能,选择一款合适 的网络接口电路至关重要,LXT971A网络通讯接口电路就是一个很好的选择。LXT971A是Intel公司的网络通讯接口电路,它符合IEEE标准,直接支持10Mb/s/100Mb/s双绞线应用,也支持100Mb/s光纤接口;该电路提供的MII接口能很好的符合10/100Mb/s双绞线应用,也支持100Mb/s光纤接口;该电路提供的MII接口能很好的符合10/100MACs。

IC72新闻中心

图1所示是LXT971A的内部功能结构框图

      2 LXT971A的引脚功能

    LXT971A具有64个引脚,其引脚排列如图2所示。各引脚的功能如下:

    ·TXD0-TXD3是并行数据发送端口;

    ·TX_EN是发送使能端;

    ·TX_CLK是发送时钟,速率为10Mb/s时为2.5MHz,速率为100Mb/s时为25MHz;

    ·TX_ER是错误数据发送端;

    ·RXD0-RXD3是并行数据接收端;

    ·RX_CLK是接收时钟,速率为10Mb/s时为2.5MHz,速率为100Mb/s时为25MHz.

    ·RX_DV是接收数据正常指示端;

    ·COL是冲突检测端;

    ·CRS是载波检测端;

    ·MDDIS、MOC、MDIO、MDINT是MII控制信号端口;

     ·TPFOP、TPFON是网络接口输出正、负端口;

    ·TPFIP、TPFIN是网络接口输入正、负端口;

    ·SD/TP是TP选择;

    ·TxSLEW0、TxSLEW1是TP驱动端;

    ·RESET是复位端;

    ·ADDR0-ADDR4是设备地址端口;

    ·RBIAS是偏置端;

    ·PAUSE是暂停端;

    ·SLEEP是休眠端;

    ·TEST0、TEST1是测试端,接地;

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

    ·TDI、TDO、TMS、TCK、TRST是JTAG测试端;

    ·LED/CFG1、LED/CFG2、LED/CFG3是LED驱动或配置输入端。

    3 硬件接口

    在实际应用系统中,要实现LXT971A的网络接口功能还要借助于MPC860型网络通信处理器。LXT971网络接口电路与MPC860网络通信处理器是一种非常好的组合,以它们为核心弄好的网络产品有很好的实用性。笔者设计的硬盘录像机和远程电量采集器均是以MPC860为核心CPU,以LXT971为接口电路来实现的,实际应用中均取得了比较好的应用效果。

IC72新闻中心

    MPC860是Motorola公司推出的网络通信处理器,其特点主要有:内嵌PowerPC内核;4kbyte指令缓冲和4kbyte数据缓冲;强有力的内存控制和系统功能;高效的结构,可用一个独立的RISC处理器处理通讯单元;可支持以太网、快速以太网、HDLC、ATM等;带有8kB双端口RAM;可提供50MHz、66MHz、80MHz频率,采用357引脚BGA封装;具有强大的第三方工具支持等。

    SPC860与LXT971的接口采用标准的MII接口,SD/TP引脚接地,传输介质可采用双绞线。MPC860可通过MII接口初始化LXT971A,而不需要使用LXT971A中的JTAG口。它们的连接原理如图3所示。

IC72新闻中心

      4 软件设计

    在笔者所开发的嵌入式系统中,MPC860所配置的操作系统为Nucleus PLUS实时嵌入式系统。该系统对网络的出色支持能够使MPC860与LXT971实现无缝连接,而软件设计中,只需简单调用操作系统中的MII_AutoNeg 0函数就可以完成初始化LXT971A的工作,进而快速地进行下一步的网络应用编程。

    该系统可支持TCP、UDP、RAW_IP3种接口编程方式。下面给出的是采用TCP方式的服务程序。
  
    Void TCP_Server_Task(UNSIGNED argc,VOID *argv) //TCP服务器端任务

    {

    INT socketd,newsock; //套接字标识

    Struct addr_struct *servaddr; //服务器地址结构指针

    unsigned int i;

    VOID *pointer;

    STATUS status;

    Struct addr_struct client_addr;

    NU_DEVICE devices[1];

    CHAR serv_in_addrp[]={192.168.1.1};//服务器(本机)IP地址

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

    if(NU_Init_Net(&Noncached_Memory=NUU_SUCC ESS) //初始化网络模块

    {

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

    }

    memcpy(devices[0].dv_ip_addr,

    serv_ip_addr,4);

    //服务器IP地址拷贝到地址结构中

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

    //服务器子码掩摸拷贝到地址结构中

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

    //服务器子码掩拷贝到地址结构中

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

    //初始化网络设备LXT971A

    {

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

    }

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

    //创建套接字

    {

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

    //绑定服务器IP地址

    {

    status=NU_Listen(socketd,10);//侦听

    if(status==NU_SUCCESS)

    {

    for=(i=0;i

    {

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

    if(newsock>=0)

    {status=NU_Send_T0_Queue&socketQueue,(UNSIGNED*)&newsock,1,NU_SU SPEND}; //接收成功队列发送
    }

    }

    }

    }

    }

    }

    编程方式与Windows的网络编程相似。

    5 结束语

    该设计应用广泛,凡是对网络通讯要求比较高的产品均可采用该设计。如用作监控系统核心产品的硬盘录像机DVR、10万伏变电站上用的高端远程电理采集器、电信网中的路由器等。

热门搜索:CC2544RHBR B30-8000-PCB N060-002 SBB2805-1 01M2251SFC3 TW-E41-T1 2866666 BSV52R 2839570 RBC11A CC2544RHBR TLP76MSG 2866572 BTA12-800TWRG 02T0500JF PS6020 2866349 02T5000JF 8300SB2-LF 01T5001JF PDU1215 BTS410F2E6327 BQ25895MRTWR 2838254 BQ25895MRTWR
COPYRIGHT:(1998-2010) IC72 达普IC芯片交易网
客户服务:service@IC72.com 库存上载:IC72@IC72.com
(北京)联系方式: 在线QQ咨询:点击这里给我发消息 联系电话:010-82614113 传真:010-82614123
京ICP备06008810号-21 京公网安备 11010802032910 号 企业资质