Modbus协议下单片机与eView触摸屏的通信方法

最新更新时间:2015-01-20来源: 互联网关键字:触摸屏  单片机  方法 手机看文章 扫描二维码
随时随地手机看文章
Modbus协议由于其具有开放性、透明性、成本低、易于开发等特点,已成为当今工业领域通信协议的首选。

本文介绍了一种基于Modbus通信协议的eView触摸屏与常用的51单片机的通信方法。该方法通过C51编程实现Modbus通信,在51系列单片机上具有通用性,有一定的借鉴作用。

工业控制中经常需要观察系统的运行状态或者修改运行参数。触摸屏能够直观、生动地显示运行参数和运行状态,而且通过触摸屏画面可以直接修改系统运行参数,人机交互性好。单片机广泛应用于工控领域中,与触摸屏配合,可组成良好的人机交互环境。

触摸屏与单片机通信,需要根据触摸屏采用的通信协议为单片机编写相应的通信程序。Modbus协议是美国Modicon公司推出的,一种有效支持控制器之间以及控制器经由网络(如以太网)与其他设备之间进行通信的协议。本文以STC89C51单片机和人机电子有限公司的eView触摸屏为例,介绍其通信程序的开发过程。

1 系统结构

实现触摸屏与单片机的通信,主要是解决通信协议的问题。本文使用开放的Modbus通信协议,以触摸屏作主站,单片机作从站。eView触摸屏本身支持Modbus通信协议,如果单片机也支持Modbus协议,就可以进行通信了。eview触摸屏支持RS-232和RS-485两种通信接口。在工业控制领域,由于RS-485具有可靠性高、传输距离远、抗干扰能力强等优点,所以在本系统中触摸屏与单片机通信采用RS-485连接,传输速率设置为9600 kbps。RS-485信号传输是一种半双工的传输方式,单片机通过一个RS-232/RS-485无源转换器把232信号转换成485信号,连接到eView触摸屏上。图l为该系统的原理图。

 

 

单片机控制系统采用STC89C51系列单片机,其内部集成MAX810/STC810专用复位电路(原有外部复位可继续保留,与Intel 8051引脚兼容),具有抗干扰能力强、加密性强、高抗静电(ESD)、超低功耗等特点,而且价格低廉。在本系统中,触摸屏是上位机,单片机是下位机。

2 Modbus协议

2.1 Modbus协议简介

Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(如以太网)与其他设备之间可以通信。它已经成为一种通用工业标准。不同厂商生产的控制设备可以通过它连成工业网络,集中监控。

Modbus协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其他设备的过程.如何回应来自其他设备的请求,以及怎样侦测错误并记录;制定了消息域格局和内容的公共格式。

当在某一Modbus网络上通信时,此协议决定了每个控制器需要知道它们的设备地址,识别按地址发来的消息,以及决定要产生何种行动。如果需要回应,则控制器将生成反馈信息并用Modbus协议发出。在其他网络上,包含了M0dhus协议的消息转换为在此网络上使用的帧或包结构。

2.2 Modbus RTU通信数据传输模式

当控制器设备基于Modbus协议以RTU模式通信时,消息中的每个字节包含2个4位的十六进制字符。这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。

编码采用8位二进制,十六进制数0~9和A~F;消息中每个8位域都是由2个十六进制字符组成。组织结构如下:

 

 

2.3 Modbus RTU消息帧结构

Modbus RTU消息帧结构如下:

 

 

(1)地址码

地址码为通信传送的第一个字节。这个宁节表明,由用户设定地址码的从机将接收由主机发送来的信息。每个从机都有具有唯一的地址码,只有符合地址码的从机才能响应回送,且响应回送均以各自的地址码开始。主机发送的地址码则表明将发送到的从机地址,而从机发送的地址码表明回送的从机地址。地址0用作广播地址,以使所有的从设备都能认识。

(2)功能代码

功能代码为通信传送的第二个字节。Modbus通信规约定义可能的代码范围是十进制的1~255。当然,有些代码适用于所有控制器,有些仅适用于某种控制器,还有些保留以备后用。主机发送请求,通过功能码告诉从机执行什么动作;从机响应请求,从机发送的功能码与从主机发送来的功能码一样,表明从机已响应主机进行操作。如果从机发送的功能码的最高位为1,则表明从机没有响应操作或发送出错,主设备应用程序得到异议的回应后,典型的处理是重发消息。表l列出了常用Modbus支持的部分功能码。

 

 

