首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于DSP和触摸屏的串行通信系统研究

基于DSP和触摸屏的串行通信系统研究

关键字:DSP   触摸屏   SCI   RS485   串行通信  

2 基于MODBUS 协议的通信程序设计

2.1 MODBUS 协议的主从编程方法

触摸屏和DSP 按照MODBUS 协议通信,将触摸屏作为主站,DSP 作为从站,串口连接采用RS485。触摸屏和DSP 的通信是有触摸屏发起的,DSP 采用中断方式响应触摸屏发送来的数据,非通信情况下DSP 可以做其它更多的工作。当触摸屏有数据发送给DSP 时,触发DSP 接收中断,DSP 进入接收中断服务子程序,此时,触摸屏发送给DSP 的是一个完整的数据帧,至少包含8 个字节的数据长度, 在完整读取这组数据后,DSP 对其进行处理。首先进行从设备站号匹配(本文中DSP 站号设为07),如果匹配不成功则DSP 不响应触摸屏的查询,DSP 不回送任何信息;如果匹配成功则进行CRC 校验,若CRC 校验出错,则查询失败,不返回数据信息;若CRC 校验正确,则进行下一步的命令解析,并返回给触摸屏对应的数据信息。

下面简要介绍如何从DSP 中读取几个模拟量并显示在触摸屏上,读可读写模拟量寄存器的功能码是03。

触摸屏发送的命令为:[设备地址] [功能码03] [起始寄存器地址高8 位] [低8 位] [读取的寄存器数高8 位] [低8 位][CRC 校验的低8 位] [CRC 校验的高8 位] 。

例如:07 03 00 03 00 02 34 6D。此命令说明要从DSP的起始地址为00 03 的寄存器中读取两个模拟量。

此时,若设备地址匹配且CRC 校验正确,则DSP 会返回数据给触摸屏。

DSP 返回的数据为:[设备地址] [功能码03] [返回的字节个数][数据1][数据2]…[数据n][CRC 校验的低8 位] [CRC 校验的高8 位]。

例如响应上面的命令返回的数据为:07 03 04 00 10 0020 9C 2E。说明返回的模拟量为16 和32。

2.2 触摸屏介绍及组态画面的设计

触摸屏LEVI700L 是维控科技生产的7 英寸真彩TFT,主板规格:RISC CPU 400MHz,128M Flash,64DDRAM。拥有一个DB9 串口,支持RS232/RS485/RS422 通信,另外包括一个USB Host 和一个USB Slave。

触摸屏LEVI700L 配套的组态软件为LEVI Studio,用户界面友好,易于操作,支持离线和在线模拟。本文以触摸屏在大功率晶闸管整流控制器中的应用为例,说明触摸屏的画面设计。主要有主界面、实时曲线查看整定画面、参数调节画面、工作模式查询画面,图2 给出主界面和实时曲线查询画面。可通过通讯口配置设置触摸屏和DSP 以及其他控制器进行连接,同时可选择相应的通信协议,本设计中采用Modbus 协议,串口参数设置为波特率:38400Kbps,停止位:1 位,数据位:8 位,无校验。另外还需要配置各个部件的地址。如图2 中反馈电压和电流的查看是个数字输入/显示部件,根据MODBUS 协议要对其读取地址进行编辑,使用功能码3 对其读数据。从上节中触摸屏发送数据的命令格式可知,需要设置DSP 的站号和寄存器的类型以及起始地址。



图2 触摸屏画面设计

返回列表