0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅析网关软件设计

h1654155971.8456 来源:YXQ 2019-08-12 17:55 次阅读

ENC28J60的初始化

LPC2294。对ENC28J60的各种操作均通过SPI接口进行,包括寄存器的设置、数据的发送和接收。LPC2294的SPI工作在主动方式,即ENC28J60的SPI时钟信号由LPC2294提供。

TCP/IP协议

该设计采用嵌入式系统中广泛应用的LwIP协议栈。LwIP TCP/IP实现的特点是在保持协议主要功能的基础上减少对RAM的占用,这使协议栈LwIP适合在低端嵌入式系统中使用。

LwIP协议栈应用到的协议有ARP,IP,IcMP,TCP,UDP,其具有滑动窗口、拥塞控制和接收分片的分组功能。在LwIP中可以有多个网络接口,每个网络接口都对应一个strut netif()。

netif包含了相应网络接口的属性、收发函数。采取调用netif的方法netif→inpln()及netif→output()进行以太网PACket的收、发等操作。

以太网/CAN双向协议转换

整个设计中最为关键的就是CAN协议与TCP/IP协议的相互转换。协议转换流程图如图6所示。

其具体过程如下:当网关接收到数据,首先判断数据类型,如果是从CAN接口接收CAN协议报文,便分离出数据部分,再将报文数据部分按系统规定的应用层格式进行封装,然后将应用层数据存入以太网接口发送缓冲区,由该接口在数据前面依次添加TCP或UDP头、IP头、以太帧头,最后封装成以太帧后,通过以太网接口发往以太网。

若接收到的以太网数据,数据转换过程相反,依次去掉IP头、TCP或UDP头和应用层头,再将应用层数据按CAN报文格式封装好后存入CAN接口发送缓冲区,由CAN接口发往CAN网络中相应设备。若应用层数据长度大于8 B,则还需将数据以8 B为一组进行拆分。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 网关
    +关注

    关注

    9

    文章

    4304

    浏览量

    50935
  • 软件设计
    +关注

    关注

    3

    文章

    58

    浏览量

    17763

原文标题:基于嵌入式的网关软硬件设计

文章出处:【微信号:eda365wx,微信公众号:EDA365电子论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    软件设计师全书

    软件设计师全书有软件设计师教程,软件设计师考试辅导,考点精讲,例题分析,强化训练,软件设计课程课件等内容。
    发表于 10-29 17:45 0次下载
    <b class='flag-5'>软件设计</b>师全书

    运用设计模式改进软件设计质量的研究

    针对应用设计模式改进软件设计质量中不规范的问题,提出一种运用设计模式改进软件设计质量的通用规范化方法。该方法基于客观度量标准、问题驱动和半形式化描述,减少了
    发表于 02-25 16:37 10次下载

    基于Vxworks的LANE软件设计探讨

    基于Vxworks的LANE软件设计探讨
    发表于 03-29 12:27 11次下载

    基于VxWorks的实时多任务软件设计

    基于VxWorks的实时多任务软件设计
    发表于 03-29 12:30 23次下载

    UPS监控软件设计

    UPS监控软件设计   摘要:设计了一个UPS监控软件,以监视UPS的实时状态,控制UPS进行保护和切换的参数、诊断和开关
    发表于 07-14 17:56 1267次阅读
    UPS监控<b class='flag-5'>软件设计</b>

    基于底层硬体的软件设计

    本内容介绍了基于底层硬体的软件设计
    发表于 05-09 16:04 60次下载
    基于底层硬体的<b class='flag-5'>软件设计</b>

    软件设计师教程_陈平

    本书按照人事部、信息产业部全国计算机技术与软件专业技术资格(水平)考试要求编写,内容紧扣《软件设计师考试大纲》,阐述软件设计师考试必备的知识和技能的要点。全书共
    发表于 09-15 14:44 0次下载
    <b class='flag-5'>软件设计</b>师教程_陈平

    基于RTX的实时通用测控软件设计与实现

    基于RTX的实时通用测控软件设计与实现_李俊贤
    发表于 01-07 21:28 1次下载

    8051单片机C语言软件设计8051单片机C语言软件设计

    8051单片机C语言软件设计8051单片机C语言软件设计
    发表于 10-16 11:25 92次下载
    8051单片机C语言<b class='flag-5'>软件设计</b>8051单片机C语言<b class='flag-5'>软件设计</b>

    Android平台的校园导览软件设计

    Android平台的校园导览软件设计
    发表于 10-31 10:34 13次下载
    Android平台的校园导览<b class='flag-5'>软件设计</b>

    基于UML对象建模的财务软件设计研究

    本篇目的在于研究基于UML对象建模的财务软件设计。基于当前UML、财务软件设计相关知识,能够去优化分析基于UML的财务软件设计相关需求,开发设计一个UML对象建模的财务软件,以便可以使
    发表于 11-13 17:16 6次下载
    基于UML对象建模的财务<b class='flag-5'>软件设计</b>研究

    关于Atmel的软件设计框架的介绍

    Atmel的软件设计框架
    的头像 发表于 07-06 04:49 3201次阅读
    关于Atmel的<b class='flag-5'>软件设计</b>框架的介绍

    CapTIvateTM软件设计平台的应用介绍(2)

    CapTIvate Technology软件设计快速指南(三) - CapTIvate软件设计中心(CDC)介绍2
    的头像 发表于 08-13 00:20 2429次阅读

    CapTIvateTM软件设计平台的应用介绍(3)

    CapTIvate Technology软件设计快速指南(五) - CapTIvate软件设计中心(CDC)介绍3
    的头像 发表于 08-21 00:52 3195次阅读

    MVB-CAN通信网关的硬件设计框图、软件设计和系统性能测试详细介绍

    基于对MVB和CAN通信协议的深入分析,从而实现一种MVB—CAN的网关设 计,有效地完成了两种协议之间的数据通信。本文着重讨论了MVB-CAN网关系统 设计的三大部分:硬件设计框图、软件设计
    发表于 10-11 08:00 43次下载
    MVB-CAN通信<b class='flag-5'>网关</b>的硬件设计框图、<b class='flag-5'>软件设计</b>和系统性能测试详细介绍