- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于arm-lpc210x的modbus通信协议的设计
0 arm内核嵌入式应用领域
obstmark是一项工业通信和分布控制系统的协议,得到了许多硬件制造商的支持并广泛传播。该集群及其集成外围设备的强大功能尤其适用于高自动化和工业控制的领域。嵌入式内核无疑是大多数工业系统的首选。本文研究了高速公路隧道CO监测系统中, 用32位ARM-LPC210X处理器实现Modbus通信协议的设计。
1 监控、管理控制及协调监控层
监测系统整体方案系统从结构上划分为3部分:监控与管理层、协调控制层和分布式控制层。从功能上分析, 监控与管理层负责整个CO检测控制系统运行的监控、数据的处理、管理决策的制定以及办公自动化;协调监控层实现与其他层数据、命令的传输通信;分布式控制层具有现场CO数据采集、控制以及Modbus总线通信功能, 可以与监控层及其他Modbus测控节点传送各种参数, 并接收来自监控层的命令和数据, 用以调整和改变控制状态系统结构如图1所示。
2 交付协议
2.1 基于对等接口
Modbus协议定义了一个控制器能认识使用的消息结构, 而不管它们是经过何种网络进行通信的。它描述了一种控制器请求访问其他设备的过程, 若回应来自其他设备的请求, 以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。目前, Modbus协议已经成为我国的国家标准之一, 它可使用RS-232、RS-422、RS-485串口作为物理接口。
控制器使用对等技术通信, 故任何控制都能初始和其他控制器的通信。这样在单独的通信过程中, 控制器既可作为主设备也可作为从设备。提供的多个内部通道可允许同时发生传输进程。在消息位, Modbus协议仍提供了主-从原则, 尽管网络通信方法是“对等”。若一控制器发送一个消息, 它只是作为主设备, 并期望从设备得到回应。同样, 当控制器接收到一个消息, 它将建立一个从设备回应格式并返回给发送的控制器。如图2所示。
2.2 实时图像数据的传输
控制器能设置为两种传输模式 (ASCII或RTU) 中的任何一种在标准的Modbus网络通信。用户选择想要的模式, 包括串口通信参数 (波特率、校验方式等) , 在配置每个控制器的时候, 在一个Modbus网络上的所有设备都必须选择相同的传输模式和串口参数。使用ASCII模式, 消息包括了一基于LRC方法的错误检测域。LRC域检测了消息域中除开始的冒号及结束的回车换行号外的内容。使用RTU模式, 消息包括了一基于CRC方法的错误检测域。CRC域检测了整个消息的内容。表1和表2分别列出了LRC和CRC校验的模式。
3 矛是液化的。在lcc210x上
3.1 rs-843通信接口部分
本系统中的RS-485通信接口电路使用75LBC184芯片构成, LPC210X的RxD0和TxD0引脚分别通过光耦连接MAX485的R脚和D脚, 以进行数据交换, LPC210X的P0.18引脚通过光耦分别与485接口的DE和RE引脚连接, 以控制发送器和接收器使能。MAX485的A和B端为485网络的差分信号输入/输出端。RS-485通信接口部分的电路如图3所示。图中, RS-485接口部分电路LPC210X有中断的UART支持CPU与外设之间的异步串行数字通信, 即有两路TxD1、RxD1, TxD0、RxD0;支持5~8位串行数据传送与接收以及在传送与接收时的双向握手;每一个通道有2个内部14位FIFO, 本设计采用传送与接收的中断方式。在串口通信中接收每帧数据包后, 会在接收状态寄存器中相应的标志位置位, 从而产生中断请求, 判断是否接收Modbus数据帧, 进一步对该Modbus协议数据帧进行解析。
3.2 地址位多机通信
在LPC210X上实现Modbus主站协议需处理以下事件:发送请求帧、等待应答、处理应答、处理差错、等待转换, 作为Modbus主站的LPC210X应实现发送请求帧、等待帧应答和等待转换延迟3个阶段的处理。程序流程如图4所示。
在主从式多处理器系统中, 要保证主处理器与所选择的从处理器实现可靠地通信, 必须保证通信接口具有从处理器识别功能, 因此采用地址位多机通信格式, 主处理器选择从处理器时, 发送一个地址识别编码, 使每个从处理器能自动判别, 完成相应的通信和数据传输。发送和接收由于有独立的中断向量, 故都可以采用中断方式处理。发送可以采用数据查询方式, 但在多任务系统中为保证系统实时性, 采用中断方式更为合理。接收过程应和定时器配合, 在接收开始后在定时器中断里面计算延时时间, 在超出最长的接收等待延时时间后就可判定一次完整的传输过程结束, 转而进行报文处理。发送是在发送中断处理程序中进行发送计数, 一旦完成, 立即关中断。根据通信协议的具体要求, 充分利用LPC21
文档评论(0)