组态王和stm32之间通信笔录
来源:互联网 发布:关于孙悟空的网络歌曲 编辑:程序博客网 时间:2024/05/17 12:52
组态王是亚控科技开发的一款上位机软件,上位机是一种软件只能在电脑上运行,对控制的设备而言没有任何意义,和MCU通讯进行数据交换,最终还是由MCU控制设备运行
上位机主要是现实作用,之所以能控制MCU是某个按钮或数据经过通讯链接到MCU的相应地址从而改变MCU程序数据状态控制设备,上位机可以更直观的控制设备,可以代替按钮和仪表显示。如果设备离开上位机照样可以运行,如果离开MCU设备就运行不了了。
建立新组态王工程的一般过程是:
1.设计图形界面(定义画面)2.定义设备
3.构造数据库(定义变量)
4.建立动画连接
5.运行和调试
通信方式:串行口和上位机交换数据
传输协议:ASCLL通信协议,内容简单,但由于其传输数据类型的局限性大,可用于传输数据的寄存器较少,并且要需要经过复杂的数据类型转换,。
,ModbusRTU协议---基于消息队列的协议,协议通过监测相应的消息来完成对应功能。
初步设想,在下位机程序初始化时配置好设备地址、波特率以及校验方式,同时在组态王上建立设备时选择PLC/莫迪康/ModbusRTC/com,参数的配置要与下位机的保持一致。
更新中。。
今天组态王和stm32单片机终于成功了。
首先组态王方面
第一步、建立工程
第二步、新建I/0口设备,并配置其波特率,校验位,数据位,停止位,波特率和单片机相同。选择莫迪康- modbusRTU
第三步、定义变量
打开数据字典,双击新建按钮。
连接设备选择刚刚新建的设备,寄存器选择40001,(可以参考帮助文档)确定按钮,搞定。
第四步、新建画面,创建文本。
第五步、运行系统,画面切换view模式。成功。
小结:在此过程中,我遇到很多麻烦。我首先测试了,组态王和串口助手的通信,串口发送modbus协议格式报文,当串口收到组态王发过来的数据然后发送报文,组态王可以收到串口助手数据。(这需要仔细研究协议格式,crc校验需要正确,波特率校验位也要一致)。此过程中用到虚拟串口软件vspd,及crc校验生成器。如果组态王和串口助手未能成功还可以进行在组态王测试I/o口设备
2、以上成功后,可以按照modbus协议调试单片机代码,单片机和串口助手实现报文格式通信,最后将虚拟串口删掉,连接组态王串口,最后终于成功了。
3、另外次过程中还有其他收获,例如modscan32MODBUS测试的使用。在这就不列举了。
自我认知:革命尚未成功,同志仍需努力。希望高手指出不足。也希望和朋友继续学习继续探讨解决问题。附上我的企鹅号:2013462220
- 组态王和stm32之间通信笔录
- 组态王与stm32通讯笔录-组态王报文分析
- STM32之间SPI通信
- 组态王和modbus协议
- 组态王与单片机通信源码 组态王6.55破解版 大量工程案例
- 两个STM32之间进行SPI通信
- 两片STM32之间I2C通信
- 两块STM32之间的SPI通信
- 【随心笔录】Service和Activity通信,bindService启动服务
- 组态王
- matlab与stm32之间利用串口通信记录
- STM32 DMA和内存之间的关系
- raspberry3b和stm32通信(usb,gpio)
- 进程之间通信和线程间通信
- 驱动程序和应用程序之间通信
- 应用程序和autocad之间通信
- Flex和JavaScript之间通信
- 虚拟机和电脑之间通信
- Django1.10中没有了patterns以后
- gitbook 编译书籍源码 为PDF
- PAT 1109
- 初识elixir
- Android 自定义ViewGroup中onDraw方法不执行的解决方法
- 组态王和stm32之间通信笔录
- java之NIO select基本设计思路梳理
- [leetcode]341. Flatten Nested List Iterator
- 线程间通信
- Android常见问题汇总
- mysql之联表查询回顾
- Lucene基础
- 荷马史诗(NOI2015)提高组
- android代码获取layout和设置margin