以读取线圈状态为例说明。主站发送命令:[设备地址][命令号01][起始寄存器地址高8位][低8位][读取的寄存器数高8位][低8位][CRC校验的低8位][高8位]。从站响应:[设备地址][命令号01][返回的字节个数][数据1][数据2]…[数据n][CRC校验的低8位][高8位]。

(3)数据区

数据区根据功能码的不同而不同。数据区包含需要从机执行什么动作,或由从机采集的返送信息。这些信息可以是实际数值、设置点、主机发送给从机或从机发送给主机的地址等。例如,功能码告诉从机读取寄存器的值,则数据区必须包含要读取寄存器的起始地址及读取长度。对于不同的从机,地址和数据信息都不相同。

(4)错误校验码

主机或从机可用校验码判别接收信息是否出错。错误检测域包含一个16位的值(用2个8位的字符来实现)。错误检测域的内容是通过对消息内容进行“循环冗余检测”得出的。CRC域附加在消息的最后,添加时先是低字节然后是高字节,故CRC的高位字节是发送消息的最后一个宁节。错误校验采用CRC-16校验方法。

3 软件编程

下面是采用C5l编写的软件,主要包括CRC校验和终端接收及波特率设置等。由于篇幅有限,其他程序略。

 

 

 

 

 

 

4 总 结

由于Modhus协议具有开放性和透明性等特点,而51系列单片机技术成熟、开发成本低,二者的结合将继续成为各类通信系统设计的首选。本设计方法已经应用于触摸屏与单片机通信设计,并取得了较好效果。这种方法对于编制类似的通信软件有一定的借鉴作用,部分程序可以直接移植。

关键字:触摸屏  单片机  方法 编辑:探路者 引用地址:Modbus协议下单片机与eView触摸屏的通信方法

上一篇:一种基于单片机控制的数字视频混合器
下一篇:基于STM32的带触摸屏的无线解说器

推荐阅读最新更新时间:2023-10-12 22:52

基于MSP430的无线传感器网络设计
引言   传感测试技术正朝着多功能化、微型化、智能化、网络化、无线化的方向发展。自组织无线传感器网络(Self Organizing Wireless Sensor Networks)作为新兴技术,是目前国外研究的热点,其在军事、环境、健康、家庭、商业、空间探索和灾难拯救等领域展现出广阔的应用前景。早在2003年美国自然科学基金委员会已经斥巨资来支持这方面的研究,并且出现了一些致力于无线传感器网络的公司,其中Crossbow公司已推出了Mica系列传感器网络产品。国内很多大学现已经开展相关领域的研究,但大部分工作仍处在自组织无线网络协议性能仿真和硬件节点小规模实验设计阶段。本文就国防科技大学传感器教研室开展可应用于环境监测方
[网络通信]
三星获意法16nm MCU外包订单 用于下一代iPhone
半导体业内消息称,三星电子已获得意法半导体代工订单,为苹果公司的下一代iPhone生产MCU,采用16nm制程。这是意法半导体首次将苹果等主要客户的MCU生产外包。 据《韩国经济日报》报道,在全球供应短缺的情况下,MCU采用16nm制造工艺制造,意味着其规格将比传统MCU更小,功率密度更高。三星拒绝确认是否收到订单,订单价值等细节目前尚不清楚。 报道指出,这一代工订单引发了外界的预期,即三星正在台积电主导的代工市场扩大其影响力,后者控制着70%的MCU外包生产。这两家公司都是世界上最大的两家代工厂。 上月末,三星正式宣布计划在德克萨斯州泰勒市建造一座170亿美元的芯片制造厂,作为超越台积电计划的一部分。
[手机便携]
利用e2v的新型Qorivva 微控制器改进处理性能和存储器容量
在与 Freescale的密切合作下,领先的高可靠性半导体供应商e2v日前宣布发布PC5566,该产品是一种新型高可靠性Qorivva微控制器,适用于在恶劣环境下工作的嵌入式系统。 Qorivva 系列微控制器广泛应用于商业航空电子和国防电子系统,这些系统需要低功耗的嵌入式计算能力。通过发布 PC5566,e2v 为在航空电子和国防应用中使用旧式 MPC555 和 MPC5554 微控制器的客户提供了理想的升级路径。 PC5566 基于 Power Architecture e200z6 内核,工作频率最高达到 144MHz,并且与 MPC5554 的引脚对引脚和软件兼容,能够提供经过改进的处理性能和更高的
[单片机]
提高超声成像图案解析度50倍的新方法
  在日前的《自然·物理学》杂志网络版上,美国加州大学伯克利分校和西班牙马德里自治大学的科学家声称,他们已找到了一种新方法,能够克服超声成像图案解析度不高的局限,将超声成像的解析度提高50倍。   研究人员在论文中描述了如何捕获从一个目标反射回的倏逝波,并重建出仅为声波波长1/50的微小细节。与能传输很长距离的传播波相比,倏逝波是一种在物体附近很短距离内渐次减弱的振动。   论文第一作者、加州大学伯克利分校大规模集成纳米制造中心的博士后研究员朱捷(音译)表示,利用他们的设备,他们检获并传输了倏逝波,该波中包含有来自目标的超亚波长信息的重要部分,从而使他们得以实现超清晰的声学成像。   研究人员指出,可捕捉倏逝波的
