数组调序问题

请问一下,PLC的通信端口接收到一串28个字节的数据,我需要其中7个字节的数据(以FF 05为开头标志,后面是5个字节的数据,比如“FF 05 19 02 39 EB 12”,其余的数据基本上都是00),但这串7字节的数组在总的数组里游走不定,极端情况是一部分在末尾一部分在开头。现在的思路是利用指针进行排序,将需要的7字节数组拍到开头,然后取出来。也大概了解冒泡法排序,但不知道如何去找准“FF 05”这个标志。对实现这个功能的程序不知道怎么写,希望得到各位的指点,谢谢!

问题补充:
“FF 05 XX XX XX XX XX”这串数组总是整体的移动,其中5个字节的数XX会变化。其余的数据基本都是00,但有时会出现一个随机数,不会再次出现“FF 05”的情况(FF 05标志是唯一的)。极端情况下会出现类似“XX XX XX 00 00 00 ..... 00 00 FF 05 XX XX”的情况。

最佳答案

没有人会设计一个这样的通讯协议的,希望你读通协议,不要把好像正确的结果误会成正确的结果。白操心。
自由口通讯接收程序有多种多样的接收方式。请选择最正确的一种。
你可以用循环的方式把整段字符向前或者向后循环移位,直到排头的两个字节等于你期望的字符,然后开始读取后面的5个字节。

提问者对于答案的评价:
谢谢!用for循环语句配合成块字节移动指令做出来了,也多谢大家的指点

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc370608.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午4:19
下一篇 2021年7月5日 下午4:19

相关推荐

  • S7-200编程软件和编程电缆

    各位好:请问一下关于S7-200 PLC,使用什么软件编程,软件是否可以免费下载?编程电缆是什么型号?另外,编程电缆是否可以用于S7-300 PLC和S7-40…

    SIMATIC S7-200 2020年10月31日
  • CP243-1和ST30通讯

    CP243-1和ST30之间能不能用以太网通讯? 最佳答案 可以。以下是测试通过的软硬件测试环境:     S7-200:西门子&…

    2021年7月5日
  • win10系统可以装s7-200么

    win10的系统可以装S7-200的编程软件么,求个连接 钻石用户推荐最佳答案 官方说200软件支持win7 32(64)位系统,但是有好多在win10安装后运行正常的,…

    SIMATIC S7-200 2021年7月5日
  • 超级终端如何用来发送数据

    用224xp plc按书上例子写了程序,是接收串口的数据。请问用超级终端如何来发送数据,然后在plc中看到这个发送的数据呢? 问题补充:16进制的0A为何在超级终端里为回…

    SIMATIC S7-200 2021年7月5日
  • 请教一下最优的算法

    前段时间做了一个红外测温的小程序,是测炙热的钢板温度。我的实现方法是读过数据来之后进行排序,用循环指令,来比较各个温度值,只保留50个最高温度的数值,然后对这50个值求平均。可发现…

    SIMATIC S7-200 2021年7月5日
  • S7-200 重新下载数据块后,数据不丢失?

    S7-200 重新下载数据块后,数据不丢失? 最佳答案 下载数据块时:M区,数据不丢失,不用做额外处理。V区,可以通过从CPU上传数据块功能将V区数据存储在数据块中,下载…

    SIMATIC S7-200 2021年7月5日
  • MODBUS占用PROT 0口,占用后还能找到~

    现场是这样一个情况,程序是从PLC上载的,上载后无库存储区。没有库存储区时,下载程序。口不会被modbus占用,通讯不上。  重新下载有库存区的程序,结果从站掉…

    SIMATIC S7-200 2017年12月8日
  • PC Access出错:An unexpected error has occurred!

    1、我编好了PLC程序,并从软件的符号表里面定义了变量,灌进PLC里了,用PC Access监控能正常连通,质量GOOD,可是我保存的时候,它却提示:An un…

    SIMATIC S7-200 2021年7月5日
  • s7-200编码器求速度

    大佬们这个是我做的编码器求速度用了个定时器自复位  ,然后子程序里不显示圈数为啥额都不到,然后计数器改变方向中断里写了个这程序,希望正传亮灯或者反转亮灯,实验结…

    2021年7月5日
  • 高速计数器具体项目实例

    高速计数器在手册上看了几遍,但是还是理解不太透彻,最好有个项目来看下,最好能有外围硬件清单,程序,先谢谢了  最佳答案 给你发份"一个用到高速计数器的s7200…

    SIMATIC S7-200 2021年7月5日

发表回复

登录后才能评论