• 单片机触摸屏485 > 触摸屏与单片机的通讯
  • 触摸屏与单片机的通讯

    免费下载 下载该文档 文档格式:DOC   更新时间:2007-04-02   下载次数:0   点击次数:1
    文档基本属性
    文档语言:Simplified Chinese
    文档格式:doc
    文档作者:番茄花园
    关键词:
    主题:
    备注:
    点击这里显示更多文档属性
    触摸屏与单片机的通讯
    工控中经常需要观察系统的运行状态或者修改运行参数.触摸屏能够直观,生动地显示运行参数和运行状态,而且通过触摸屏画面可以直接修改系统运行参数,人机交互性好.单片机广泛应用于工控领域中,与触摸屏配合,可组成良好的人机交互环境.触摸屏和单片机通,需要根据触摸屏采用的通信协议为单片机编写相应的通信程序.Modbus协议是美国Modicon公司推出的一种有效支持控制器之间以及控制器经由网络(例如以太网)和其它设备之间进行通信的协议.本文以PIC16F877单片机和人机电子有限公司的eView MT510T型触摸屏为例,介绍其通信程序的开发过程.
    1 系统结构
    实现触摸屏与单片机的通讯,主要是解决通讯协议的问题.本文使用开放的Modbus通讯协议,以触摸屏作主站,单片机作从站.eView触摸屏本身支持Modbus通讯协议,如果单片机也支持Modbus协议,就可以进行通信了.触摸屏与单片机之间采用的RS-232C兼容接口直接连接,传输速率设置为9600kb/s.图1为该系统的电路图.
    将PIC16F877单片机RC6,RC7口设置为异步串行通信模式,经过MAX232芯片将TTL电平转换为RS232电平,再与eView触摸屏PLC[RS-232]接口相连,即完成了硬件连接.eView触摸屏PLC[RS-232]接口的管脚2为TXD,管脚3为RXD.
    2 Modbus通信协议介绍
    Modbus通信协议是一种串行的主从通信协议,网络里仅有一台设置可作为主机(称Master),其它设备作为从机(称Slaver),主机不需编号,从机必须编号.协议定义了主机查询及从机应答的信息帧格式.通信时,主机首先向从机发出请求信息,符合相应地址码的从机接收通讯命令,并除去地址码,读取信息,如果没有出错,则执行相应的任务,然后把执行结果返给主机.若从机接收到的校验码与本机计算的不同,则说明数据在通信过程中出现错误,从机把这次请求视为无效,功能代码将被修改以用于指出回应消息是错误的,同时数据段包含了描述此错误信息的代码.当主机收到这一信息时,会重新发送请求信息.校验方式分为LCR(传送数据为ACSII时)校验或CRC(传送数据为二进制时)校验,这里采用CRC校验方式.
    信息传输为异步方式,并以字节为单位.主从站之间通讯的字格式如表1所示.
    Modbus协议可支持ASCII码或二进制格式的数据传输.ACSII码方式下每一个字节数据分两个字节传送,二进制方式下用一个字节传送,为了减少数据传输量,一般选二进制数据方式.各个区允许发送的字节均为16进制的0~9,A~F.二进制信息帧标准结构为:
    初始结构 ≥4字节的时间
    地址码 1字节
    功能码 1字节
    数据区 N字节
    错误校验 16位CRC码
    结束结构 ≥4字节的时间
    二进制模式中,信息开始至少需要3.5个字符的静止时间,依据使用的波特率,很容易计算这个静止时间.发送完最后一个字符后,也有一个至少3.5个字符的静止时间,然后才能发送一个新的信息.网络上的设备连续监测网络上的信息,包括静止时间.
    3 单片机与触摸屏地址的对应关系
    eView触摸屏只支持Bit和Word地址类型,而实际的单片机或其它控制器还有Byte,Double Word等表示方法,因此在进行通信时,需要把单片机和触摸屏的数据进行变换.触摸屏画面元件读取地址的设备类型有LW,0x,1x,3x,4x,RWI,RW等选项.其中,LW表示该元件读取的是触摸屏内部的地址,如其它元件的地址;0x表示读取的是控制器的输出信号;1x表示读取的控制器的输入信号;3x和4x指控制器的寄存器地址类型,其中4x是可读可写的,3x是只读的;RWI,RW都是触摸屏的内部地址,起辅助作用.使用这些读取地址的设备类型,触摸屏即可显示或设定控制器寄存器或I/O口的数值.以"数值输入"元件为例,通过"小键盘"输入数据即可设置单片机寄存器或I/O口的数值.如果启动了"触发地址",那么当被触控时,输入的数据就被存放到了指定的单片机地址中.
    4 通信程序的开发
    触摸屏与单片机的通信程序采用PIC单片机C语言编写.编译工具选择Hitech公司的PICC编译器.程序共分三大模块,即初始化模块,数据接收模块以及数据处理及发送模块.主程序流程图如图2所示.
    PIC16F877单片机USART功能模块带有一个八位的波特率发生器BRG,BRG支持USART的同步和异步工作方式.用SPBRG寄存器控制一个独立的八位定时器的周期.在异步方式下,发送状态/控制寄存器TXSTA的BRGH位(即D2)被用来控制波特率.对串行口进行的初始化如下:

    下一页

  • 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
  • 免费下载 DOC格式下载
  • 您可能感兴趣的
  • 触摸屏与单片机通讯  单片机与触摸屏的通信  单片机如何控制触摸屏  单片机控制触摸屏  单片机485多机通讯  单片机485  单片机485编程  485接单片机  485能接单片机吗