[医疗电子]
51单片机系列知识5--并口(2)
2、P1口 P1口对应的专用寄存器的助记符是P1,它是一个8位的专用寄存器,字节地址是90H,它的每一位都有位地址,可以对位进行直接访问。 PI口的位结构如图2-20所示。P1口也是准双向口,它的用途如图2-21所示。 3、P2口 P2口对应的专用寄存器的助记符是P2,它是一个专用寄存器,字节地址是0A0H.。它的每一位都有位地址,可以对位进行直接访问。 P2口的位结构如图2-22所示,P2口的使用方法如表2-11所示。 4、P3口 P3口对应的专用寄存器的助记符是P3,它是一个8位的专用寄存器,字节地址是0B0H。它的每一位都有位地址,可以对位进行直接的访问。 P3口的位结构如图2-23所示。
[单片机]
51单片机心形灯实现从中间向两端流水编程
心形灯原理图 编译软件:Keil uVision5 (如有需要可点此链接下载:https://download.csdn.net/download/qq_36931762/11343174) 单片机程序下载软件:STC-ISP (如有需要可点此链接下载:https://download.csdn.net/download/qq_36931762/11343157) 程序代码: #include reg51.h #include intrins.h unsigned char code table ={0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7f}; void De
[单片机]
51<font color='red'>单片机</font>心形灯实现从中间向两端流水编程
LED显示屏常见的故障及其排除方法
整屏不亮(黑屏) 1、检测电源是否通电。 2、检测通讯线是否接通,有无接错。(同步屏) 3、同步屏检测发送卡和接收卡通讯绿灯有无闪烁。 4、电脑显示器是否保护,或者显示屏显示领域是黑色或纯蓝。(同步屏) 整块单元板不亮(黑屏) 1、连续几块板横方向不亮,检查正常单元板与异常单元板之间的排线连接是否接通;或者芯片245是否正常。 2、连续几块板纵方向不亮,检查此列电源供电是否正常。 单元板上行不亮 1、查行脚与4953输出脚是否有通。 2、查138是否正常。 3、查4953是否发烫或者烧毁。 4、查4953是否有高电平。
[电源管理]
MCS-51单片机并行P2口的功能及使用方法
MCS-51系列单片机并行P2口也有两种功能,对于内部有程序存贮器的单片机(如定制的8051),P2口可以作为输入口或输出口使用,直接连接输入/输出设备;也可以作为系统扩展的地址总线口,输出高8位地址A8~A15。对于内部没有程序存贮器的单片机,必须外接程序存贮器,一般情况下P2口只能作为系统扩展的高8位地址总线口,而不能作为外部设备的输入/输出口。 1、P2口的输出驱动器上有一个多路电子开关(见图5-1(c)),当输出驱动器转接至P2口锁存器的Q端时,P2口作为第一功能输入 /输出线,这时P2口的结构和P1口相似,其功能和使用方法也和P1口相同。 2、当输出驱动器转接至地址时,P2口作为地址总线口,引脚状态由所输出的地址确定
[单片机]
小广播
最新电源管理文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved