单片机串口通信学号显示_触摸屏与单片机串口通信测试
工业现场在使用触摸屏的时候,与第三方控制器进行通信连接的时候,一般都是使用成熟的通信协议进行通信连接。而这些协议的实现过程,触摸屏厂商也已经在编程环境中进行了封装集成,对于使用的工程师来说,通信的数据交换过程我们无需要关心。仅需要设置配置好控制器(PLC)的品牌,型号系列及基本的通信通道就可以了。当然,这是触摸屏通信的常规使用方法,这里就使用自定义协议如何实现触摸屏与控制器(如,单片机)的通信方法,分享给大家。以下通信测试方法除电脑外无需任何硬件,感兴趣的话可以依照以下步骤还原测试过程。
工具及环境准备
在开始测试前,我们需要准备以下工具及软件。
- 触摸屏编程软件:台达DOPSoft 2.00.07
- 虚拟串口:Virtual Serial Port Driver
- 串口助手调试工具:stc-isp-15xx-v6.86v
DOPSoft 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.与设置的输入数据一致。
自此,使用触摸屏进行串口自定义协议通信的测试就已经完成。
(转载请注明来源函控自动化工程师头条号)
单片机串口通信学号显示_触摸屏与单片机串口通信测试相关推荐
- 89c52串口通信+LCD1602显示
接下来我们捡起来lcd1602的显示 与串口通信.实现的功能是通过上位机给单片机通过串口发送信息,然后将发送的信息在lcd1602上显示出来. (码字好累啊,这是第二遍码字了刚刚这篇博客都要写完了,要 ...
- 基于stm32的温湿度检测案例串口通信屏显示(二)
文章目录 前言 一.串口通信屏幕 二.DHT11测试效果与说明 三.读入数据 四.串口及中断配置 五.屏幕上显示数据 5.1.屏幕内嵌指令 5.2.静态数据 5.3.动态数据 六.效果 前言 因为st ...
- #串口通信超时处理_【学院推荐】划重点!LabVIEW中串口参数需注意的几点
串口可以说是我们最容易见到,也最容易接触到的一种总线,台式机上一般都有二个,而现在很多下位机.仪器等很多都还是使用串口通信的. 1,串口扩展的问题 先说一下串口的扩展问题,一般的台式机或工控机上都至少 ...
- 树莓派4bpython串口通信解读数据_树莓派基础实验36:通用串口通信实验
一.介绍 对于树莓派 3B+来说,他的UART功能有三种: 1.内部蓝牙使用: 2.控制终端使用: 3.与其他设备进行串口通信. 在树莓派基础实验35:USB TO TTL模块实验中学习了通过串口对树 ...
- 关于Proteus 8仿真STM32串口通信时显示数据错误或乱码问题解决!
本人用Proteus 8仿真STM32F401RBT6串口通信时一直不能正确收发数据,写到板子通信数据显示正常,也在csdn查了很多人的解决办法,但都没了正常解决,直到看到某大神说到串口参数,我试着改 ...
- 串口通信 校验码_一文读懂S7-200 SMART自由口通信!
学习S7-200 SMART时了解到,基于RS485接口可实现一下几种通信: 1)modbus RTU通信 2)PPI协议通信 3)USS协议通信 4)自由口通信 何为自由口通信呢? 前三种通信必须要 ...
- 利用c51进行数模转换并在液晶屏上显示_基于C51单片机的智能计算器、矩阵键盘、lcd1602...
目录 1绪论.............................................................................................. ...
- STM32串口通信代码、ASCII码、XU4串口通信,printf只会转换为无符号类型,linux下的串口通信程序
1.其里面的的通信协议是是自己定的,这里 是检测到数据的结尾是以0x0d.0x0a结尾,则表示接受的数据完成了,这个数据是我想要的,这样子就不会出现一些错乱的数据信息.其中的0x8000.0x4000 ...
- 串口输出5v电压_为什么RS485比串口速度快距离远?--谈单端信号与差分信号之差异...
嵌入式系统中,串口.RS485.CAN.网络和USB等都是非常常用的通信方式.但是串口通信速度慢,距离近,为什么转换成RS485后,通信距离和速度都大幅提高了呢?USB也是近距离,为什么速度可以这么快 ...
最新文章
- Spring(三)AOP面向切面编程
- Sql 某一字段统计
- KVM的客户机可以使用的存储
- [学习笔记]51单片机
- 初学者学MvcMovie遇到的问题解决办法
- easymodbus_easymodbus4j基于netty的modbus协议快速开发工具
- kafka 基础知识梳理-kafka是一种高吞吐量的分布式发布订阅消息系统
- SpringBoot源码篇:Spring5内置tomcat实现code-based的web.xml实现
- [RK3399][Android7.1] DRM中的Component System
- 2019搜狗测试开发第一题满分测试用例
- 怪物之心无法触发_《异度之刃2》稀有异刃力男怪物之心支线任务攻略
- python数据分析与可视化答案学堂云_智慧树知到_Python数据分析与数据可视化_最新答案...
- idea里面java文件只读,Java只读集合
- 老七苏-37:明日之星 苏-37是在苏-35的基础上改进而成的。
- 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛非官方题解
- oracle数据库latch,关于Oracle数据库latch: cache buffers chains等待事件
- 浮云E绘图SDK3.0,快速开发电路图、电子图纸、工业控制流程图、工艺流程图等绘图项目
- java三国英杰传_三国英杰传重点战役详细攻略(合集)
- 龙华区3·15消费知识在线通关
- BurnInTest
热门文章
- 微弱信号检测_机动车检测线常用传感器介绍
- python nonetype报错_python 查询数据库数据 NoneType报错
- linux ubuntu php,linux ubuntu安装php运行环境
- 8080:The Tomcat connector configured to listen on port 8080 failed to start 的解决办法
- 学java要算法吗_学习java不可不知的几种算法
- mysql慢查询日志分析工具比较_MySQL慢查询日志总结 日志分析工具mysqldumpslow
- java算法判断链表有没有闭环_前端算法系列之二:数据结构链表、双向链表、闭环链表、有序链表...
- Qt中全局变量的使用
- Qt在指定区域内拖动窗口
- Visual Studio 2013 / 2015 完全卸载 - C语言零基础入门教程