多个位合成一个BYTE AT指令的使用

已锁定

柳叶飘飘

  • 帖子

    95
  • 精华

    7
  • 被关注

    180

论坛等级:侠圣

注册时间:2016-12-08

钻石 钻石 如何晋级?

多个位合成一个BYTE AT指令的使用

1681

4

2017-01-06 22:01:21

多个位合成一个BYTE实际有现成的块,这里主要还是介绍哈AT指令的使用 下面的每个位没有使用FOR循环赋值方式方便入门的同学理解。


该程序在PCS7下使用


 //**************************************************************************************

// 将多个位组合成一个BYTE 介绍AT指令的使用 


//**************************************************************************************

FUNCTION FC61: VOID

TITLE =   'DI_TO_BYTE'


AUTHOR:   EBC_LW

NAME:     DITOBYTE

VERSION:      '0.01'

FAMILY:   EBC

KNOW_HOW_PROTECT



VAR_INPUT

    

IN1

 

  : STRUCT

      VALUE : BOOL;

      ST : BYTE;

  END_STRUCT;//输入值1

IN2

  : STRUCT

       VALUE : BOOL;

      ST : BYTE;

  END_STRUCT;//输入值2

  

IN3

  : STRUCT

       VALUE : BOOL;

      ST : BYTE;

  END_STRUCT;//输入值3

IN4

  : STRUCT

       VALUE : BOOL;

      ST : BYTE;

  END_STRUCT;//输入值4

IN5

  : STRUCT

       VALUE : BOOL;

      ST : BYTE;

  END_STRUCT;//输入值5

IN6

  : STRUCT

       VALUE : BOOL;

      ST : BYTE;

  END_STRUCT;//输入值6

IN7

  : STRUCT

       VALUE : BOOL;

      ST : BYTE;

  END_STRUCT;//输入值7

IN8

  : STRUCT

       VALUE : BOOL;

      ST : BYTE;

  END_STRUCT;//输入值8 

  

  

END_VAR


VAR_OUTPUT

    

OUT: BYTE;


END_VAR





VAR

 DATA:BYTE;                 

DATA_BOOL AT DATA:ARRAY[0..7] OF BOOL;

END_VAR

DATA_BOOL[0]:=IN1.VALUE;            

DATA_BOOL[1]:=IN2.VALUE;     

DATA_BOOL[2]:=IN3.VALUE;     

DATA_BOOL[3]:=IN4.VALUE;     

DATA_BOOL[4]:=IN5.VALUE;     

DATA_BOOL[5]:=IN6.VALUE;     

DATA_BOOL[6]:=IN7.VALUE;     

DATA_BOOL[7]:=IN8.VALUE;     

OUT:=DATA;


 END_FUNCTION



原创程序 请多交流 QQ 275578306


多个位合成一个BYTE AT指令的使用 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

DCS/SIMATIC PCS7

共有4126条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。