触摸屏与单片机串口通信测试
工业现场在使用触摸屏的时候,与第三方控制器进行通信连接的时候,一般都是使用成熟的通信协议进行通信连接。而这些协议的实现过程,触摸屏厂商也已经在编程环境中进行了封装集成,对于使用的工程师来说,通信的数据交换过程我们无需要关心。仅需要设置配置好控制器(PLC)的品牌,型号系列及基本的通信通道就可以了。当然,这是触摸屏通信的常规使用方法,这里就使用自定义协议如何实现触摸屏与控制器(如,单片机)的通信方法,分享给大家。以下通信测试方法除电脑外无需任何硬件,感兴趣的话可以依照以下步骤还原测试过程。
工具及环境准备
在开始测试前,我们需要准备以下工具及软件。
触摸屏编程软件:台达DOPSoft 2.00.07虚拟串口:Virtual Serial Port Driver串口助手调试工具:stc-isp-15xx-v6.86vDOPSoft 2.00.07
Virtual Serial Port Driver
stc-isp-15xx-v6.86v
虚拟串口
打开“Virtual Serial Port Driver”软件,添加COM1、COM2两个串口。添加完成后,如下所示;
串口助手设置
打开串口助手软件(stc-isp-15xx-v6.86v)。在串口助手的串口号中设置为COM1,9600,8,n,1。此处设置为COM1后,触摸屏中就只能配置为COM2。其必须与虚拟串口设置的串口号对应。
到此,就完成了测试环境的搭建。以下开始触摸屏部分的配置。
触摸屏设置
触摸屏设置为本次测试的核心。
STEP1
打开“DOPSoft 2.00.07”软件,并新建工程。
STEP2
在通信端口配置页面,按照如下配置通信端口。这里以触摸屏的COM2作为此处测试的连接端口,故需要将触摸屏的COM2的“连接“复选框取消选中。这样才可以将其用作自定义通信方式使用。
SETP3
在画面编辑页面,按照下图所示,设置10个数值输入框。并将其地址设置为触摸屏内部存储区域的$0-$10。
双击数值输入框,弹出数值输入框的配置对话框,如下所示。
在写入地址对话框的后侧,点击“…”,弹出输入对话框。将连线名称设置为内部存储区域(Internal Memory)。再将原件地址设置为“0”。
依照以上方法,将其他数值输入框设置到地址1-10.
STEP4
设置画面运行过程中的脚本程序。
选中画面,在右侧的属性栏,选择“画面Cycle宏”。
弹出触摸屏脚本编辑对话框,点击下图所示按钮,打开脚本程序代码编写向导对话框。
在脚本程序代码编写向导对话框中,选择“命令”-“通信”-选择命令。配置完成代码参数后,选择“更新宏”,完成代码的添加。
代码添加完成后,如下图所示。
$M0 = INITCOM(1, 0, 1, 0, 0, 6, 0)//初始化端口
SELECTCOM(1)//设置触摸屏通信端口为2号端口
$M1 = PUTCHARS($0, 20, 3000)//发送触摸屏内部$0开始的20个连续地址数据
Delay(300)//延时
$M0 = 0//清除端口初始化标志
$M1 = 0//清除数据发送完成标志
CLEARCOMBUFFER(1, 1)//清除串口缓存
STEP5
启动触摸屏在线仿真。弹出如下所示的对话框,按照如图所示的方式配置。
STEP6
按照地址,从上到下设置为1到10.
STEP7
打开串口助手,可以看到在串口助手的接收区域,已经接收到触摸屏在线仿真发送出来的数据,且数据中可以看到有1到10(串口助手配置为16进制显示模式,其中16进制的A即为十进制的10)。
STEP8
在触摸屏在线仿真页面,将第一个数据改为9999。
再次查看串口助手中接收到的数据,其中第一个数据已经变为0F 27.
为了验证数据的正确性,打开电脑的计算器工具,将其设置为程序员模式。选择16进制输入模式。输入0F27,可以看到转换为十进制后数据为3879,这与触摸屏输入的数据9999无法对应。这是什么地方错了吗?其实不是。这只是数据的高低字节交换了,这在通信数据传输处理的时候需要特别注意。初次进行串口通信调试,很多都被这个给折腾过。
在计数器模式下,输入270F。可以看到其转换后的十进制数据为9999.与设置的输入数据一致。
自此,使用触摸屏进行串口自定义协议通信的测试就已经完成。
(转载请注明来源函控自动化工程师头条号)
触摸屏自定义协议通信
工业现场在使用触摸屏的时候,与第三方控制器进行通信连接的时候,一般都是使用成熟的通信协议进行通信连接。而这些协议的实现过程,触摸屏厂商也已经在编程环境中进行了封装集成,对于使用的工程师来说,通信的数据交换过程我们无需要关心。仅需要设置配置好控制器(PLC)的品牌,型号系列及基本的通信通道就可以了。当然,这是触摸屏通信的常规使用方法,这里就使用自定义协议如何实现触摸屏与控制器(如,单片机)的通信方法,分享给大家。以下通信测试方法除电脑外无需任何硬件,感兴趣的话可以依照以下步骤还原测试过程。
工具及环境准备
在开始测试前,我们需要准备以下工具及软件。
触摸屏编程软件:台达DOPSoft 2.00.07虚拟串口:Virtual Serial Port Driver串口助手调试工具:stc-isp-15xx-v6.86vDOPSoft 2.00.07
Virtual Serial Port Driver
stc-isp-15xx-v6.86v
虚拟串口
打开“Virtual Serial Port Driver”软件,添加COM1、COM2两个串口。添加完成后,如下所示;
串口助手设置
打开串口助手软件(stc-isp-15xx-v6.86v)。在串口助手的串口号中设置为COM1,9600,8,n,1。此处设置为COM1后,触摸屏中就只能配置为COM2。其必须与虚拟串口设置的串口号对应。
到此,就完成了测试环境的搭建。以下开始触摸屏部分的配置。
触摸屏设置
触摸屏设置为本次测试的核心。
STEP1
打开“DOPSoft 2.00.07”软件,并新建工程。
STEP2
在通信端口配置页面,按照如下配置通信端口。这里以触摸屏的COM2作为此处测试的连接端口,故需要将触摸屏的COM2的“连接“复选框取消选中。这样才可以将其用作自定义通信方式使用。
SETP3
在画面编辑页面,按照下图所示,设置10个数值输入框。并将其地址设置为触摸屏内部存储区域的$0-$10。
双击数值输入框,弹出数值输入框的配置对话框,如下所示。
在写入地址对话框的后侧,点击“…”,弹出输入对话框。将连线名称设置为内部存储区域(Internal Memory)。再将原件地址设置为“0”。
依照以上方法,将其他数值输入框设置到地址1-10.
STEP4
设置画面运行过程中的脚本程序。
选中画面,在右侧的属性栏,选择“画面Cycle宏”。
弹出触摸屏脚本编辑对话框,点击下图所示按钮,打开脚本程序代码编写向导对话框。
在脚本程序代码编写向导对话框中,选择“命令”-“通信”-选择命令。配置完成代码参数后,选择“更新宏”,完成代码的添加。
代码添加完成后,如下图所示。
$M0 = INITCOM(1, 0, 1, 0, 0, 6, 0)//初始化端口
SELECTCOM(1)//设置触摸屏通信端口为2号端口
$M1 = PUTCHARS($0, 20, 3000)//发送触摸屏内部$0开始的20个连续地址数据
Delay(300)//延时
$M0 = 0//清除端口初始化标志
$M1 = 0//清除数据发送完成标志
CLEARCOMBUFFER(1, 1)//清除串口缓存
STEP5
启动触摸屏在线仿真。弹出如下所示的对话框,按照如图所示的方式配置。
STEP6
按照地址,从上到下设置为1到10.
STEP7
打开串口助手,可以看到在串口助手的接收区域,已经接收到触摸屏在线仿真发送出来的数据,且数据中可以看到有1到10(串口助手配置为16进制显示模式,其中16进制的A即为十进制的10)。
STEP8
在触摸屏在线仿真页面,将第一个数据改为9999。
再次查看串口助手中接收到的数据,其中第一个数据已经变为0F 27.
为了验证数据的正确性,打开电脑的计算器工具,将其设置为程序员模式。选择16进制输入模式。输入0F27,可以看到转换为十进制后数据为3879,这与触摸屏输入的数据9999无法对应。这是什么地方错了吗?其实不是。这只是数据的高低字节交换了,这在通信数据传输处理的时候需要特别注意。初次进行串口通信调试,很多都被这个给折腾过。
在计数器模式下,输入270F。可以看到其转换后的十进制数据为9999.与设置的输入数据一致。
自此,使用触摸屏进行串口自定义协议通信的测试就已经完成。
(转载请注明来源函控自动化工程师头条号)
相关问答
威纶通 触摸屏 和 单片机通信 ,走modbus协议,比如我按下按键8请问 触摸屏 发什么代码给单片机?不发代码的,modbus是协议按寄存器来的0x_,1x_,4x_等,通讯双方通过修改寄存器来通讯。不发代码的,modbus是协议按寄存器来的0x_,1x_,4x_等,通讯双方通过修改寄...
信捷OP320-A文本显示器( 触摸屏 )与51 单片机 通讯电缆接法問題...触摸屏端4和5不要短接,一般的接法是2-3、3-2、5-5,单片机的5要接地。触摸屏(touchscreen)又称为“触控屏”、“触控面板”,是一种可接收触头等输入讯号的感应...
STM32 单片机 如何和台达DOP 触摸屏 链接求详解?这个简单,首先买TTL转485的模块,用于单片机和触摸屏物理连接,然后看一下触摸屏与单片机链接COM口的通讯格式、速度什么的,然后在单片机上写通信驱动。台达触...
触摸屏 控制 单片机 时的地址怎么确定?触摸屏控制单片机时,需要确定相应的通信协议和地址。一般而言,触摸屏与单片机的通信地址由协议决定。比如,利用Modbus通信协议进行通信时,触摸屏与单片机的地...
51 单片机 如何与 触摸屏 连接?1、实现触摸屏与单片机的通信,主要是解决通信协议的问题。2、使用开放的Modbus通信协议,以触摸屏作主站,单片机作从站。3、eView触摸屏本身支持Modbus通信协...
你好,请问怎么实现使用 触摸屏 通过现场总线控制两台PLC实现对...但是你的触摸屏好像接口是usb,这样你用个usb转can的设备就可以连接到总线了。...硬件只需确认你的单片机支持不支持485或者232通信口。4、rs232和rs485的相关资...
mc3190如何换 触摸屏 ?Mc3190是一款单片机,若要更换触摸屏,需要先确定触摸屏是否支持MEMS技术。如果支持,则可以通过MEMS接口连接单片机,并通过编程实现触摸屏的控制。如果不...
文本显示器,人机界面和 触摸屏 的不同-ZOL问答文本显示器(TextDisplay)、操作面板(OperatorPanel)、触摸屏(TouchPanel)都属于人机界面(HMI)。文本显示器较为简单,价格低廉,一般只能显示几行文字等字符....
51 单片机 上可以移植编写的windows程序么? 单片机 上可以接触...另外,单片机可以做什么这个问题,你看看你生活中,除了电脑,其他的智能设备都是单片机系统,比如家里的全自动洗衣机,冰箱,汽车上的控制系统,安防监控,交通灯,智能...
智控,工控有升么区别?智能控制,是自动化领域比较高端学科。非常深奥,感觉智能控制与模式识别学科招考人数与就业率不及控制理论与控制工程,不及电力电子,不及自动检测技术,高端深...