关于DB112查找程序实例分析

描述

制作一个功能块,可以在DB112的数据块里找到输入接口CODE给的一组数。

将搜索到DB112里的内容传到DB115里:

Codec

DB112:

Codec

AUF   DI   112                                打开DB112功能块

L     P#0.0                                张载地址指针0.0

T     #Code_Pionter

L     10

next: T     #Index_C                     使用LOOP指令循环10次

L     DID [#Code_Pionter]      提取 DB112中的0.0开始对比

L     #code                              输入变量的给入参数16#4444

==D                                        比较数是否相同

S     #OK                                相同就置位OK提示找到了并跳到END位置

SPB   end

L     P#18.0                       从0.0开始找如果没有找到,就向下找相隔18.0

L     #Code_Pionter

+D    

T     #Code_Pionter 

L     #Index_C

LOOP  next                   循环10次

SPA   ext1         循环结束后直接跳出块

end:  L     DID [#Code_Pionter]     如果找到了相同的内容传到DB115

T     #Parts_date.code   

L     P#4.0             -寻找UDT中的sequence

L     #Code_Pionter  

+D    

T     #Code_Pionter  再次将 下移的4.0位保存

L     DIW [#Code_Pionter]     

T     #Parts_date.sequence     将DB112的equence存到DB115里

L     P#2.0                          -寻找UDT中的sta_1_time

L     #Code_Pionter

+D    

T     #Code_Pionter

L     DID [#Code_Pionter]

T     #Parts_date.sta_1_time  将DB112的sta_1_time存到DB115里

L     P#4.0                -寻找UDT中的sta_2_time

L     #Code_Pionter

+D    

T     #Code_Pionter

L     DID [#Code_Pionter]        

T     #Parts_date.sta_2_time  将DB112的sta_2_time存到DB115里

L     P#4.0                   -寻找UDT中的sta_3_time

L     #Code_Pionter

+D    

T     #Code_Pionter

L     DID [#Code_Pionter]      

T     #Parts_date.sta_3_time    将DB112的sta_3_time存到DB115里

ext1: U     #rest             

R     #OK      复位OK

BE             结束块

Codec

 

编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分