基于ARM的嵌入式系统硬件结构设计-133.ppt

  1. 1、本文档共282页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
TCP传输控制协议 TCP是一个面向连接的可靠的传输层协议。TCP为两台主机提供高可靠性的端到端数据通信。主要包括: 发送方把应用程序交给它的数据分成合适的小块,并添加附加信息(TCP头),包括顺序号,源、目的端口,控制、纠错信息等字段,称为TCP数据包。并将TCP数据包交给下面的网络层处理。 接受方确认接收到的TCP数据包,重组并将数据送往高层。 UDP协议 UDP是一种无连接不可靠的传输层协议。 把应用程序传来的数据加上UDP头(包括端口号,段长等字段),作为UDP数据包发送出去,但是并不保证它们能到达目的地。可靠性由应用层来提供。就象发送一封写有地址的一般信件,却不保证它能到达。 基于ARM和uCOS-II的TCP/IP协议 向ARM和uC/OS移植一个TCP/IP协议栈 采用uC/OS自带的TCP/IP协议栈 BSD套接字(BSD Sockets) BSD Sockets使用的最广泛的网络程序编程方法,主要用于应用程序的编写,用于网络上主机与主机之间的相互通信 UNIX,Linux,VxWorks均支持BSD Sockets,Windows的Winsock基本上是来自BSD Sockets Socket分为Stream Sockets和Data Sockets Stream Sockets是可靠性的双向数据传输,使用TCP协议 Data Sockets是不可靠连接,使用UDP协议 套接字的使用 UDP服务器端和一个UDP客户端通信的程序过程 创建一个Socket sFd =socket (AF_INET, SOCK_DGRAM, 0) 把Socket和本机的IP,UDP口绑定 bind (sFd, (struct sockaddr *) serverAddr, sockAddrSize) 循环等待,接收(recvfrom)或者发送(sendfrom)信息 关闭Socket,通信终止 close (sFd) 本节提要 1 3 2 5 4 6 基于ARM的硬件系统体系结构 存储器接口设计 网络接口设计 I/O接口设计 人机交互接口设计 其它通讯接口设计 CAN总线设计 CAN总线接口设计 Controller Area Network,控制器局域网,现场总线之一。 是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率,高抗电磁干扰性,而且能够检测出产生的任何错误。 主要应用于汽车电控制系统、电梯控制系统、安全监控系统、医疗仪器、纺织机械、船舶运输等方面 CiA(CAN in Automation)为全球应用CAN技术的权威。 CAN总线特点 低成本 远距离传输(长达10Km) 相对高速的数据传输速率(1Mbit/s) 可根据报文的ID决定接收或屏蔽该报文 可靠的错误处理和检错机制 发送的信息遭到破坏后,可自动重发 节点在错误严重的情况下具有自动退出总线的功能 CAN总线控制器体系结构 协议控制器 状态/控制 寄存器 消息对象 接收缓冲区 宿主机 接口 总线接口 CAN总线 嵌入式系统上的CAN总线接口 处理器本身带有CAN总线控制器 使用CAN总线控制芯片 SJA1000——Philips 独立CAN控制器,替代82C200,支持CAN2.0A/B,同时支持11位和29位ID,位速率可达1M,具有总线仲裁功能,扩展的接收缓冲器(64字节FIFO),增强的环境温度范围(-40-+125℃)。并行总线接口。 MCP2510/5——MicroChip 支持CAN2.0A/B,同时支持11位和29位ID,位速率可达1M,具有总线仲裁功能。2个接收缓冲区,3个发送缓冲区。高速SPI接口。 CAN总线驱动芯片 82C250 CAN总线收发器,?是CAN协议控制器和物理总线之间的接口,该器件对总线提供差动发送能力并对CAN控制器提供差动额接收能力,有很强的抗电磁干扰(EMI)的能力 ,至少可挂110个节点。 TJA1050、1040 替代82C250产品,电磁辐射更低 ,无待机模式 uCOS-II下的驱动程序 uCOS-II没有给驱动程序提供统一的标准接口 任何在系统中对于硬件的管理都可以称为uCOS的驱动程序 为了方便驱动程序的模块化划分,提高代码的可重用性,uCOS-II的驱动程序可以自定义标准 驱动程序抽象层 操作系统只和特定的驱动抽象层通讯,无论在抽象层下面对应的是什么类型的设备,对操作系统和用户的应用程序来说都是统一的接口。 通过使用C语言的指针函数的方法,实现了驱动抽象层的软件设计。通过指向不同驱动子程序的函数指针,为同一操作系统挂载了多种驱动程序。 uCOS-II中CAN总线驱动程序结构 uCOS-II中CAN总线驱动程序剖析 在can

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档